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

potiuk pushed a commit to branch fix-2.11.1-rc
in repository https://gitbox.apache.org/repos/asf/airflow.git

commit 5e75739966eabfd630a460130ae4de1f74b447f9
Author: Jarek Potiuk <[email protected]>
AuthorDate: Mon Feb 16 20:37:17 2026 +0100

    Fix 2.11.1 dependencies for fab provider
    
    The rc1 does not install because it had bad fab provider
    version specification (missing rc and missing upper-binding).
    
    This was because in 2.11 we removed suffix for final version
    rather than added it as we do in Airflow 3 and we never had
    upper-binding in preinstalled providers.
    
    This PR fixes both issues and will make it ready for rc2 of 2.11.1
---
 README.md      | 8 ++++----
 hatch_build.py | 9 ++++++---
 2 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/README.md b/README.md
index 94c6e19c04e..fd04baae1f8 100644
--- a/README.md
+++ b/README.md
@@ -170,15 +170,15 @@ them to the appropriate format and workflow that your 
tool requires.
 
 
 ```bash
-pip install 'apache-airflow==2.11.0' \
- --constraint 
"https://raw.githubusercontent.com/apache/airflow/constraints-2.11.0/constraints-3.9.txt";
+pip install 'apache-airflow==2.11.1' \
+ --constraint 
"https://raw.githubusercontent.com/apache/airflow/constraints-2.11.1/constraints-3.10.txt";
 ```
 
 2. Installing with extras (i.e., postgres, google)
 
 ```bash
-pip install 'apache-airflow[postgres,google]==2.8.3' \
- --constraint 
"https://raw.githubusercontent.com/apache/airflow/constraints-2.11.0/constraints-3.9.txt";
+pip install 'apache-airflow[postgres,google]==2.11.1' \
+ --constraint 
"https://raw.githubusercontent.com/apache/airflow/constraints-2.11.1/constraints-3.10.txt";
 ```
 
 For information on installing provider packages, check
diff --git a/hatch_build.py b/hatch_build.py
index 0685f4e4632..83b622a54be 100644
--- a/hatch_build.py
+++ b/hatch_build.py
@@ -43,7 +43,7 @@ PRE_INSTALLED_PROVIDERS = [
     "common.compat",
     "common.io",
     "common.sql",
-    "fab>=1.5.4,<2.0",
+    "fab>=1.5.4rc0,<2.0",
     "ftp",
     "http",
     "imap",
@@ -576,13 +576,16 @@ def get_provider_requirement(provider_spec: str) -> str:
 
         current_airflow_version = Version(airflow_version_match.group(1))
         provider_id, min_version = provider_spec.split(">=")
-        min_version = min_version.split(",")[0]
+        version_split = min_version.split(",")
+        min_version = version_split[0]
         provider_version = Version(min_version)
         if provider_version.is_prerelease and not 
current_airflow_version.is_prerelease:
             # strip pre-release version from the pre-installed provider's 
version when we are preparing
             # the official package
             min_version = str(provider_version.base_version)
-        return f"apache-airflow-providers-{provider_id.replace('.', 
'-')}>={min_version}"
+        extra_version="" if len(version_split) == 1 else ","  + 
",".join(version_split[1:])
+        return (f"apache-airflow-providers-{provider_id.replace('.', '-')}"
+                f">={min_version}{extra_version}")
     else:
         return f"apache-airflow-providers-{provider_spec.replace('.', '-')}"
 

Reply via email to