Skip to content

GH-52: feat(pipeline): Add table information to pipeline serialization#66

Merged
Urfoex merged 1 commit intodevelopfrom
feature/GH-52-serialize-pipeline-tables
Sep 17, 2025
Merged

GH-52: feat(pipeline): Add table information to pipeline serialization#66
Urfoex merged 1 commit intodevelopfrom
feature/GH-52-serialize-pipeline-tables

Conversation

@Urfoex
Copy link
Collaborator

@Urfoex Urfoex commented Sep 2, 2025

Adds a new Table data model and integrates it into the PipelineInformation model. This includes:

  • A new serialization function serialize_tables to convert getML Tables objects.
  • Updates to the main serialize_pipeline function to include table data.
  • Corresponding additions to unit and integration tests to cover the new functionality.

@Urfoex Urfoex requested a review from Copilot September 2, 2025 17:30
@Urfoex Urfoex self-assigned this Sep 2, 2025
@Urfoex Urfoex added the enhancement New feature or request label Sep 2, 2025
@Urfoex
Copy link
Collaborator Author

Urfoex commented Sep 2, 2025

/gemini review

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds table information to pipeline serialization by introducing a new Table data model and integrating it into the pipeline serialization process. The implementation includes serialization functionality, type definitions, and comprehensive test coverage.

  • Adds a new Table model to represent table metadata with name, marker, target, and importance
  • Implements serialize_tables function to convert getML Tables objects to the new format
  • Updates the main pipeline serialization flow to include table data alongside existing metadata

Reviewed Changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/getml_io/getml/tables.py New data model defining the Table structure
src/getml_io/metadata/pipeline_information.py Updates PipelineInformation model to include tables field
src/getml_io/serialize/pipeline.py Implements serialize_tables function and integrates it into main pipeline serialization
tests/unit/types.py Adds type definitions for TableType and TablesType
tests/unit/conftest.py Adds fixtures for mock tables and updates pipeline information fixtures
tests/unit/serialize/test_pipeline.py Adds unit tests for the new serialize_tables function
tests/unit/serialize/test_pipeline_information.py Updates test expectations to include empty tables array
tests/unit/metadata/test_pipeline_information.py Updates test expectations with table data
tests/integration/data/*/expected.pipeline.json Updates integration test expectations with actual table data

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@Urfoex Urfoex linked an issue Sep 2, 2025 that may be closed by this pull request
Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces serialization for table information within a pipeline. It adds a new Table data model, a serialize_tables function, and integrates this into the PipelineInformation model. The changes are well-structured and include corresponding updates to unit and integration tests. My main feedback is to add a None check in the new serialize_tables function for robustness, consistent with other serialization functions in the same file.

@Urfoex Urfoex marked this pull request as ready for review September 2, 2025 18:17
@Urfoex Urfoex requested a review from srnnkls September 2, 2025 18:17
Copy link
Collaborator

@srnnkls srnnkls left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm.

Base automatically changed from feature/GH-51-serialize-pipeline-metadata to develop September 17, 2025 15:58
Adds a new `Table` data model and integrates it into the `PipelineInformation` model. This includes:
- A new serialization function `serialize_tables` to convert getML `Tables` objects.
- Updates to the main `serialize_pipeline` function to include table data.
- Corresponding additions to unit and integration tests to cover the new functionality.
@Urfoex Urfoex force-pushed the feature/GH-52-serialize-pipeline-tables branch from bf44654 to c3ce193 Compare September 17, 2025 15:59
@Urfoex Urfoex merged commit ce277a1 into develop Sep 17, 2025
3 checks passed
@Urfoex Urfoex deleted the feature/GH-52-serialize-pipeline-tables branch September 17, 2025 16:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement pipeline tables serializer

2 participants

Comments