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

potiuk pushed a commit to branch v3-3-test
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/v3-3-test by this push:
     new aac71070788 [v3-3-test] Pin devel dependencies to uv.lock in provider 
compat CI jobs (#72581) (#72671)
aac71070788 is described below

commit aac71070788e8abcc286752a2d35c8c08b553650
Author: github-actions[bot] 
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Mon Sep 7 23:39:26 2026 +0200

    [v3-3-test] Pin devel dependencies to uv.lock in provider compat CI jobs 
(#72581) (#72671)
    
    (cherry picked from commit ab6c60c964b6ff2ac84c1ea52232a547c25d67fa)
    
    Signed-off-by: PoAn Yang <[email protected]>
    Co-authored-by: PoAn Yang <[email protected]>
---
 Dockerfile.ci                   | 6 +++++-
 scripts/docker/entrypoint_ci.sh | 6 +++++-
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/Dockerfile.ci b/Dockerfile.ci
index 8fd95319e1b..fab1aa1b132 100644
--- a/Dockerfile.ci
+++ b/Dockerfile.ci
@@ -1402,9 +1402,13 @@ function determine_airflow_to_use() {
         # Generate constraints from uv.lock and use them to install 
development dependencies
         # via the Python script. --no-cache is needed - otherwise there is 
possibility of
         # overriding temporary environments by multiple parallel processes
+        # --all-packages: without it the export only covers the root project's 
dependencies.
+        # Anything that only a workspace member's dependency group pulls in, 
such
+        # as mcp through common.ai's pydantic-ai-slim[mcp], stays unpinned and 
resolves fresh
+        # from PyPI instead of following uv.lock.
         local constraint_file="/tmp/constraints-from-lock.txt"
         uv export --frozen --no-hashes --no-emit-project --no-emit-workspace 
--no-editable --no-header \
-            --no-annotate > "${constraint_file}" 2>/dev/null || true
+            --no-annotate --all-packages > "${constraint_file}" 2>/dev/null || 
true
         uv run --no-cache 
/opt/airflow/scripts/in_container/install_development_dependencies.py \
            --constraint "${constraint_file}"
         # Some packages might leave legacy typing module which causes test 
issues
diff --git a/scripts/docker/entrypoint_ci.sh b/scripts/docker/entrypoint_ci.sh
index 466b2bdc7b0..771801eee38 100755
--- a/scripts/docker/entrypoint_ci.sh
+++ b/scripts/docker/entrypoint_ci.sh
@@ -305,9 +305,13 @@ function determine_airflow_to_use() {
         # Generate constraints from uv.lock and use them to install 
development dependencies
         # via the Python script. --no-cache is needed - otherwise there is 
possibility of
         # overriding temporary environments by multiple parallel processes
+        # --all-packages: without it the export only covers the root project's 
dependencies.
+        # Anything that only a workspace member's dependency group pulls in, 
such
+        # as mcp through common.ai's pydantic-ai-slim[mcp], stays unpinned and 
resolves fresh
+        # from PyPI instead of following uv.lock.
         local constraint_file="/tmp/constraints-from-lock.txt"
         uv export --frozen --no-hashes --no-emit-project --no-emit-workspace 
--no-editable --no-header \
-            --no-annotate > "${constraint_file}" 2>/dev/null || true
+            --no-annotate --all-packages > "${constraint_file}" 2>/dev/null || 
true
         uv run --no-cache 
/opt/airflow/scripts/in_container/install_development_dependencies.py \
            --constraint "${constraint_file}"
         # Some packages might leave legacy typing module which causes test 
issues

Reply via email to