Click is a Python package for creating command line interfaces in a composable way with as little code as necessary. It supports features like arbitrary nesting of commands, automatic help page generation, and lazy loading of subcommands at runtime. It is useful for building configurable CLI tools quickly while encouraging a consistent CLI API.
Project status
- Actively maintained: GitHub shows the upstream has recent activity (last push 2026-05-27), with multiple Click 8.x updates in 2026 (8.4.1, 8.4.0, 8.3.3, 8.3.2).
- Apparent cadence: Updates are fairly frequent, with gaps of roughly 1 to 4 weeks between recent 8.3.x and 8.4.x versions (for example, 8.4.1 on 2026-05-22 and 8.4.0 on 2026-05-17).
AI summary generated 5 days ago
Recent updates
8.4.1
1 week agoClick 8.4.1 is a patch release focused on bug fixes for callbacks and type conversion, shell completion behavior (especially on Windows), and output handling in echo and pager-related helpers. The release notes list targeted fixes, but the code diff also contains a few additional behavioral changes not explicitly called out.
8.4.0
2 weeks agoClick 8.4.0 is primarily a feature and typing-focused release, with extensive internal refactors around parameter typing, help formatting, and pager handling. The release also includes user-facing behavioral fixes for command suggestions, prompt/pager behavior, and option parsing edge cases.
BreakingFeatures8.3.3
1 month agoClick 8.3.3 is presented as a bug fix release with no expected behavior changes beyond the listed fixes. The diff shows changes concentrated around pager/editor subprocess invocation, default map sentinel handling, prompt show_default rendering, and improved CliRunner isolation behavior.
8.3.2
2 months agoClick 8.3.2 is a bug fix release focused on option default and stream lifecycle edge cases. The release notes describe changes to how default_map and flag_value interactions are handled, plus test coverage improvements for CliRunner stream behavior.
8.3.1
6 months agoClick 8.3.1 is a maintenance release that primarily fixes bugs, especially around pager behavior and handling of the Sentinel.UNSET value. It also adjusts prompt and confirm rendering when prompt_suffix is empty and includes internal logic changes so UNSET behaves more like a missing value.
8.3.0
8 months agoClick 8.3.0 is a feature release focused on improved flag option handling consistency, plus several completion and CLI runner fixes (Fish autocompletion, argument defaults, EOF handling). It also includes internal refactors to make default and “unset” handling more consistent, and adjusts resource exception forwarding during context teardown.
Features8.2.2
10 months agoClick 8.2.2 is presented as a bug fix release with no intended behavior changes beyond the documented flag default and environment variable reconciliation, help text rendering, completion fixes, and a testing race condition. The code diff confirms most of those items, but it also contains a couple of behavioral changes that are not explicitly called out in the release notes.
8.2.1
5/20/2025Click 8.2.1 is a patch release focused on bug fixes only. The documented changes address flag value handling for typed flag options, nested shell completion, and improvements to CliRunner output flushing and stdin EOF handling.
8.2.0
5/10/2025Click 8.2.0 is a feature release that drops support for older Python versions and adds several CLI behavior improvements alongside broader deprecations of legacy APIs (BaseCommand, MultiCommand, and the current parser layer). It also modernizes packaging metadata (pyproject.toml, flit_core) and updates multiple user-facing behaviors such as CliRunner stderr handling and Context cleanup on exit.
BreakingFeatures8.1.8
12/21/2024Click 8.1.8 is a fix release focused on bug fixes, mostly around help output, color handling, and platform quirks (notably Windows). The code changes also include internal refactors for pager/editor command detection and color propagation when errors are rendered.
Features8.1.7
8/17/2023Release 8.1.7 is presented as a small fix release on the 8.1.x branch. The code changes are focused on shell completion correctness, particularly Windows/ANSI handling and Bash and Fish completion script behavior, plus some internal tooling and docs updates.
8.1.6
7/18/2023Release 8.1.6 is a small fix release focused on improving type hint behavior for Click decorators, especially around type checking tools like mypy and pyright. It updates the typing surface for @click.group() and adds a targeted typing test.