Skip to content

bug: align supported Typer and Click combinations with dependency constraints #360

Description

@codeforester

Problem

The advertised minimum Typer version can be installed with an allowed Click version even though basic invocation and help fail. CI only tests newer Typer releases, leaving the published lower-bound promise unverified.

Verified evidence

Reviewed on 2026-09-17 at 2d67cd24e8d704386f2be7d3a41addc06fb81e17 (local checkout matched GitHub main). Reproduced in isolated macOS environments with Python 3.14.6. Framework default probe environment: Click 8.5.0 and Typer 0.27.2. Demo probes used released base-cli 0.4.3 unless noted.

Installed current framework source with Typer 0.12.0 and Click 8.5.0; dependency resolution succeeds. A one-command attached Typer app with name: str = typer.Option("Ada", "--name") behaves as follows:

--name Ada: exit 2
--help: exit 1, TypeError: Parameter.make_metavar() missing 1 required positional argument: 'ctx'

Control: the exact same source/probe with Typer 0.12.0 and Click 8.1.8 passes both invocations. pyproject permits typer>=0.12,<0.28 and click>=8.1,<8.6; API docs call the lower bounds supported. The Typer CI matrix starts at 0.25.1.

Sources:

Acceptance criteria

  • Define the actual supported Typer/Click pairings and align install constraints or the minimum Typer version with them.
  • Run minimum and representative boundary combinations against real help, parameter parsing, invocation, errors and lifecycle helpers.
  • Keep documentation, adapter error text, package metadata and compatibility dashboard synchronized; document any raised lower bound.
  • Coordinate the demo optional dependency range so it does not continue advertising a rejected combination.

Related work

Distinct from the public helper failure on current Typer 0.27.2; this is a resolver/support-window defect.

Project fields

  • Status: Backlog
  • Priority: P2
  • Area: Packaging
  • Initiative: v1.0 Readiness
  • Size: M
  • Assignee: @codeforester
  • Milestone: v1.0.0
  • Target date: unscheduled

Activity

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

Metadata

Metadata

Assignees

Labels

bugSomething is not working

Type

Projects

  • Status
    Backlog

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions