Skip to content

fix(cli): support old and modern Typer with a compatibility layer - #581

Open
cdeil wants to merge 1 commit into
roboflow:mainfrom
cdeil:typer-compat-layer
Open

cdeil wants to merge 1 commit into
roboflow:mainfrom
cdeil:typer-compat-layer

Conversation

@cdeil

@cdeil cdeil commented Nov 7, 2026

Copy link
Copy Markdown
Contributor

Typer 0.26 vendored Click, breaking the CLI’s external Click exception checks. This approach keeps the current Typer minimum and lifts the upper bound using a small compatibility layer that selects the active exception classes. The newer path uses Typer’s private exception module.

Alternative: #580 raises the minimum to use Typer’s public API. These are two proposals for comparison; only one should be merged.

Tested: 615 CLI cases across Typer 0.25.1/0.26/0.28, full old/latest suites, slim checks, Ruff and mypy. Six pre-existing stderr-capture failures at Typer 0.12 remain unchanged. Full offline runs mock one existing training-test export preflight. AI-assisted; independently reviewed with Claude Opus 5.5.

@socket-security

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedpypi/​typer@​0.25.1 ⏵ 0.28.097 -2100100100100

View full report

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant