-
Notifications
You must be signed in to change notification settings - Fork 14.2k
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
Remove check for tuple in test_security #21228
Conversation
SQLAlchemy 1.4 does not produce iterator of "real" Tuples, it returns iterator of Rows. Rows are not Tuples so instance check will fail for them, however for all practical purpose they behave as Tuples (even comparing them with Tuples of the same content produce an equality). They also behave like dict, but this is a different story. The test started to fail in SQLAlchemy 1.4 because it contained assert for the returned set entry to be Tuple, but it also contained the actual check for length and whether the expected Tuple is in the set, so assert for instance is pretty redundant.
The PR is likely OK to be merged with just subset of tests for default Python and Database versions without running the full matrix of tests, because it does not modify the core of Airflow. If the committers decide that the full tests matrix is needed, they will add the label 'full tests needed'. Then you should rebase to the latest main or amend the last commit of the PR, and push it with --force-with-lease. |
The recent release of FAB 3.4.4 has unblocked us from upgrading SQLAlchemy to 1.4.* version. We wanted to do it for quite some time however upgrading to 1.4.* of sqlalchemy and allowing our users to use it for 2.2.4 is a bit risky. We are fixing resulting "aftermath" in the main branch and as of this commit there are two fixes merged and remaining MsSQL problem. The MSSql problem does not affect 2.2.4 as MsSQL will be available only starting from 2.3.0, however the two other problems have shown that SQLAlchemy has a potential to break things and we might want to test it more thoroughly before releasing 2.3.0. The problems in question are apache#21205 and apache#21228. Both were only test problems but the indicate that there might be more hidden issues involved. In order to limit risks, this PR proposes to limit SQLAlchemy for 2.2.* to < 1.4.0. This will allow to upgrade FAB and related dependencies without opening up Airflow to upgrade to SQLAlchemy 1.4 (yet).
The recent release of FAB 3.4.4 has unblocked us from upgrading SQLAlchemy to 1.4.* version. We wanted to do it for quite some time however upgrading to 1.4.* of sqlalchemy and allowing our users to use it for 2.2.4 is a bit risky. We are fixing resulting "aftermath" in the main branch and as of this commit there are two fixes merged and remaining MsSQL problem. The MSSql problem does not affect 2.2.4 as MsSQL will be available only starting from 2.3.0, however the two other problems have shown that SQLAlchemy has a potential to break things and we might want to test it more thoroughly before releasing 2.3.0. The problems in question are #21205 and #21228. Both were only test problems but the indicate that there might be more hidden issues involved. In order to limit risks, this PR proposes to limit SQLAlchemy for 2.2.* to < 1.4.0. This will allow to upgrade FAB and related dependencies without opening up Airflow to upgrade to SQLAlchemy 1.4 (yet).
The recent release of FAB 3.4.4 has unblocked us from upgrading SQLAlchemy to 1.4.* version. We wanted to do it for quite some time however upgrading to 1.4.* of sqlalchemy and allowing our users to use it for 2.2.4 is a bit risky. We are fixing resulting "aftermath" in the main branch and as of this commit there are two fixes merged and remaining MsSQL problem. The MSSql problem does not affect 2.2.4 as MsSQL will be available only starting from 2.3.0, however the two other problems have shown that SQLAlchemy has a potential to break things and we might want to test it more thoroughly before releasing 2.3.0. The problems in question are #21205 and #21228. Both were only test problems but the indicate that there might be more hidden issues involved. In order to limit risks, this PR proposes to limit SQLAlchemy for 2.2.* to < 1.4.0. This will allow to upgrade FAB and related dependencies without opening up Airflow to upgrade to SQLAlchemy 1.4 (yet).
The recent release of FAB 3.4.4 has unblocked us from upgrading SQLAlchemy to 1.4.* version. We wanted to do it for quite some time however upgrading to 1.4.* of sqlalchemy and allowing our users to use it for 2.2.4 is a bit risky. We are fixing resulting "aftermath" in the main branch and as of this commit there are two fixes merged and remaining MsSQL problem. The MSSql problem does not affect 2.2.4 as MsSQL will be available only starting from 2.3.0, however the two other problems have shown that SQLAlchemy has a potential to break things and we might want to test it more thoroughly before releasing 2.3.0. The problems in question are #21205 and #21228. Both were only test problems but the indicate that there might be more hidden issues involved. In order to limit risks, this PR proposes to limit SQLAlchemy for 2.2.* to < 1.4.0. This will allow to upgrade FAB and related dependencies without opening up Airflow to upgrade to SQLAlchemy 1.4 (yet).
SQLAlchemy 1.4 does not produce iterator of "real" Tuples,
it returns iterator of Rows. Rows are not Tuples so instance
check will fail for them, however for all practical purpose
they behave as Tuples (even comparing them with Tuples of the
same content produce an equality). They also behave like dict,
but this is a different story.
The test started to fail in SQLAlchemy 1.4 because it contained
assert for the returned set entry to be Tuple, but it also contained
the actual check for length and whether the expected Tuple is in
the set, so assert for instance is pretty redundant.
^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code change, 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 UPDATING.md.