Skip to content

Upgrade to cmdliner 2.0.0 #6435

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

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

kit-ty-kate
Copy link
Member

Fixes #6425

Issues to address:

  • I'm personally unconvinced about the CMDLINER_LEGACY_PREFIXES=true escape hatch. I would much rather have a global reference (e.g. kit-ty-kate/cmdliner@94ecc8a) or whatever to make sure the behaviour doesn't change between two versions while we weren't looking
  • The escape hatch in combination with ?env doesn't work with Arg.enum. Using the example patch above, this issue would be fixed.

If we decide to fork cmdliner with the following patch above master kit-ty-kate/cmdliner@1565763, those issues wouldn't be there anymore at the cost of extra maintenance.

cc @dbuenzli

@dbuenzli
Copy link
Contributor

Note that the idea of #6425 was to simply suppress unabstract uses of converter and make it compile with 1.3.0 without deprecation warnings to allow for a smooth eco-system transition. This uses 2.0.0 APIs.

Regarding the introduction of a global reference the answer is still no: global references are not compositional. The last thing I want to see is libraries fighting to set that value or change it behind user's back.

@kit-ty-kate kit-ty-kate added this to the 2.4.0~alpha1 milestone Apr 5, 2025
@rjbou rjbou modified the milestones: 2.4.0~alpha1, 2.4.0~alpha2 Apr 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

cmdliner 2.0.0 support
3 participants