Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/actions/breeze/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ inputs:
default: "3.10"
uv-version:
description: 'uv version to use'
default: "0.11.1" # Keep this comment to allow automatic replacement of uv version
default: "0.10.12" # Keep this comment to allow automatic replacement of uv version
outputs:
host-python-version:
description: Python version used in host
Expand Down
4 changes: 2 additions & 2 deletions .github/actions/install-prek/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,10 @@ inputs:
default: "3.10"
uv-version:
description: 'uv version to use'
default: "0.11.1" # Keep this comment to allow automatic replacement of uv version
default: "0.10.12" # Keep this comment to allow automatic replacement of uv version
prek-version:
description: 'prek version to use'
default: "0.3.8" # Keep this comment to allow automatic replacement of prek version
default: "0.3.6" # Keep this comment to allow automatic replacement of prek version
save-cache:
description: "Whether to save prek cache"
required: true
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/basic-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ on: # yamllint disable-line rule:truthy
type: string
uv-version:
description: 'uv version to use'
default: "0.11.1" # Keep this comment to allow automatic replacement of uv version
default: "0.10.12" # Keep this comment to allow automatic replacement of uv version
type: string
platform:
description: 'Platform for the build - linux/amd64 or linux/arm64'
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci-amd-arm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.actor }}
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
UV_VERSION: "0.11.1" # Keep this comment to allow automatic replacement of uv version
UV_VERSION: "0.10.12" # Keep this comment to allow automatic replacement of uv version
VERBOSE: "true"

concurrency:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release_dockerhub_image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ jobs:
AIRFLOW_VERSION: ${{ github.event.inputs.airflowVersion }}
AMD_ONLY: ${{ github.event.inputs.amdOnly }}
LIMIT_PYTHON_VERSIONS: ${{ github.event.inputs.limitPythonVersions }}
UV_VERSION: "0.11.1" # Keep this comment to allow automatic replacement of uv version
UV_VERSION: "0.10.12" # Keep this comment to allow automatic replacement of uv version
if: contains(fromJSON('[
"ashb",
"bugraoz93",
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ ARG PYTHON_LTO="true"
# Also use `force pip` label on your PR to swap all places we use `uv` to `pip`
ARG AIRFLOW_PIP_VERSION=26.0.1
# ARG AIRFLOW_PIP_VERSION="git+https://github.com/pypa/pip.git@main"
ARG AIRFLOW_UV_VERSION=0.11.1
ARG AIRFLOW_UV_VERSION=0.10.12
ARG AIRFLOW_USE_UV="false"
ARG AIRFLOW_IMAGE_REPOSITORY="https://github.com/apache/airflow"
ARG AIRFLOW_IMAGE_README_URL="https://github.com/apache/airflow/main/docs/docker-stack/README.md"
Expand Down
4 changes: 2 additions & 2 deletions Dockerfile.ci
Original file line number Diff line number Diff line change
Expand Up @@ -1777,8 +1777,8 @@ COPY --from=scripts common.sh install_packaging_tools.sh install_additional_depe
# Also use `force pip` label on your PR to swap all places we use `uv` to `pip`
ARG AIRFLOW_PIP_VERSION=26.0.1
# ARG AIRFLOW_PIP_VERSION="git+https://github.com/pypa/pip.git@main"
ARG AIRFLOW_UV_VERSION=0.11.1
ARG AIRFLOW_PREK_VERSION="0.3.8"
ARG AIRFLOW_UV_VERSION=0.10.12
ARG AIRFLOW_PREK_VERSION="0.3.6"

# UV_LINK_MODE=copy is needed since we are using cache mounted from the host
ENV AIRFLOW_PIP_VERSION=${AIRFLOW_PIP_VERSION} \
Expand Down
2 changes: 1 addition & 1 deletion airflow-core/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ requires = [
"pathspec==1.0.4",
"pluggy==1.6.0",
"smmap==5.0.3",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
2 changes: 1 addition & 1 deletion airflow-ctl-tests/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
2 changes: 1 addition & 1 deletion airflow-ctl/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
2 changes: 1 addition & 1 deletion airflow-e2e-tests/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
2 changes: 1 addition & 1 deletion chart/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
2 changes: 1 addition & 1 deletion clients/python/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
4 changes: 2 additions & 2 deletions dev/breeze/doc/ci/02_images.md
Original file line number Diff line number Diff line change
Expand Up @@ -443,8 +443,8 @@ can be used for CI images:
| `ADDITIONAL_DEV_APT_DEPS` | | Additional apt dev dependencies installed in the first part of the image |
| `ADDITIONAL_DEV_APT_ENV` | | Additional env variables defined when installing dev deps |
| `AIRFLOW_PIP_VERSION` | `26.0.1` | `pip` version used. |
| `AIRFLOW_UV_VERSION` | `0.11.1` | `uv` version used. |
| `AIRFLOW_PREK_VERSION` | `0.3.8` | `prek` version used. |
| `AIRFLOW_UV_VERSION` | `0.10.12` | `uv` version used. |
| `AIRFLOW_PREK_VERSION` | `0.3.6` | `prek` version used. |
| `AIRFLOW_USE_UV` | `true` | Whether to use UV for installation. |
| `PIP_PROGRESS_BAR` | `on` | Progress bar for PIP installation |

Expand Down
5 changes: 4 additions & 1 deletion dev/breeze/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ dependencies = [
"jinja2>=3.1.5",
"jsonschema>=4.19.1",
"packaging>=25.0",
"prek>=0.3.8",
"prek>=0.3.6",
"psutil>=5.9.6",
"pygithub>=2.1.1",
"pytest-xdist>=3.3.1",
Expand Down Expand Up @@ -116,6 +116,9 @@ tmp_path_retention_policy = "failed"
extend = "../../pyproject.toml"
src = ["src"]

[tool.uv]
# Synchroonize with scripts/ci/prek/upgrade_important_versions.py
exclude-newer = "4 days"

[tool.mypy]
ignore_missing_imports = true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -260,11 +260,11 @@ class VersionedFile(NamedTuple):


AIRFLOW_PIP_VERSION = "26.0.1"
AIRFLOW_UV_VERSION = "0.11.1"
AIRFLOW_UV_VERSION = "0.10.12"
AIRFLOW_USE_UV = False
GITPYTHON_VERSION = "3.1.46"
RICH_VERSION = "14.3.3"
PREK_VERSION = "0.3.8"
PREK_VERSION = "0.3.6"
HATCH_VERSION = "1.16.5"
PYYAML_VERSION = "6.0.3"

Expand Down
2 changes: 1 addition & 1 deletion dev/breeze/src/airflow_breeze/global_constants.py
Original file line number Diff line number Diff line change
Expand Up @@ -281,7 +281,7 @@ def get_allowed_llm_models() -> list[str]:
ALLOWED_INSTALL_MYSQL_CLIENT_TYPES = ["mariadb"]

PIP_VERSION = "26.0.1"
UV_VERSION = "0.11.1"
UV_VERSION = "0.10.12"

# packages that providers docs
REGULAR_DOC_PACKAGES = [
Expand Down
2 changes: 1 addition & 1 deletion dev/breeze/uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion dev/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
2 changes: 1 addition & 1 deletion dev/registry/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
2 changes: 1 addition & 1 deletion docker-stack-docs/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
2 changes: 1 addition & 1 deletion docker-tests/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
2 changes: 1 addition & 1 deletion helm-tests/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
2 changes: 1 addition & 1 deletion kubernetes-tests/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
2 changes: 1 addition & 1 deletion providers-summary-docs/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
8 changes: 4 additions & 4 deletions providers/alibaba/docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -97,17 +97,17 @@ Requirements

The minimum Apache Airflow version supported by this provider distribution is ``2.11.0``.

========================================== =======================================
========================================== ========================================
PIP package Version required
========================================== =======================================
========================================== ========================================
``apache-airflow`` ``>=2.11.0``
``apache-airflow-providers-common-compat`` ``>=1.13.0``
``oss2`` ``>=2.14.0``
``alibabacloud_adb20211201`` ``>=1.0.0``
``alibabacloud_tea_openapi`` ``>=0.3.7``
``pyodps`` ``>=0.12.2.2; python_version < "3.13"``
``pyodps`` ``>=0.12.6; python_version >= "3.13"``
========================================== =======================================
``pyodps`` ``>=0.12.5.1; python_version >= "3.13"``
========================================== ========================================

Cross provider package dependencies
-----------------------------------
Expand Down
2 changes: 1 addition & 1 deletion providers/alibaba/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ dependencies = [
"alibabacloud_adb20211201>=1.0.0",
"alibabacloud_tea_openapi>=0.3.7",
"pyodps>=0.12.2.2; python_version < '3.13'",
"pyodps>=0.12.6; python_version >= '3.13'",
"pyodps>=0.12.5.1; python_version >= '3.13'",
Comment thread
potiuk marked this conversation as resolved.
]

[dependency-groups]
Expand Down
2 changes: 1 addition & 1 deletion providers/common/ai/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
2 changes: 1 addition & 1 deletion providers/edge3/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
2 changes: 1 addition & 1 deletion providers/fab/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
6 changes: 4 additions & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down Expand Up @@ -539,7 +539,7 @@ packages = []
"apache-airflow-providers-amazon[s3fs]",
]
"uv" = [
"uv>=0.11.1",
"uv>=0.10.12",
]

[project.urls]
Expand Down Expand Up @@ -1340,6 +1340,8 @@ leveldb = [

[tool.uv]
required-version = ">=0.6.3"
# Synchroonize with scripts/ci/prek/upgrade_important_versions.py
exclude-newer = "4 days"
no-build-isolation-package = ["sphinx-redoc"]
constraint-dependencies = ["lxml==6.0.2"] # Remove after https://github.com/aws/amazon-redshift-python-driver/pull/272

Expand Down
31 changes: 28 additions & 3 deletions scripts/ci/prek/upgrade_important_versions.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
import re
import subprocess
import sys
from datetime import datetime, timedelta, timezone
from enum import Enum
from pathlib import Path

Expand Down Expand Up @@ -98,6 +99,20 @@
FILES_TO_UPDATE.append((file, False))


# Synchroonize with scripts/ci/prek/upgrade_important_versions.py
COOLDOWN_DAYS = 4


def _is_version_within_cooldown(releases: dict, version: str) -> bool:
"""Return True if the given version was uploaded within the cooldown period."""
files = releases.get(version, [])
if not files:
return False
upload_time = datetime.fromisoformat(files[0]["upload_time_iso_8601"].replace("Z", "+00:00"))
cutoff = datetime.now(timezone.utc) - timedelta(days=COOLDOWN_DAYS)
return upload_time > cutoff


def get_latest_pypi_version(package_name: str, should_upgrade: bool) -> str:
if not should_upgrade:
return ""
Expand All @@ -108,10 +123,20 @@ def get_latest_pypi_version(package_name: str, should_upgrade: bool) -> str:
)
response.raise_for_status() # Ensure we got a successful response
data = response.json()
if os.environ.get(f"UPGRADE_{package_name.upper()}_INCLUDE_PRE_RELEASES", ""):
latest_version = str(sorted([Version(version) for version in data["releases"].keys()])[-1])
releases = data["releases"]
include_pre = os.environ.get(f"UPGRADE_{package_name.upper()}_INCLUDE_PRE_RELEASES", "")
if include_pre:
sorted_versions = sorted([Version(v) for v in releases.keys()])
else:
latest_version = data["info"]["version"] # The version info is under the 'info' key
sorted_versions = sorted([Version(v) for v in releases.keys() if not Version(v).is_prerelease])
# Skip versions released within the cooldown period
latest_version = ""
for version in reversed(sorted_versions):
if not _is_version_within_cooldown(releases, str(version)):
latest_version = str(version)
break
if not latest_version:
latest_version = data["info"]["version"]
if VERBOSE:
console.print(f"[bright_blue]Latest version for {package_name}: {latest_version}")
return latest_version
Expand Down
2 changes: 1 addition & 1 deletion scripts/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ requires = [
"packaging==26.0",
"pathspec==1.0.4",
"pluggy==1.6.0",
"tomli==2.4.1; python_version < '3.11'",
"tomli==2.4.0; python_version < '3.11'",
"trove-classifiers==2026.1.14.14",
]
build-backend = "hatchling.build"
Expand Down
Loading
Loading