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

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


The following commit(s) were added to refs/heads/v3-1-test by this push:
     new c56c57027a2 CI: Upgrade important CI environment (#60375)
c56c57027a2 is described below

commit c56c57027a28f22a955f22383c3ca71d5a91b01c
Author: Jens Scheffler <[email protected]>
AuthorDate: Sat Jan 10 21:26:27 2026 +0100

    CI: Upgrade important CI environment (#60375)
    
    * CI: Upgrade important CI environment
    
    * Fix action pinning
---
 .github/actions/breeze/action.yml                  |  4 +-
 .github/actions/install-prek/action.yml            |  2 +-
 .github/actions/post_tests_failure/action.yml      |  6 +-
 .github/actions/post_tests_success/action.yml      |  2 +-
 .github/workflows/basic-tests.yml                  |  2 +-
 .github/workflows/release_dockerhub_image.yml      |  2 +-
 .pre-commit-config.yaml                            |  2 +-
 Dockerfile                                         |  2 +-
 Dockerfile.ci                                      |  2 +-
 dev/breeze/doc/ci/02_images.md                     |  2 +-
 .../commands/release_management_commands.py        |  2 +-
 dev/breeze/src/airflow_breeze/global_constants.py  |  2 +-
 dev/breeze/uv.lock                                 | 98 +++++++++++-----------
 pyproject.toml                                     |  2 +-
 scripts/tools/setup_breeze                         |  2 +-
 15 files changed, 66 insertions(+), 66 deletions(-)

diff --git a/.github/actions/breeze/action.yml 
b/.github/actions/breeze/action.yml
index 80229aaed63..6daee5ba800 100644
--- a/.github/actions/breeze/action.yml
+++ b/.github/actions/breeze/action.yml
@@ -24,7 +24,7 @@ inputs:
     default: "3.10"
   uv-version:
     description: 'uv version to use'
-    default: "0.9.22"  # Keep this comment to allow automatic replacement of 
uv version
+    default: "0.9.24"  # Keep this comment to allow automatic replacement of 
uv version
 outputs:
   host-python-version:
     description: Python version used in host
@@ -33,7 +33,7 @@ runs:
   using: "composite"
   steps:
     - name: "Setup python"
-      uses: actions/setup-python@v5
+      uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065  # 
v5.6.0
       with:
         python-version: ${{ inputs.python-version }}
     - name: "Install uv"
diff --git a/.github/actions/install-prek/action.yml 
b/.github/actions/install-prek/action.yml
index 5eefa77bb66..4c5420d4e05 100644
--- a/.github/actions/install-prek/action.yml
+++ b/.github/actions/install-prek/action.yml
@@ -24,7 +24,7 @@ inputs:
     default: "3.10"
   uv-version:
     description: 'uv version to use'
-    default: "0.9.22"  # Keep this comment to allow automatic replacement of 
uv version
+    default: "0.9.24"  # Keep this comment to allow automatic replacement of 
uv version
   prek-version:
     description: 'prek version to use'
     default: "0.2.27"  # Keep this comment to allow automatic replacement of 
prek version
diff --git a/.github/actions/post_tests_failure/action.yml 
b/.github/actions/post_tests_failure/action.yml
index 5586138c951..e6bbf03ad94 100644
--- a/.github/actions/post_tests_failure/action.yml
+++ b/.github/actions/post_tests_failure/action.yml
@@ -22,21 +22,21 @@ runs:
   using: "composite"
   steps:
     - name: "Upload airflow logs"
-      uses: actions/upload-artifact@v4
+      uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02  
# v4.6.2
       with:
         name: airflow-logs-${{env.JOB_ID}}
         path: './files/airflow_logs*'
         retention-days: 7
         if-no-files-found: ignore
     - name: "Upload container logs"
-      uses: actions/upload-artifact@v4
+      uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02  
# v4.6.2
       with:
         name: container-logs-${{env.JOB_ID}}
         path: "./files/container_logs*"
         retention-days: 7
         if-no-files-found: ignore
     - name: "Upload other logs"
-      uses: actions/upload-artifact@v4
+      uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02  
# v4.6.2
       with:
         name: container-logs-${{env.JOB_ID}}
         path: "./files/other_logs*"
diff --git a/.github/actions/post_tests_success/action.yml 
b/.github/actions/post_tests_success/action.yml
index 234cde900e4..7298fadaf7c 100644
--- a/.github/actions/post_tests_success/action.yml
+++ b/.github/actions/post_tests_success/action.yml
@@ -31,7 +31,7 @@ runs:
   using: "composite"
   steps:
     - name: "Upload artifact for warnings"
-      uses: actions/upload-artifact@v4
+      uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02  
# v4.6.2
       with:
         name: test-warnings-${{ env.JOB_ID }}
         path: ./files/warnings-*.txt
diff --git a/.github/workflows/basic-tests.yml 
b/.github/workflows/basic-tests.yml
index 3de189e2b47..bb56839e58e 100644
--- a/.github/workflows/basic-tests.yml
+++ b/.github/workflows/basic-tests.yml
@@ -66,7 +66,7 @@ on:  # yamllint disable-line rule:truthy
         type: string
       uv-version:
         description: 'uv version to use'
-        default: "0.9.22"  # Keep this comment to allow automatic replacement 
of uv version
+        default: "0.9.24"  # Keep this comment to allow automatic replacement 
of uv version
         type: string
       platform:
         description: 'Platform for the build - linux/amd64 or linux/arm64'
diff --git a/.github/workflows/release_dockerhub_image.yml 
b/.github/workflows/release_dockerhub_image.yml
index 65841f31072..5f5c62acf70 100644
--- a/.github/workflows/release_dockerhub_image.yml
+++ b/.github/workflows/release_dockerhub_image.yml
@@ -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.9.22"  # Keep this comment to allow automatic replacement 
of uv version
+      UV_VERSION: "0.9.24"  # Keep this comment to allow automatic replacement 
of uv version
     if: contains(fromJSON('[
       "ashb",
       "bugraoz93",
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 2065d41247c..56652442fea 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -330,7 +330,7 @@ repos:
           - 
--skip=providers/.*/src/airflow/providers/*/*.rst,providers/*/docs/changelog.rst,docs/*/commits.rst,providers/*/docs/commits.rst,providers/*/*/docs/commits.rst,docs/apache-airflow/tutorial/pipeline_example.csv,*.min.js,*.lock,INTHEWILD.md,*.svg
           - --exclude-file=.codespellignorelines
   - repo: https://github.com/woodruffw/zizmor-pre-commit
-    rev: ea18690d7f8e44203c9efd7bc6229447d02e3951  # frozen: v1.19.0
+    rev: 7fc963270df722f37707d47ff41265fe8f460822  # frozen: v1.20.0
     hooks:
       - id: zizmor
         name: Run zizmor to check for github workflow syntax errors
diff --git a/Dockerfile b/Dockerfile
index af7e0f5c686..9de28f6f3e2 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -56,7 +56,7 @@ ARG AIRFLOW_PYTHON_VERSION="3.12.12"
 # Also use `force pip` label on your PR to swap all places we use `uv` to `pip`
 ARG AIRFLOW_PIP_VERSION=25.3
 # ARG AIRFLOW_PIP_VERSION="git+https://github.com/pypa/pip.git@main";
-ARG AIRFLOW_UV_VERSION=0.9.22
+ARG AIRFLOW_UV_VERSION=0.9.24
 ARG AIRFLOW_USE_UV="false"
 ARG UV_HTTP_TIMEOUT="300"
 ARG AIRFLOW_IMAGE_REPOSITORY="https://github.com/apache/airflow";
diff --git a/Dockerfile.ci b/Dockerfile.ci
index 4c0382dca00..1cce0fa860b 100644
--- a/Dockerfile.ci
+++ b/Dockerfile.ci
@@ -1710,7 +1710,7 @@ 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=25.3
 # ARG AIRFLOW_PIP_VERSION="git+https://github.com/pypa/pip.git@main";
-ARG AIRFLOW_UV_VERSION=0.9.22
+ARG AIRFLOW_UV_VERSION=0.9.24
 ARG AIRFLOW_PREK_VERSION="0.2.27"
 
 # UV_LINK_MODE=copy is needed since we are using cache mounted from the host
diff --git a/dev/breeze/doc/ci/02_images.md b/dev/breeze/doc/ci/02_images.md
index 160a2b550d6..1b58cc29e1c 100644
--- a/dev/breeze/doc/ci/02_images.md
+++ b/dev/breeze/doc/ci/02_images.md
@@ -443,7 +443,7 @@ 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`             | `25.3`                      | `pip` 
version used.                                                                   
                            |
-| `AIRFLOW_UV_VERSION`              | `0.9.22`                    | `uv` 
version used.                                                                   
                             |
+| `AIRFLOW_UV_VERSION`              | `0.9.24`                    | `uv` 
version used.                                                                   
                             |
 | `AIRFLOW_PREK_VERSION`            | `0.2.27`                    | `prek` 
version used.                                                                   
                           |
 | `AIRFLOW_USE_UV`                  | `true`                      | Whether to 
use UV for installation.                                                        
                       |
 | `PIP_PROGRESS_BAR`                | `on`                        | Progress 
bar for PIP installation                                                        
                         |
diff --git 
a/dev/breeze/src/airflow_breeze/commands/release_management_commands.py 
b/dev/breeze/src/airflow_breeze/commands/release_management_commands.py
index 2d2cf6879b6..7006b43db4d 100644
--- a/dev/breeze/src/airflow_breeze/commands/release_management_commands.py
+++ b/dev/breeze/src/airflow_breeze/commands/release_management_commands.py
@@ -254,7 +254,7 @@ class VersionedFile(NamedTuple):
 
 
 AIRFLOW_PIP_VERSION = "25.3"
-AIRFLOW_UV_VERSION = "0.9.22"
+AIRFLOW_UV_VERSION = "0.9.24"
 AIRFLOW_USE_UV = False
 GITPYTHON_VERSION = "3.1.46"
 RICH_VERSION = "14.2.0"
diff --git a/dev/breeze/src/airflow_breeze/global_constants.py 
b/dev/breeze/src/airflow_breeze/global_constants.py
index da56905fc74..d401fa0c7d1 100644
--- a/dev/breeze/src/airflow_breeze/global_constants.py
+++ b/dev/breeze/src/airflow_breeze/global_constants.py
@@ -213,7 +213,7 @@ if MYSQL_INNOVATION_RELEASE:
 ALLOWED_INSTALL_MYSQL_CLIENT_TYPES = ["mariadb", "mysql"]
 
 PIP_VERSION = "25.3"
-UV_VERSION = "0.9.22"
+UV_VERSION = "0.9.24"
 
 DEFAULT_UV_HTTP_TIMEOUT = 300
 DEFAULT_WSL2_HTTP_TIMEOUT = 900
diff --git a/dev/breeze/uv.lock b/dev/breeze/uv.lock
index 07f35b6d2ef..0d799715429 100644
--- a/dev/breeze/uv.lock
+++ b/dev/breeze/uv.lock
@@ -260,30 +260,30 @@ wheels = [
 
 [[package]]
 name = "boto3"
-version = "1.42.24"
+version = "1.42.25"
 source = { registry = "https://pypi.org/simple"; }
 dependencies = [
     { name = "botocore" },
     { name = "jmespath" },
     { name = "s3transfer" },
 ]
-sdist = { url = 
"https://files.pythonhosted.org/packages/ee/21/8be0e3685c3a4868be48d8d2f6e5b4641727e1d8a5d396b8b401d2b5f06e/boto3-1.42.24.tar.gz";,
 hash = 
"sha256:c47a2f40df933e3861fc66fd8d6b87ee36d4361663a7e7ba39a87f5a78b2eae1", size 
= 112788, upload-time = "2026-01-07T20:30:51.019Z" }
+sdist = { url = 
"https://files.pythonhosted.org/packages/29/30/755a6c4b27ad4effefa9e407f84c6f0a69f75a21c0090beb25022dfcfd3f/boto3-1.42.25.tar.gz";,
 hash = 
"sha256:ccb5e757dd62698d25766cc54cf5c47bea43287efa59c93cf1df8c8fbc26eeda", size 
= 112811, upload-time = "2026-01-09T20:27:44.73Z" }
 wheels = [
-    { url = 
"https://files.pythonhosted.org/packages/a7/75/bbfccb268f9faa4f59030888e859dca9797a980b77d6a074113af73bd4bf/boto3-1.42.24-py3-none-any.whl";,
 hash = 
"sha256:8ed6ad670a5a2d7f66c1b0d3362791b48392c7a08f78479f5d8ab319a4d9118f", size 
= 140572, upload-time = "2026-01-07T20:30:49.431Z" },
+    { url = 
"https://files.pythonhosted.org/packages/14/79/012734f4e510b0a6beec2a3d5f437b3e8ef52174b1d38b1d5fdc542316d7/boto3-1.42.25-py3-none-any.whl";,
 hash = 
"sha256:8128bde4f9d5ffce129c76d1a2efe220e3af967a2ad30bc305ba088bbc96343d", size 
= 140575, upload-time = "2026-01-09T20:27:42.788Z" },
 ]
 
 [[package]]
 name = "botocore"
-version = "1.42.24"
+version = "1.42.25"
 source = { registry = "https://pypi.org/simple"; }
 dependencies = [
     { name = "jmespath" },
     { name = "python-dateutil" },
     { name = "urllib3" },
 ]
-sdist = { url = 
"https://files.pythonhosted.org/packages/12/d7/bb4a4e839b238ffb67b002d7326b328ebe5eb23ed5180f2ca10399a802de/botocore-1.42.24.tar.gz";,
 hash = 
"sha256:be8d1bea64fb91eea08254a1e5fea057e4428d08e61f4e11083a02cafc1f8cc6", size 
= 14878455, upload-time = "2026-01-07T20:30:40.379Z" }
+sdist = { url = 
"https://files.pythonhosted.org/packages/2c/b5/8f961c65898deb5417c9e9e908ea6c4d2fe8bb52ff04e552f679c88ed2ce/botocore-1.42.25.tar.gz";,
 hash = 
"sha256:7ae79d1f77d3771e83e4dd46bce43166a1ba85d58a49cffe4c4a721418616054", size 
= 14879737, upload-time = "2026-01-09T20:27:34.676Z" }
 wheels = [
-    { url = 
"https://files.pythonhosted.org/packages/ff/d4/f2655d777eed8b069ecab3761454cb83f830f8be8b5b0d292e4b3a980d00/botocore-1.42.24-py3-none-any.whl";,
 hash = 
"sha256:8fca9781d7c84f7ad070fceffaff7179c4aa7a5ffb27b43df9d1d957801e0a8d", size 
= 14551806, upload-time = "2026-01-07T20:30:38.103Z" },
+    { url = 
"https://files.pythonhosted.org/packages/1e/b0/61e3e61d437c8c73f0821ce8a8e2594edfc1f423e354c38fa56396a4e4ca/botocore-1.42.25-py3-none-any.whl";,
 hash = 
"sha256:470261966aab1d09a1cd4ba56810098834443602846559ba9504f6613dfa52dc", size 
= 14553881, upload-time = "2026-01-09T20:27:30.487Z" },
 ]
 
 [[package]]
@@ -602,11 +602,11 @@ wheels = [
 
 [[package]]
 name = "filelock"
-version = "3.20.2"
+version = "3.20.3"
 source = { registry = "https://pypi.org/simple"; }
-sdist = { url = 
"https://files.pythonhosted.org/packages/c1/e0/a75dbe4bca1e7d41307323dad5ea2efdd95408f74ab2de8bd7dba9b51a1a/filelock-3.20.2.tar.gz";,
 hash = 
"sha256:a2241ff4ddde2a7cebddf78e39832509cb045d18ec1a09d7248d6bfc6bfbbe64", size 
= 19510, upload-time = "2026-01-02T15:33:32.582Z" }
+sdist = { url = 
"https://files.pythonhosted.org/packages/1d/65/ce7f1b70157833bf3cb851b556a37d4547ceafc158aa9b34b36782f23696/filelock-3.20.3.tar.gz";,
 hash = 
"sha256:18c57ee915c7ec61cff0ecf7f0f869936c7c30191bb0cf406f1341778d0834e1", size 
= 19485, upload-time = "2026-01-09T17:55:05.421Z" }
 wheels = [
-    { url = 
"https://files.pythonhosted.org/packages/9a/30/ab407e2ec752aa541704ed8f93c11e2a5d92c168b8a755d818b74a3c5c2d/filelock-3.20.2-py3-none-any.whl";,
 hash = 
"sha256:fbba7237d6ea277175a32c54bb71ef814a8546d8601269e1bfc388de333974e8", size 
= 16697, upload-time = "2026-01-02T15:33:31.133Z" },
+    { url = 
"https://files.pythonhosted.org/packages/b5/36/7fb70f04bf00bc646cd5bb45aa9eddb15e19437a28b8fb2b4a5249fac770/filelock-3.20.3-py3-none-any.whl";,
 hash = 
"sha256:4b0dda527ee31078689fc205ec4f1c1bf7d56cf88b6dc9426c4f230e46c2dce1", size 
= 16701, upload-time = "2026-01-09T17:55:04.334Z" },
 ]
 
 [[package]]
@@ -660,7 +660,7 @@ wheels = [
 
 [[package]]
 name = "google-api-core"
-version = "2.28.1"
+version = "2.29.0"
 source = { registry = "https://pypi.org/simple"; }
 dependencies = [
     { name = "google-auth" },
@@ -669,9 +669,9 @@ dependencies = [
     { name = "protobuf" },
     { name = "requests" },
 ]
-sdist = { url = 
"https://files.pythonhosted.org/packages/61/da/83d7043169ac2c8c7469f0e375610d78ae2160134bf1b80634c482fa079c/google_api_core-2.28.1.tar.gz";,
 hash = 
"sha256:2b405df02d68e68ce0fbc138559e6036559e685159d148ae5861013dc201baf8", size 
= 176759, upload-time = "2025-10-28T21:34:51.529Z" }
+sdist = { url = 
"https://files.pythonhosted.org/packages/0d/10/05572d33273292bac49c2d1785925f7bc3ff2fe50e3044cf1062c1dde32e/google_api_core-2.29.0.tar.gz";,
 hash = 
"sha256:84181be0f8e6b04006df75ddfe728f24489f0af57c96a529ff7cf45bc28797f7", size 
= 177828, upload-time = "2026-01-08T22:21:39.269Z" }
 wheels = [
-    { url = 
"https://files.pythonhosted.org/packages/ed/d4/90197b416cb61cefd316964fd9e7bd8324bcbafabf40eef14a9f20b81974/google_api_core-2.28.1-py3-none-any.whl";,
 hash = 
"sha256:4021b0f8ceb77a6fb4de6fde4502cecab45062e66ff4f2895169e0b35bc9466c", size 
= 173706, upload-time = "2025-10-28T21:34:50.151Z" },
+    { url = 
"https://files.pythonhosted.org/packages/77/b6/85c4d21067220b9a78cfb81f516f9725ea6befc1544ec9bd2c1acd97c324/google_api_core-2.29.0-py3-none-any.whl";,
 hash = 
"sha256:d30bc60980daa36e314b5d5a3e5958b0200cb44ca8fa1be2b614e932b75a3ea9", size 
= 173906, upload-time = "2026-01-08T22:21:36.093Z" },
 ]
 
 [[package]]
@@ -1185,11 +1185,11 @@ wheels = [
 
 [[package]]
 name = "pathspec"
-version = "1.0.2"
+version = "1.0.3"
 source = { registry = "https://pypi.org/simple"; }
-sdist = { url = 
"https://files.pythonhosted.org/packages/41/b9/6eb731b52f132181a9144bbe77ff82117f6b2d2fbfba49aaab2c014c4760/pathspec-1.0.2.tar.gz";,
 hash = 
"sha256:fa32b1eb775ed9ba8d599b22c5f906dc098113989da2c00bf8b210078ca7fb92", size 
= 130502, upload-time = "2026-01-08T04:33:27.613Z" }
+sdist = { url = 
"https://files.pythonhosted.org/packages/4c/b2/bb8e495d5262bfec41ab5cb18f522f1012933347fb5d9e62452d446baca2/pathspec-1.0.3.tar.gz";,
 hash = 
"sha256:bac5cf97ae2c2876e2d25ebb15078eb04d76e4b98921ee31c6f85ade8b59444d", size 
= 130841, upload-time = "2026-01-09T15:46:46.009Z" }
 wheels = [
-    { url = 
"https://files.pythonhosted.org/packages/78/6b/14fc9049d78435fd29e82846c777bd7ed9c470013dc8d0260fff3ff1c11e/pathspec-1.0.2-py3-none-any.whl";,
 hash = 
"sha256:62f8558917908d237d399b9b338ef455a814801a4688bc41074b25feefd93472", size 
= 54844, upload-time = "2026-01-08T04:33:26.4Z" },
+    { url = 
"https://files.pythonhosted.org/packages/32/2b/121e912bd60eebd623f873fd090de0e84f322972ab25a7f9044c056804ed/pathspec-1.0.3-py3-none-any.whl";,
 hash = 
"sha256:e80767021c1cc524aa3fb14bedda9c34406591343cc42797b386ce7b9354fb6c", size 
= 55021, upload-time = "2026-01-09T15:46:44.652Z" },
 ]
 
 [[package]]
@@ -1269,17 +1269,17 @@ wheels = [
 
 [[package]]
 name = "protobuf"
-version = "6.33.2"
+version = "6.33.3"
 source = { registry = "https://pypi.org/simple"; }
-sdist = { url = 
"https://files.pythonhosted.org/packages/34/44/e49ecff446afeec9d1a66d6bbf9adc21e3c7cea7803a920ca3773379d4f6/protobuf-6.33.2.tar.gz";,
 hash = 
"sha256:56dc370c91fbb8ac85bc13582c9e373569668a290aa2e66a590c2a0d35ddb9e4", size 
= 444296, upload-time = "2025-12-06T00:17:53.311Z" }
+sdist = { url = 
"https://files.pythonhosted.org/packages/cc/5c/f912bdebdd4af4160da6a2c2b1b3aaa1b8c578d0243ba8f694f93c7095f0/protobuf-6.33.3.tar.gz";,
 hash = 
"sha256:c8794debeb402963fddff41a595e1f649bcd76616ba56c835645cab4539e810e", size 
= 444318, upload-time = "2026-01-09T23:05:02.79Z" }
 wheels = [
-    { url = 
"https://files.pythonhosted.org/packages/bc/91/1e3a34881a88697a7354ffd177e8746e97a722e5e8db101544b47e84afb1/protobuf-6.33.2-cp310-abi3-win32.whl";,
 hash = 
"sha256:87eb388bd2d0f78febd8f4c8779c79247b26a5befad525008e49a6955787ff3d", size 
= 425603, upload-time = "2025-12-06T00:17:41.114Z" },
-    { url = 
"https://files.pythonhosted.org/packages/64/20/4d50191997e917ae13ad0a235c8b42d8c1ab9c3e6fd455ca16d416944355/protobuf-6.33.2-cp310-abi3-win_amd64.whl";,
 hash = 
"sha256:fc2a0e8b05b180e5fc0dd1559fe8ebdae21a27e81ac77728fb6c42b12c7419b4", size 
= 436930, upload-time = "2025-12-06T00:17:43.278Z" },
-    { url = 
"https://files.pythonhosted.org/packages/b2/ca/7e485da88ba45c920fb3f50ae78de29ab925d9e54ef0de678306abfbb497/protobuf-6.33.2-cp39-abi3-macosx_10_9_universal2.whl";,
 hash = 
"sha256:d9b19771ca75935b3a4422957bc518b0cecb978b31d1dd12037b088f6bcc0e43", size 
= 427621, upload-time = "2025-12-06T00:17:44.445Z" },
-    { url = 
"https://files.pythonhosted.org/packages/7d/4f/f743761e41d3b2b2566748eb76bbff2b43e14d5fcab694f494a16458b05f/protobuf-6.33.2-cp39-abi3-manylinux2014_aarch64.whl";,
 hash = 
"sha256:b5d3b5625192214066d99b2b605f5783483575656784de223f00a8d00754fc0e", size 
= 324460, upload-time = "2025-12-06T00:17:45.678Z" },
-    { url = 
"https://files.pythonhosted.org/packages/b1/fa/26468d00a92824020f6f2090d827078c09c9c587e34cbfd2d0c7911221f8/protobuf-6.33.2-cp39-abi3-manylinux2014_s390x.whl";,
 hash = 
"sha256:8cd7640aee0b7828b6d03ae518b5b4806fdfc1afe8de82f79c3454f8aef29872", size 
= 339168, upload-time = "2025-12-06T00:17:46.813Z" },
-    { url = 
"https://files.pythonhosted.org/packages/56/13/333b8f421738f149d4fe5e49553bc2a2ab75235486259f689b4b91f96cec/protobuf-6.33.2-cp39-abi3-manylinux2014_x86_64.whl";,
 hash = 
"sha256:1f8017c48c07ec5859106533b682260ba3d7c5567b1ca1f24297ce03384d1b4f", size 
= 323270, upload-time = "2025-12-06T00:17:48.253Z" },
-    { url = 
"https://files.pythonhosted.org/packages/0e/15/4f02896cc3df04fc465010a4c6a0cd89810f54617a32a70ef531ed75d61c/protobuf-6.33.2-py3-none-any.whl";,
 hash = 
"sha256:7636aad9bb01768870266de5dc009de2d1b936771b38a793f73cbbf279c91c5c", size 
= 170501, upload-time = "2025-12-06T00:17:52.211Z" },
+    { url = 
"https://files.pythonhosted.org/packages/2a/56/2a41b9dcc3b92fa672bb89610608f4fd4f71bec075d314956710503b29f5/protobuf-6.33.3-cp310-abi3-win32.whl";,
 hash = 
"sha256:b4046f9f2ede57ad5b1d9917baafcbcad42f8151a73c755a1e2ec9557b0a764f", size 
= 425597, upload-time = "2026-01-09T23:04:50.11Z" },
+    { url = 
"https://files.pythonhosted.org/packages/23/07/1f1300fe7d204fd7aaabd9a0aafd54e6358de833b783f5bd161614e8e1e4/protobuf-6.33.3-cp310-abi3-win_amd64.whl";,
 hash = 
"sha256:1fd18f030ae9df97712fbbb0849b6e54c63e3edd9b88d8c3bb4771f84d8db7a4", size 
= 436945, upload-time = "2026-01-09T23:04:51.921Z" },
+    { url = 
"https://files.pythonhosted.org/packages/ec/5d/0ef28dded98973a26443a6a7bc49bff6206be8c57dc1d1e28e6c1147b879/protobuf-6.33.3-cp39-abi3-macosx_10_9_universal2.whl";,
 hash = 
"sha256:648b7b0144222eb06cf529a3d7b01333c5f30b4196773b682d388f04db373759", size 
= 427594, upload-time = "2026-01-09T23:04:53.358Z" },
+    { url = 
"https://files.pythonhosted.org/packages/c5/46/551c69b6ff1957bd703654342bfb776bb97db400bc80afc56fbb64e7c11d/protobuf-6.33.3-cp39-abi3-manylinux2014_aarch64.whl";,
 hash = 
"sha256:08a6ca12f60ba99097dd3625ef4275280f99c9037990e47ce9368826b159b890", size 
= 324469, upload-time = "2026-01-09T23:04:54.332Z" },
+    { url = 
"https://files.pythonhosted.org/packages/ca/6d/ade1cca06c64a421ee9745e082671465ead28164c809efaf2c15bc93f9a0/protobuf-6.33.3-cp39-abi3-manylinux2014_s390x.whl";,
 hash = 
"sha256:642fce7187526c98683c79a3ad68e5d646a5ef5eb004582fe123fc9a33a9456b", size 
= 339242, upload-time = "2026-01-09T23:04:55.347Z" },
+    { url = 
"https://files.pythonhosted.org/packages/38/8c/6522b8e543ece46f645911c3cebe361d8460134c0fee02ddcf70ebf32999/protobuf-6.33.3-cp39-abi3-manylinux2014_x86_64.whl";,
 hash = 
"sha256:6fa9b5f4baa12257542273e5e6f3c3d3867b30bc2770c14ad9ac8315264bf986", size 
= 323298, upload-time = "2026-01-09T23:04:56.866Z" },
+    { url = 
"https://files.pythonhosted.org/packages/a6/b9/067b8a843569d5605ba6f7c039b9319720a974f82216cd623e13186d3078/protobuf-6.33.3-py3-none-any.whl";,
 hash = 
"sha256:c2bf221076b0d463551efa2e1319f08d4cffcc5f0d864614ccd3d0e77a637794", size 
= 170518, upload-time = "2026-01-09T23:05:01.227Z" },
 ]
 
 [[package]]
@@ -2035,33 +2035,33 @@ wheels = [
 
 [[package]]
 name = "uv"
-version = "0.9.22"
-source = { registry = "https://pypi.org/simple"; }
-sdist = { url = 
"https://files.pythonhosted.org/packages/a4/e1/298ce517fa2dbe54e0ec8e126c22fe66adedc3aaaba3e5d3c056d62a4d64/uv-0.9.22.tar.gz";,
 hash = 
"sha256:41c73a4938818ede30e601cd0be87953e5c6a83dc4762e04e626f2eb9b240ebe", size 
= 3835119, upload-time = "2026-01-06T10:49:35.192Z" }
-wheels = [
-    { url = 
"https://files.pythonhosted.org/packages/53/09/37811eeabacd13c7fe9b6604d967e417124794d42b45d8469d2f421edc10/uv-0.9.22-py3-none-linux_armv6l.whl";,
 hash = 
"sha256:1f979c9d313b4616d9865859ef520bea5df0d4f15c57214589f5676fafa440c1", size 
= 21319484, upload-time = "2026-01-06T10:49:42.435Z" },
-    { url = 
"https://files.pythonhosted.org/packages/5e/68/bb76c97c284ce7fb8efa868994c2510588faa7075e60d8865d1373e54b7b/uv-0.9.22-py3-none-macosx_10_12_x86_64.whl";,
 hash = 
"sha256:b78f2605d65c4925631d891dec99b677b05f50c774dedc6ef8968039a5bcfdb0", size 
= 20446647, upload-time = "2026-01-06T10:49:13.942Z" },
-    { url = 
"https://files.pythonhosted.org/packages/af/49/7230b1d56aeaee0eefd346a70f582463f11fb7036d2d020bcf68053bd994/uv-0.9.22-py3-none-macosx_11_0_arm64.whl";,
 hash = 
"sha256:2a4155cf7d0231d0adae94257ee10d70c57c2f592207536ddd55d924590a8c15", size 
= 18967861, upload-time = "2026-01-06T10:49:26.026Z" },
-    { url = 
"https://files.pythonhosted.org/packages/70/cf/7b33e791c0cb63587bb1f03f067764fc681c0d1693a6b9a2670ef2f8a4e9/uv-0.9.22-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl";,
 hash = 
"sha256:0d8f007616cac5962620252b56a1d8224e9b2de566e78558efe04cc18526d507", size 
= 20807382, upload-time = "2026-01-06T10:49:28.37Z" },
-    { url = 
"https://files.pythonhosted.org/packages/e3/72/5486eab5344a30257544b42dd15e85d5de2ff7fab952a7a6e21cc946efae/uv-0.9.22-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl";,
 hash = 
"sha256:3b2bcce464186f8fafa3bf2aa5d82db4e3229366345399cc3f5bcafd616b8fe0", size 
= 20914561, upload-time = "2026-01-06T10:49:08.996Z" },
-    { url = 
"https://files.pythonhosted.org/packages/90/67/974adc8fd1baace83efaa2409dd19e60accfbca25c473ed9af8e8188484d/uv-0.9.22-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl";,
 hash = 
"sha256:3422b093b8e6e8de31261133b420c34dbef81f3fd1d82f787ac771b00b54adf8", size 
= 21996463, upload-time = "2026-01-06T10:49:16.587Z" },
-    { url = 
"https://files.pythonhosted.org/packages/99/7a/ef06158af9141e3b526bcb84ecd84fd1eed7eabf64bc830f302796af8646/uv-0.9.22-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl";,
 hash = 
"sha256:b807bafe6b65fc1fe9c65ffd0d4228db894872de96e7200c44943f24beb68931", size 
= 23547447, upload-time = "2026-01-06T10:49:44.84Z" },
-    { url = 
"https://files.pythonhosted.org/packages/e4/d7/b7f389311777403ea5230eb816b2aca159980cb8a3de5b9adb53cf19aa2e/uv-0.9.22-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl";,
 hash = 
"sha256:369b55341c6236f42d8fc335876308e5c57c921850975b3019cc9f7ebbe31567", size 
= 23159198, upload-time = "2026-01-06T10:49:39.938Z" },
-    { url = 
"https://files.pythonhosted.org/packages/e5/cc/64514ba1102f24cbcb6eed39b22fe6fd04297ce1068552ae3c5fae63725b/uv-0.9.22-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl";,
 hash = 
"sha256:0cdc653fb601aa7f273242823fa93024f5fd319c66cdf22f36d784858493564c", size 
= 22147053, upload-time = "2026-01-06T10:49:19.094Z" },
-    { url = 
"https://files.pythonhosted.org/packages/40/15/63fb7a6908db2f03716c4a50aea7e27a7440fe6a09854282c401139afaf7/uv-0.9.22-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";,
 hash = 
"sha256:1f45e1e0f26dd47fa01eb421c54cfd39de10fd52ac0a9d7ae45b92fce7d92b0b", size 
= 22225812, upload-time = "2026-01-06T10:49:48.109Z" },
-    { url = 
"https://files.pythonhosted.org/packages/ea/fe/def406c118ac215f4c392b077fb75303d125310cf178774a728e5759d9eb/uv-0.9.22-py3-none-manylinux_2_28_aarch64.whl";,
 hash = 
"sha256:8f73043ade8ff6335e19fe1f4e7425d5e28aec9cafd72d13d5b40bb1cbb85690", size 
= 20933749, upload-time = "2026-01-06T10:49:23.817Z" },
-    { url = 
"https://files.pythonhosted.org/packages/7f/45/27464cf8697f31858084c9c3f716b3c39d3f9a2a8e30c8a58dbd1a519e24/uv-0.9.22-py3-none-manylinux_2_31_riscv64.whl";,
 hash = 
"sha256:59c4f6b3659a68c26c50865432a7134386f607432160aad51e2247f862902697", size 
= 22080639, upload-time = "2026-01-06T10:49:21.521Z" },
-    { url = 
"https://files.pythonhosted.org/packages/1c/9a/7008f6aad89442ef00735b4f4c8d86eaaeaa7392f4dec814469d212eb462/uv-0.9.22-py3-none-musllinux_1_1_armv7l.whl";,
 hash = 
"sha256:77ec4c101d41d7738226466191a7d62f9fa4de06ea580e0801da2f5cd5fa08aa", size 
= 20894483, upload-time = "2026-01-06T10:49:37.201Z" },
-    { url = 
"https://files.pythonhosted.org/packages/fe/97/74b4c782d410e5f891446d1d27107b0312fae0e83c7be2edf6867c408f81/uv-0.9.22-py3-none-musllinux_1_1_i686.whl";,
 hash = 
"sha256:b1985559b38663642658069e8d09fa6c30ed1c67654b7e5765240d9e4e9cdd57", size 
= 21453244, upload-time = "2026-01-06T10:49:52.878Z" },
-    { url = 
"https://files.pythonhosted.org/packages/01/17/b3055b9f82f87a727ed5f745aadda9c363d2e2dd180f99350431e98c0ad4/uv-0.9.22-py3-none-musllinux_1_1_x86_64.whl";,
 hash = 
"sha256:e4b61a9c8b8dcbf64e642d2052342d36a46886b8bc3ccc407282962b970101af", size 
= 22446527, upload-time = "2026-01-06T10:49:50.59Z" },
-    { url = 
"https://files.pythonhosted.org/packages/2d/39/03ed466a5afb8bfc104096bb577b26ed7e413177fee699c756916ab35ef5/uv-0.9.22-py3-none-win32.whl";,
 hash = 
"sha256:d9d4be990bb92a68781f7c98d2321b528667b61d565c02ba978488c0210aa768", size 
= 20088632, upload-time = "2026-01-06T10:49:11.725Z" },
-    { url = 
"https://files.pythonhosted.org/packages/32/49/9e3e19ba756c4a5e6acb4ea74336d3035f7959254fbb05f5eb77bff067ed/uv-0.9.22-py3-none-win_amd64.whl";,
 hash = 
"sha256:9c238525272506845fe07c0b9088c5e33fcd738e1f49ef49dc3c8112096d2e3a", size 
= 22160389, upload-time = "2026-01-06T10:49:32.826Z" },
-    { url = 
"https://files.pythonhosted.org/packages/79/78/4a10b718290eb6b9ab436286420c430f9ad7afa0c1b03c43692d6289fe2f/uv-0.9.22-py3-none-win_arm64.whl";,
 hash = 
"sha256:012bdc5285a9cdb091ac514b7eb8a707e3b649af5355fe4afb4920bfe1958c00", size 
= 20556116, upload-time = "2026-01-06T10:49:30.493Z" },
+version = "0.9.24"
+source = { registry = "https://pypi.org/simple"; }
+sdist = { url = 
"https://files.pythonhosted.org/packages/0b/7f/6692596de7775b3059a55539aed2eec16a0642a2d6d3510baa5878287ce4/uv-0.9.24.tar.gz";,
 hash = 
"sha256:d59d31c25fc530c68db9164174efac511a25fc882cec49cd48f75a18e7ebd6d5", size 
= 3852673, upload-time = "2026-01-09T22:34:31.635Z" }
+wheels = [
+    { url = 
"https://files.pythonhosted.org/packages/b8/51/10bb9541c40a5b4672527c357997a30fdf38b75e7bbaad0c37ed70889efa/uv-0.9.24-py3-none-linux_armv6l.whl";,
 hash = 
"sha256:75a000f529ec92235b10fb5e16ca41f23f46c643308fd6c5b0d7b73ca056c5b9", size 
= 21395664, upload-time = "2026-01-09T22:34:05.887Z" },
+    { url = 
"https://files.pythonhosted.org/packages/ec/dd/d7df524cb764ebc652e0c8bf9abe55fc34391adc2e4ab1d47375222b38a9/uv-0.9.24-py3-none-macosx_10_12_x86_64.whl";,
 hash = 
"sha256:207c8a2d4c4d55589feb63b4be74f6ff6ab92fa81b14a6515007ccec5a868ae0", size 
= 20547988, upload-time = "2026-01-09T22:34:16.21Z" },
+    { url = 
"https://files.pythonhosted.org/packages/49/e4/7ca5e7eaed4b2b9d407aa5aeeb8f71cace7db77f30a63139bbbfdfe4770c/uv-0.9.24-py3-none-macosx_11_0_arm64.whl";,
 hash = 
"sha256:44c0b8a78724e4cfa8e9c0266023c70fc792d0b39a5da17f5f847af2b530796b", size 
= 19033208, upload-time = "2026-01-09T22:33:50.91Z" },
+    { url = 
"https://files.pythonhosted.org/packages/27/05/b7bab99541056537747bfdc55fdc97a4ba998e2b53cf855411ef176c412b/uv-0.9.24-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl";,
 hash = 
"sha256:841ede01d6dcf1676a21dce05f3647ba171c1d92768a03e8b8b6b7354b34a6d2", size 
= 20872212, upload-time = "2026-01-09T22:33:58.007Z" },
+    { url = 
"https://files.pythonhosted.org/packages/d3/93/3a69cf481175766ee6018afb281666de12ccc04367d20a41dc070be8b422/uv-0.9.24-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl";,
 hash = 
"sha256:69531d9a8772afb2dff68fef2469f666e4f8a0132b2109e36541c423415835da", size 
= 21017966, upload-time = "2026-01-09T22:34:29.354Z" },
+    { url = 
"https://files.pythonhosted.org/packages/17/40/7aec2d428e57a3ec992efc49bbc71e4a0ceece5a726751c661ddc3f41315/uv-0.9.24-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl";,
 hash = 
"sha256:6720c9939cca7daff3cccc35dd896bbe139d7d463c62cba8dbbc474ff8eb93d1", size 
= 21943358, upload-time = "2026-01-09T22:34:08.63Z" },
+    { url = 
"https://files.pythonhosted.org/packages/c8/f4/2aa5b275aa8e5edb659036e94bae13ae294377384cf2a93a8d742a38050f/uv-0.9.24-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl";,
 hash = 
"sha256:d7d1333d9c21088c89cb284ef29fdf48dc2015fe993174a823a3e7c991db90f9", size 
= 23672949, upload-time = "2026-01-09T22:34:03.113Z" },
+    { url = 
"https://files.pythonhosted.org/packages/8e/24/2589bed4b39394c799472f841e0580318a8b7e69ef103a0ab50cf1c39dff/uv-0.9.24-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl";,
 hash = 
"sha256:3b610d89d6025000d08cd9bd458c6e264003a0ecfdaa8e4eba28938130cd1837", size 
= 23270210, upload-time = "2026-01-09T22:34:13.94Z" },
+    { url = 
"https://files.pythonhosted.org/packages/80/3a/034494492a1ad1f95371c6fd735e4b7d180b8c1712c88b0f32a34d6352fd/uv-0.9.24-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl";,
 hash = 
"sha256:38c59e18fe5fa42f7baeb4f08c94914cee6d87ff8faa6fc95c994dbc0de26c90", size 
= 22282247, upload-time = "2026-01-09T22:33:53.362Z" },
+    { url = 
"https://files.pythonhosted.org/packages/be/0e/d8ab2c4fa6c9410a8a37fa6608d460b0126cee2efed9eecf516cdec72a1a/uv-0.9.24-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";,
 hash = 
"sha256:009cc82cdfc48add6ec13a0c4ffbb788ae2cab53573b4218069ca626721a404b", size 
= 22348801, upload-time = "2026-01-09T22:34:00.46Z" },
+    { url = 
"https://files.pythonhosted.org/packages/50/fa/7217764e4936d6fda1944d956452bf94f790ae8a02cb3e5aa496d23fcb25/uv-0.9.24-py3-none-manylinux_2_28_aarch64.whl";,
 hash = 
"sha256:1914d33e526167dc202ec4a59119c68467b31f7c71dcf8b1077571d091ca3e7c", size 
= 21000825, upload-time = "2026-01-09T22:34:21.811Z" },
+    { url = 
"https://files.pythonhosted.org/packages/94/8f/533db58a36895142b0c11eedf8bfe11c4724fb37deaa417bfb0c689d40b8/uv-0.9.24-py3-none-manylinux_2_31_riscv64.whl";,
 hash = 
"sha256:aafe7dd9b633672054cf27f1a8e4127506324631f1af5edd051728f4f8085351", size 
= 22149066, upload-time = "2026-01-09T22:33:45.722Z" },
+    { url = 
"https://files.pythonhosted.org/packages/cf/c7/e6eccd96341a548f0405bffdf55e7f30b5c0757cd1b8f7578e0972a66002/uv-0.9.24-py3-none-musllinux_1_1_armv7l.whl";,
 hash = 
"sha256:63a0a46693098cf8446e41bd5d9ce7d3bc9b775a63fe0c8405ab6ee328424d46", size 
= 20993489, upload-time = "2026-01-09T22:34:27.007Z" },
+    { url = 
"https://files.pythonhosted.org/packages/46/07/32d852d2d40c003b52601c44202c9d9e655c485fae5d84e42f326814b0be/uv-0.9.24-py3-none-musllinux_1_1_i686.whl";,
 hash = 
"sha256:15d3955bfb03a7b78aaf5afb639cedefdf0fc35ff844c92e3fe6e8700b94b84f", size 
= 21400775, upload-time = "2026-01-09T22:34:24.278Z" },
+    { url = 
"https://files.pythonhosted.org/packages/b0/58/f8e94226126011ba2e2e9d59c6190dc7fe9e61fa7ef4ca720d7226c1482b/uv-0.9.24-py3-none-musllinux_1_1_x86_64.whl";,
 hash = 
"sha256:488a07e59fb417bf86de5630197223b7a0223229e626afc124c26827db78cff8", size 
= 22554194, upload-time = "2026-01-09T22:34:18.504Z" },
+    { url = 
"https://files.pythonhosted.org/packages/da/8e/b540c304039a6561ba8e9a673009cfe1451f989d2269fe40690901ddb233/uv-0.9.24-py3-none-win32.whl";,
 hash = 
"sha256:68a3186074c03876ee06b68730d5ff69a430296760d917ebbbb8e3fb54fb4091", size 
= 20203184, upload-time = "2026-01-09T22:34:11.02Z" },
+    { url = 
"https://files.pythonhosted.org/packages/16/59/dba7c5feec1f694183578435eaae0d759b8c459c5e4f91237a166841a116/uv-0.9.24-py3-none-win_amd64.whl";,
 hash = 
"sha256:8cd626306b415491f839b1a9100da6795c82c44d4cf278dd7ace7a774af89df4", size 
= 22294050, upload-time = "2026-01-09T22:33:48.228Z" },
+    { url = 
"https://files.pythonhosted.org/packages/d7/ef/e58fb288bafb5a8b5d4994e73fa6e062e408680e5a20d0427d5f4f66d8b1/uv-0.9.24-py3-none-win_arm64.whl";,
 hash = 
"sha256:8d3c0fec7aa17f936a5b258816e856647b21f978a81bcfb2dc8caf2892a4965e", size 
= 20620004, upload-time = "2026-01-09T22:33:55.62Z" },
 ]
 
 [[package]]
 name = "virtualenv"
-version = "20.36.0"
+version = "20.36.1"
 source = { registry = "https://pypi.org/simple"; }
 dependencies = [
     { name = "distlib" },
@@ -2069,9 +2069,9 @@ dependencies = [
     { name = "platformdirs" },
     { name = "typing-extensions", marker = "python_full_version < '3.11'" },
 ]
-sdist = { url = 
"https://files.pythonhosted.org/packages/78/49/87e23d8f742f10f965bce5d6b285fc88a4f436b11daf6b6225d4d66f8492/virtualenv-20.36.0.tar.gz";,
 hash = 
"sha256:a3601f540b515a7983508113f14e78993841adc3d83710fa70f0ac50f43b23ed", size 
= 6032237, upload-time = "2026-01-07T17:20:04.975Z" }
+sdist = { url = 
"https://files.pythonhosted.org/packages/aa/a3/4d310fa5f00863544e1d0f4de93bddec248499ccf97d4791bc3122c9d4f3/virtualenv-20.36.1.tar.gz";,
 hash = 
"sha256:8befb5c81842c641f8ee658481e42641c68b5eab3521d8e092d18320902466ba", size 
= 6032239, upload-time = "2026-01-09T18:21:01.296Z" }
 wheels = [
-    { url = 
"https://files.pythonhosted.org/packages/eb/6a/0af36875e0023a1f2d0b66b4051721fc26740e947696922df1665b75e5d3/virtualenv-20.36.0-py3-none-any.whl";,
 hash = 
"sha256:e7ded577f3af534fd0886d4ca03277f5542053bedb98a70a989d3c22cfa5c9ac", size 
= 6008261, upload-time = "2026-01-07T17:20:02.87Z" },
+    { url = 
"https://files.pythonhosted.org/packages/6a/2a/dc2228b2888f51192c7dc766106cd475f1b768c10caaf9727659726f7391/virtualenv-20.36.1-py3-none-any.whl";,
 hash = 
"sha256:575a8d6b124ef88f6f51d56d656132389f961062a9177016a50e4f507bbcc19f", size 
= 6008258, upload-time = "2026-01-09T18:20:59.425Z" },
 ]
 
 [[package]]
diff --git a/pyproject.toml b/pyproject.toml
index 39f12133a17..63647d70802 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -533,7 +533,7 @@ packages = []
     "apache-airflow-providers-amazon[s3fs]",
 ]
 "uv" = [
-    "uv>=0.9.22",
+    "uv>=0.9.24",
 ]
 
 
diff --git a/scripts/tools/setup_breeze b/scripts/tools/setup_breeze
index de1431eed86..a9cf5806006 100755
--- a/scripts/tools/setup_breeze
+++ b/scripts/tools/setup_breeze
@@ -27,7 +27,7 @@ COLOR_YELLOW=$'\e[33m'
 COLOR_BLUE=$'\e[34m'
 COLOR_RESET=$'\e[0m'
 
-UV_VERSION="0.9.22"
+UV_VERSION="0.9.24"
 
 function manual_instructions() {
     echo


Reply via email to