-
Notifications
You must be signed in to change notification settings - Fork 14.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support of Pendulum 3 #36281
Add support of Pendulum 3 #36281
Conversation
What happens if serialization (serde) encounters a OLD version of a pendulum timezone? I havent verified it myself but I assume the class names have changed? |
Full qualified path is the same. The main difference how UTC timezone works:
|
Anyway It is a good point to add this kind of tests. |
91763bd
to
5681d12
Compare
I like it :-) |
edd2d32
to
ccb2e4e
Compare
Seems like it close to backcompat with 2, just need to resolve remaining static checks |
59e9973
to
3e7f50e
Compare
Seems like all major stuff are resolved, so this PR could be reviewed. |
2be8e29
to
e623348
Compare
Looks green. Does it mean we have it ?? |
I think we should bite the bullet and start fixing stuff that might be affected. So yes we should have it. |
I will rebase and add release notes today if I feel better |
Just wondering shall we merge it or better to wait for someone else review? |
ab31119
to
3caa58d
Compare
Fortunately All failures after latest rebase not relevant to changes from this PR and should be fixed by #36728 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This one looks FANTASTIC
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great! LGTM
🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 |
* Add support of Pendulum 3 * Add backcompat to pendulum 2 * Update airflow/serialization/serialized_objects.py Co-authored-by: Tzu-ping Chung <[email protected]> * Add newsfragments --------- Co-authored-by: Tzu-ping Chung <[email protected]> (cherry picked from commit 2ffa6e4)
* Add support of Pendulum 3 * Add backcompat to pendulum 2 * Update airflow/serialization/serialized_objects.py Co-authored-by: Tzu-ping Chung <[email protected]> * Add newsfragments --------- Co-authored-by: Tzu-ping Chung <[email protected]> (cherry picked from commit 2ffa6e4)
Related: #35798,
the differences is bump to min pendulum 3As suggestion in https://lists.apache.org/thread/5b3xw87ntl0m00d8jwcz13vnvxhybjdp keep support pendulum 2 for a while, even if it has some problem it might help users to migrate to pendulum 3.
Add
--downgrade-pendulum
by the same way as it implements into the--downgrade-sqlalchemy
so we could also run tests against pendulum 2 for a while.The only one version of pendulum supported -
2.1.2
with older versions such as2.0.0
I had a problem with initialised Airflow, there is should not be a big problem because we have2.1.2
for a long period of time in constraints, and I guess for all Airflow 2.x but I do not checked all constraints only latests.There is some different behaviour with pendulum 3 vs pendulum 2:
String representation:
Pendulum 2
Has
T
separator between date and timePendulum 3
Has
(1 whitespace) separator between date and time, same as
datetime.datetime
UTC serialised for timezone in REST API
Pendulum 2
Pendulum 3
^ 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.rst
or{issue_number}.significant.rst
, in newsfragments.