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

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


The following commit(s) were added to refs/heads/v3-2-test by this push:
     new bd1769af72b [v3-2-test] Replace deprecated typer-slim with typer in 
devel-common (#67034) (#67037)
bd1769af72b is described below

commit bd1769af72b274778e26d740a54969996b894de9
Author: github-actions[bot] 
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Mon May 18 15:05:26 2026 +0530

    [v3-2-test] Replace deprecated typer-slim with typer in devel-common 
(#67034) (#67037)
    
    devel-common previously pinned `typer-slim>=0.15.1`. Under
    `uv --resolution lowest-direct`, this resolved to typer-slim==0.15.1 — the
    OLD standalone slim package that ships its own `typer/` module. 
`fastapi-cli`
    transitively pulled typer==0.24.2, so both packages wrote to the same
    `typer/` site-packages directory and produced a corrupted install. `import
    fastapi_cli.cli` then raised ImportError, and the 23
    `mock.patch("fastapi_cli.cli._run")` calls in
    `airflow-core/tests/unit/cli/commands/test_api_server_command.py` surfaced
    this as `AttributeError: module 'fastapi_cli' has no attribute 'cli'` from
    `pkgutil.resolve_name`.
    
    typer-slim 0.22.0+ is a deprecated meta-package that just depends on typer,
    and upstream explicitly warns against installing it. Switch to typer
    directly (>=0.22.0) so nothing in the dep graph can reintroduce a pre-0.22
    slim typer-slim, and the full typer cleanly owns the `typer/` namespace.
    (cherry picked from commit 4e82672b4dae5d62c2e2c82f613a8676b2f8be4c)
    
    Co-authored-by: Jarek Potiuk <[email protected]>
---
 devel-common/pyproject.toml |  2 +-
 uv.lock                     | 16 ++--------------
 2 files changed, 3 insertions(+), 15 deletions(-)

diff --git a/devel-common/pyproject.toml b/devel-common/pyproject.toml
index 4d8715a381f..56d51fc7236 100644
--- a/devel-common/pyproject.toml
+++ b/devel-common/pyproject.toml
@@ -37,7 +37,7 @@ dependencies = [
     "rich>=13.6.0",
     "ruff==0.15.12",
     "semver>=3.0.2",
-    "typer-slim>=0.15.1",
+    "typer>=0.22.0",
     "time-machine[dateutil]>=3.0.0",
     "wheel>=0.42.0",
     "yamllint>=1.33.0",
diff --git a/uv.lock b/uv.lock
index 1c88f63598a..c34ddd6cc71 100644
--- a/uv.lock
+++ b/uv.lock
@@ -2159,7 +2159,7 @@ dependencies = [
     { name = "sqlalchemy", extra = ["asyncio"] },
     { name = "sqlalchemy-utils" },
     { name = "time-machine", extra = ["dateutil"] },
-    { name = "typer-slim" },
+    { name = "typer" },
     { name = "types-aiofiles" },
     { name = "types-cachetools" },
     { name = "types-certifi" },
@@ -2521,7 +2521,7 @@ requires-dist = [
     { name = "time-machine", extras = ["dateutil"], specifier = ">=3.0.0" },
     { name = "towncrier", marker = "extra == 'devscripts'", specifier = 
">=23.11.0" },
     { name = "twine", marker = "extra == 'devscripts'", specifier = ">=4.0.2" 
},
-    { name = "typer-slim", specifier = ">=0.15.1" },
+    { name = "typer", specifier = ">=0.22.0" },
     { name = "types-aiofiles", marker = "extra == 'mypy'", specifier = 
">=23.2.0.20240403" },
     { name = "types-cachetools", marker = "extra == 'mypy'", specifier = 
">=6.2.0.20251022" },
     { name = "types-certifi", marker = "extra == 'mypy'", specifier = 
">=2021.10.8.3" },
@@ -21639,18 +21639,6 @@ wheels = [
     { url = 
"https://files.pythonhosted.org/packages/3f/f9/2b3ff4e56e5fa7debfaf9eb135d0da96f3e9a1d5b27222223c7296336e5f/typer-0.25.1-py3-none-any.whl";,
 hash = 
"sha256:75caa44ed46a03fb2dab8808753ffacdbfea88495e74c85a28c5eefcf5f39c89", size 
= 58409, upload-time = "2026-04-30T19:32:18.271Z" },
 ]
 
-[[package]]
-name = "typer-slim"
-version = "0.24.0"
-source = { registry = "https://pypi.org/simple"; }
-dependencies = [
-    { name = "typer" },
-]
-sdist = { url = 
"https://files.pythonhosted.org/packages/a7/a7/e6aecc4b4eb59598829a3b5076a93aff291b4fdaa2ded25efc4e1f4d219c/typer_slim-0.24.0.tar.gz";,
 hash = 
"sha256:f0ed36127183f52ae6ced2ecb2521789995992c521a46083bfcdbb652d22ad34", size 
= 4776, upload-time = "2026-02-16T22:08:51.2Z" }
-wheels = [
-    { url = 
"https://files.pythonhosted.org/packages/a7/24/5480c20380dfd18cf33d14784096dca45a24eae6102e91d49a718d3b6855/typer_slim-0.24.0-py3-none-any.whl";,
 hash = 
"sha256:d5d7ee1ee2834d5020c7c616ed5e0d0f29b9a4b1dd283bdebae198ec09778d0e", size 
= 3394, upload-time = "2026-02-16T22:08:49.92Z" },
-]
-
 [[package]]
 name = "types-aiofiles"
 version = "25.1.0.20260508"

Reply via email to