Skip to content

v1.9.0dev0

Pre-release
Pre-release

Choose a tag to compare

@dwreeves dwreeves released this 14 Aug 18:03
· 300 commits to main since this release

Version 1.9.0dev0 (WIP)

Warning

Version 1.9.0 deprecates support for a lot of old versions of things:

  • Python 3.7 support is removed. The minimum supported Python version is 3.8.
  • Click 7 support is removed. The minimum supported Click version is 8.0.
  • Rich 10 and 11 support is removed. The minimum supported Rich version is 12.

Big changes:

  • RichPanels API introduced. This replaces the "groups" feature going forward (although groups will continue to be supported).
    • @click.option_panel()
    • @click.command_panel()
  • help= is now a valid kwarg for @click.argument() decorator. See docs for more information.

Small changes:

  • "Deprecated" text properly handled and stylized in all places.
  • Improved rich-click CLI patching.

Backend (mostly invisible) changes:

  • Overhauled our test suite to use inline-snapshot! 😁
  • Improved test coverage and CI.
  • typing_extensions now only required for < Python 3.11.
  • RichHelpFormatter now defers printing by default if a user does not specify a Console. [#231] (With contributions from @ofek)
    • This more closely aligns the RichHelpFormatter with how base Click works.
  • Significant refactors to help text rendering.
  • Reintroduced deprecation warnings for a couple of features deprecated in 1.8.
  • There was an issue where the rich.highlighter module could load during CLI execution. We now assert in unit-tests that no rich modules are loaded during code execution, so going forward, rich imports should no longer ever be a side-effect of CLI execution.