The GitHub Actions job "Tests" on airflow.git has failed.
Run started by GitHub user eladkal (triggered by eladkal).

Head commit for run:
2149b4dbee8fb524bb235280aaef158afaec8d4a / Usiel Riedl 
<[email protected]>
Ensures DAG params order regardless of backend (#40156)

* Ensures DAG params order regardless of backend

Fixes https://github.com/apache/airflow/issues/40154

This change adds an extra attribute to the serialized DAG param objects which 
helps us decide
the order of the deserialized params dictionary later even if the backend 
messes with us.

I decided not to limit this just to MySQL since the operation is inexpensive 
and may turn
out to be helpful.

I made sure the new test fails with the old implementation + MySQL. I assume 
this test will be
executed with MySQL somewhere in the build actions?

* Removes GitHub reference

Co-authored-by: Jed Cunningham <[email protected]>

* Serialize DAG params as array of tuples to ensure ordering

Alternative to previous approach: We serialize the DAG params dict as a list of 
tuples which _should_ keep their ordering regardless of backend.

Backwards compatibility is ensured because if `encoded_params` is a `dict` (not 
the expected `list`) then `dict(encoded_params)` still works.

* Make backwards compatibility more explicit

Based on suggestions by @uranusjr with an additional fix to make mypy happy.

---------

Co-authored-by: Jed Cunningham <[email protected]>

Report URL: https://github.com/apache/airflow/actions/runs/9493082443

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to