Back to Explore

pallets/click

GitHub
4 updates · last 90 days1 watchersOpen source

Last release: 1 week ago

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

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • 8.4.1

    1 week ago

    Click 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 ago

    Click 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.

    BreakingFeatures
  • 8.3.3

    1 month ago

    Click 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 ago

    Click 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 ago

    Click 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 ago

    Click 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.

    Features
  • 8.2.2

    10 months ago

    Click 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/2025

    Click 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/2025

    Click 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.

    BreakingFeatures
  • 8.1.8

    12/21/2024

    Click 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.

    Features
  • 8.1.7

    8/17/2023

    Release 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/2023

    Release 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.