Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2.0 roadmap #186

Open
dwreeves opened this issue Apr 22, 2024 · 0 comments
Open

2.0 roadmap #186

dwreeves opened this issue Apr 22, 2024 · 0 comments
Labels
WIP Work in progress

Comments

@dwreeves
Copy link
Collaborator

2.0 will likely be what comes after 1.9.

Objective for 2.0 is to release in mid 2025. That's a very, very long time away!

This is a living document. Nothing here is guaranteed, everything is subject to change.

Deprecations

Hard + immediate deprecations

These things will not be supported going into 2.0.0.

These are easy enough to enforce at the package install level, so there is no real risk of users getting hurt by this.

  • Click 7 support will be dropped
  • Python 3.7 support will be dropped

Hard + delayed deprecations

These things will be available in 2.0.0, and phased out entirely into 2.1.0. Using these features will trigger a DeprecationWarning.

Logic: Many of these things are already deprecated, and switching off them is relatively easy for users. These are, however, breaking API changes, and we want to support them as long as possible.

  • rich_click.rich_group (use rich_click.rich_command instead)
  • use_markdown=True and use_rich_markup=True (use text_markup=... instead)
  • get_module_help_configuration()
  • OptionHighlighter
  • rich_click.cli.patch() (use rich_click.patch.patch() instead)

Soft + delayed deprecations

These things will be available in all 2.x versions, and phased out entirely in a hypothetical 3.0 or 3.1 release, if rich-click ever gets there (who knows!). Using these features will trigger a DeprecationWarning.

Logic: Switching away from these features is potentially very tedious for users, so we want to give them as much time as possible to move away.

  • "command groups" and "command aliases" will go away and will be replaced with / renamed to "panels".

Features

  • I want to decouple style config and non-style config somehow.
  • "Styles" API: Easy configuration for styles, e.g. RichStyleConfiguration.build(primary="red", secondary="blue")
@dwreeves dwreeves added the WIP Work in progress label Apr 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
WIP Work in progress
Projects
None yet
Development

No branches or pull requests

1 participant