Goal
Evaluate Click 8.5 promptly and widen the supported dependency window when the complete lifecycle contract passes.
Background
Click 8.5.0 was released on 2026-08-24. The current package metadata requires click>=8.1,<8.5:
|
dependencies = [ |
|
"click>=8.1,<8.5", |
|
] |
, so base-cli cannot currently coexist with consumers that have adopted the latest Click feature line.
Click 8.5 changes PowerShell completion, Windows ANSI behavior, argument help rendering, prompts, and other surfaces that base-cli wraps or tests. The dependency policy correctly requires a matrix lane and compatibility review before widening; this issue tracks that evidence rather than bypassing the upper bound.
Scope
- Add Click 8.5 to the dependency compatibility matrix on Python 3.10 and 3.14 and relevant OS lanes.
- Exercise native App, attached nested/lazy Click trees, testing.invoke, help/completion, lifecycle parameter sources, JSON detection, Rich/output, interrupts, and Windows terminal behavior.
- Review public typing changes under strict mypy.
- Widen the package window only after the contract passes.
- Document or upstream any blocker.
Acceptance Criteria
- A dedicated Click 8.5 lane runs on supported Python/OS boundaries.
- Native and attached command trees preserve option parsing, help, stdout/stderr, exit, signal, and lifecycle semantics.
- PowerShell completion and Windows ANSI behavior are tested where supported.
- Strict library and typed-consumer mypy checks pass.
- Installed-wheel and reference-consumer tests pass with Click 8.5.
- If compatible, metadata changes to the reviewed next upper bound and dependency docs/dashboard agree.
- If incompatible, the issue records the precise failing contract, upstream status, and user-facing resolver guidance.
- Existing Click 8.1-8.4 support remains green.
Validation
Run the complete dependency matrix, OS tests, package smoke, examples, and reference consumers from a clean environment.
Non-Goals
- Do not remove the upper bound without evidence.
- Do not drop older supported Click lines as part of this work.
Project Fields
- Status: Backlog
- Priority: P1
- Area: Python
- Initiative: v1.0 Readiness
- Size: M
Ownership
Preliminary Review Evidence
On 2026-08-30, the complete local source test suite passed in a disposable environment with click==8.5.0 and typer==0.27.2. This is encouraging but does not satisfy the issue: the declared dependency window still rejects Click 8.5, and the OS matrix, installed-wheel, strict typing, completion, and reference-consumer gates still need reviewed hosted evidence.
Goal
Evaluate Click 8.5 promptly and widen the supported dependency window when the complete lifecycle contract passes.
Background
Click 8.5.0 was released on 2026-08-24. The current package metadata requires
click>=8.1,<8.5:base-cli/pyproject.toml
Lines 49 to 51 in 8a93d22
Click 8.5 changes PowerShell completion, Windows ANSI behavior, argument help rendering, prompts, and other surfaces that base-cli wraps or tests. The dependency policy correctly requires a matrix lane and compatibility review before widening; this issue tracks that evidence rather than bypassing the upper bound.
Scope
Acceptance Criteria
Validation
Run the complete dependency matrix, OS tests, package smoke, examples, and reference consumers from a clean environment.
Non-Goals
Project Fields
Ownership
Preliminary Review Evidence
On 2026-08-30, the complete local source test suite passed in a disposable environment with
click==8.5.0andtyper==0.27.2. This is encouraging but does not satisfy the issue: the declared dependency window still rejects Click 8.5, and the OS matrix, installed-wheel, strict typing, completion, and reference-consumer gates still need reviewed hosted evidence.