This is an automated email from the ASF dual-hosted git repository.

jscheffl pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new 271bfa6121 Support upper bound in provider dependencies (#40465)
271bfa6121 is described below

commit 271bfa6121a87413df8d57de843409752a87aaea
Author: Jens Scheffler <[email protected]>
AuthorDate: Fri Jun 28 08:12:29 2024 +0200

    Support upper bound in provider dependencies (#40465)
---
 dev/breeze/src/airflow_breeze/utils/packages.py | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/dev/breeze/src/airflow_breeze/utils/packages.py 
b/dev/breeze/src/airflow_breeze/utils/packages.py
index 36b99b8c9f..b11457ed8a 100644
--- a/dev/breeze/src/airflow_breeze/utils/packages.py
+++ b/dev/breeze/src/airflow_breeze/utils/packages.py
@@ -418,6 +418,9 @@ def apply_version_suffix(install_clause: str, 
version_suffix: str) -> str:
         # `apache-airflow>=2.9.0.dev0` and not `apache-airflow>=2.9.0` because 
both packages are
         # released together and >= 2.9.0 is not correct reference for 
2.9.0.dev0 version of Airflow.
         prefix, version = install_clause.split(">=")
+        # If version has a upper limit (e.g. ">=2.10.0,<3.0"), we need to cut 
this off not to fail
+        if "," in version:
+            version = version.split(",")[0]
         from packaging.version import Version
 
         base_version = Version(version).base_version
@@ -525,6 +528,9 @@ def get_min_airflow_version(provider_id: str) -> str:
     for dependency in provider_details.dependencies:
         if dependency.startswith("apache-airflow>="):
             current_min_airflow_version = dependency.split(">=")[1]
+            # If version has a upper limit (e.g. ">=2.10.0,<3.0"), we need to 
cut this off not to fail
+            if "," in current_min_airflow_version:
+                current_min_airflow_version = 
current_min_airflow_version.split(",")[0]
             if PackagingVersion(current_min_airflow_version) > 
PackagingVersion(MIN_AIRFLOW_VERSION):
                 min_airflow_version = current_min_airflow_version
     return min_airflow_version

Reply via email to