Skip to content

v8.2.0

Choose a tag to compare

@kdeldycke kdeldycke released this 01 Jul 22:59
Immutable release. Only release title and notes can be modified.

Note

8.2.0 is available on 🐍 PyPI and 🐙 GitHub.

  • Add a --export-config FORMAT option to every @command and @group: it renders the resolved configuration on <stdout> in any writable format (toml, yaml, json, json5, jsonc, hjson, xml), then exits. Adds ExportConfigOption, @export_config_option and SERIALIZABLE_FORMATS to the public API.
  • Add --theme=auto: it selects the dark or light palette from the terminal background, detected from CLITHEME, COLORFGBG or a live OSC 11 query; the default stays dark. Adds resolve_background and query_osc_background to click_extra.color, resolve_auto_theme and AUTO_THEME to click_extra.theme.
  • Add run_lanes(func, lanes) and resolve_jobs(ctx, count) to click_extra.execution: run each lane serially while distinct lanes run concurrently, sized by --jobs; expose the worker-count policy shared with run_jobs. A serial_at_debug keyword collapses both fan-outs to sequential at DEBUG verbosity.
  • Add the always-on matrix Sphinx directive, rendering a package's release compatibility matrix from its git tags, for the Python interpreter ({matrix} python) or a dependency ({matrix} <distribution>) axis; a comment-marker form renders the embedded table on GitHub too.
  • Add the click-extra refresh-directives command (wrapping click_extra.sphinx.matrix.update_matrix_blocks) to regenerate the tables embedded in {matrix} directive blocks and <!-- matrix … --> marker regions; its --check mode flags stale tables in CI.
  • Publish format_cli_prompt in click_extra.testing (was the private _format_cli_prompt): render a themed, copy-pasteable prompt simulating a CLI invocation.
  • Fix Carapace dynamic completion: an option's value or a subcommand argument with a custom shell_complete now resolves through the generated spec, instead of returning empty or root-level candidates.
  • Fix EnumChoice shell completion on Click 8.4.0: completion candidates are now normalized, so they match the option's accepted values instead of appearing as raw uppercase enum names.
  • Fix run_jobs blocking on Ctrl+C during parallel execution: an interrupt now drops queued items and returns immediately, instead of waiting for every in-flight task to finish.
  • Add a documentation page on Typer compatibility, explaining why click-extra cannot be combined with Typer and how to get the same options natively.

Full changelog: v8.1.4...v8.2.0


🛡️ VirusTotal scans

Binary Detections Analysis
click-extra-8.2.0-linux-arm64.bin 1 / 61 View scan
click-extra-8.2.0-linux-x64.bin 1 / 62 View scan
click-extra-8.2.0-macos-arm64.bin 0 / 60 View scan
click-extra-8.2.0-macos-x64.bin 1 / 62 View scan
click-extra-8.2.0-windows-arm64.exe 2 / 68 View scan
click-extra-8.2.0-windows-x64.exe 17 / 67 View scan