Decouple Param and ParamsDict from SDK during deserialization#55111
Merged
uranusjr merged 2 commits intoapache:mainfrom Oct 16, 2025
Merged
Decouple Param and ParamsDict from SDK during deserialization#55111uranusjr merged 2 commits intoapache:mainfrom
Param and ParamsDict from SDK during deserialization#55111uranusjr merged 2 commits intoapache:mainfrom
Conversation
7643d52 to
4697efa
Compare
4697efa to
3a62f2a
Compare
3a62f2a to
fc10d9a
Compare
20 tasks
c693102 to
b9e352c
Compare
297cdc4 to
09eff55
Compare
kaxil
commented
Oct 14, 2025
amoghrajesh
reviewed
Oct 15, 2025
Contributor
amoghrajesh
left a comment
There was a problem hiding this comment.
Some nits, but generally looks good.
kaxil
commented
Oct 15, 2025
Introduces server-side `SerializedParam` and `SerializedParamsDict` classes to eliminate SDK dependencies during DAG deserialization. This change ensures the scheduler and API server can deserialize DAGs without importing Task SDK modules. Part of apache#52141
uranusjr
approved these changes
Oct 16, 2025
Member
uranusjr
left a comment
There was a problem hiding this comment.
Rubber stamping for Kaxil’s approval
snreddygopu
pushed a commit
to Teradata/airflow
that referenced
this pull request
Oct 16, 2025
…ache#55111) Co-authored-by: Tzu-ping Chung <[email protected]>
abdulrahman305 bot
pushed a commit
to qenex-ai/airflow
that referenced
this pull request
Oct 17, 2025
…ache#55111) Co-authored-by: Tzu-ping Chung <[email protected]>
fredthomsen
added a commit
to fredthomsen/airflow
that referenced
this pull request
Oct 18, 2025
PR apache#55111 introduced SerializedParam to decouple from the Task SDK, but inadvertently broke the API contract by changing `.dump()` to `.resolve()` in the params serialization. This caused the UI to crash because FlexibleForm expects the full param spec with {value, schema, description} but was receiving only the resolved values. The original SDK Param class had a `.dump()` method that returned the full spec, so this restores the API contract rather than creating new behavior. Related: apache#55111
fredthomsen
added a commit
to fredthomsen/airflow
that referenced
this pull request
Oct 18, 2025
PR apache#55111 introduced SerializedParam to decouple from the Task SDK, but inadvertently broke the API contract by changing `.dump()` to `.resolve()` in the params serialization. This caused the UI to crash because FlexibleForm expects the full param spec with {value, schema, description} but was receiving only the resolved values. The original SDK Param class had a `.dump()` method that returned the full spec, so this restores the API contract rather than creating new behavior. Related: apache#55111
fredthomsen
added a commit
to fredthomsen/airflow
that referenced
this pull request
Oct 18, 2025
PR apache#55111 introduced SerializedParam to decouple from the Task SDK, but inadvertently broke the API contract by changing `.dump()` to `.resolve()` in the params serialization. This caused the UI to crash because FlexibleForm expects the full param spec with {value, schema, description} but was receiving only the resolved values. The original SDK Param class had a `.dump()` method that returned the full spec, so this restores the API contract rather than creating new behavior. Related: apache#55111
abdulrahman305 bot
pushed a commit
to qenex-ai/airflow
that referenced
this pull request
Oct 19, 2025
…ache#55111) Co-authored-by: Tzu-ping Chung <[email protected]>
fredthomsen
added a commit
to fredthomsen/airflow
that referenced
this pull request
Oct 19, 2025
PR apache#55111 introduced SerializedParam to decouple from the Task SDK, but inadvertently broke the API contract by changing `.dump()` to `.resolve()` in the params serialization. This caused the UI to crash because FlexibleForm expects the full param spec with {value, schema, description} but was receiving only the resolved values. The original SDK Param class had a `.dump()` method that returned the full spec, so this restores the API contract rather than creating new behavior. Related: apache#55111
jscheffl
pushed a commit
to fredthomsen/airflow
that referenced
this pull request
Oct 20, 2025
PR apache#55111 introduced SerializedParam to decouple from the Task SDK, but inadvertently broke the API contract by changing `.dump()` to `.resolve()` in the params serialization. This caused the UI to crash because FlexibleForm expects the full param spec with {value, schema, description} but was receiving only the resolved values. The original SDK Param class had a `.dump()` method that returned the full spec, so this restores the API contract rather than creating new behavior. Related: apache#55111
uranusjr
pushed a commit
that referenced
this pull request
Oct 21, 2025
TyrellHaywood
pushed a commit
to TyrellHaywood/airflow
that referenced
this pull request
Oct 22, 2025
…ache#55111) Co-authored-by: Tzu-ping Chung <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Introduces server-side
SerializedParamandSerializedParamsDictclasses to eliminate SDK dependencies during DAG deserialization. This change ensures the scheduler and API server can deserialize DAGs without importing Task SDK modules.Part of #52141
TODO:
^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragment file, named
{pr_number}.significant.rstor{issue_number}.significant.rst, in airflow-core/newsfragments.