Skip to content

GH-50: feat(pipeline): Add serialization for columns#64

Merged
Urfoex merged 1 commit intodevelopfrom
feature/GH-50-serialize-pipeline-columns
Sep 2, 2025
Merged

GH-50: feat(pipeline): Add serialization for columns#64
Urfoex merged 1 commit intodevelopfrom
feature/GH-50-serialize-pipeline-columns

Conversation

@Urfoex
Copy link
Collaborator

@Urfoex Urfoex commented Sep 1, 2025

Defines a pydantic model for a pipeline's column information and integrates it into the PipelineInformation structure, replacing a TODO.

Implements the serialize_columns function to convert from the getML library's Columns object to the new pydantic model.

Updates unit and integration tests to include the new 'columns' field, ensuring correctness and updating test fixtures.

Resolves: #50

@Urfoex Urfoex requested a review from Copilot September 1, 2025 20:13
@Urfoex Urfoex self-assigned this Sep 1, 2025
@Urfoex Urfoex added the enhancement New feature or request label Sep 1, 2025
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 implements serialization support for pipeline column information by defining a new pydantic Column model and integrating it into the existing pipeline serialization structure.

Key changes:

  • Adds a new Column pydantic model with index, name, marker, table, target, and importance fields
  • Implements serialize_columns function to convert from getML's Columns object to the pydantic model
  • Updates the PipelineInformation model to include a columns field, replacing a TODO placeholder

Reviewed Changes

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

File Description
src/getml_io/getml/columns.py Defines the new Column pydantic model
src/getml_io/metadata/pipeline_information.py Adds columns field to PipelineInformation model
src/getml_io/serialize/pipeline.py Implements serialize_columns function and integrates it into pipeline serialization
Test files Updates unit and integration tests to include the new columns field in expected outputs

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

@Urfoex
Copy link
Collaborator Author

Urfoex commented Sep 1, 2025

/gemini review

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 effectively adds serialization for pipeline column information. The new Column pydantic model is well-defined, and the integration into PipelineInformation is clean. The serialize_columns function correctly handles the conversion, and the tests have been updated accordingly. I've provided a couple of suggestions to improve robustness and test maintainability. Overall, great work!

Defines a pydantic model for a pipeline's column information and integrates it into the `PipelineInformation` structure, replacing a TODO.

Implements the `serialize_columns` function to convert from the getML library's `Columns` object to the new pydantic model.

Updates unit and integration tests to include the new 'columns' field, ensuring correctness and updating test fixtures.

Resolves: #50
@Urfoex Urfoex force-pushed the feature/GH-50-serialize-pipeline-columns branch from 3c39b67 to 2cef32e Compare September 1, 2025 20:19
@Urfoex Urfoex marked this pull request as ready for review September 1, 2025 20:19
@Urfoex Urfoex requested a review from srnnkls September 1, 2025 20:19
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.

@Urfoex Urfoex merged commit 3abbba5 into develop Sep 2, 2025
3 checks passed
@Urfoex Urfoex deleted the feature/GH-50-serialize-pipeline-columns branch September 2, 2025 14:03
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 columns serializer

2 participants

Comments