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

Update clap requirement from 2.34.0 to 3.0.1 #10253

Closed
wants to merge 1 commit into from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jan 4, 2022

Updates the requirements on clap to permit the latest version.

Release notes

Sourced from clap's releases.

v3.0.1

[3.0.1] - 2022-01-03

Fixes

  • Don't panic when getting number of values (#3241)
  • Don't warn when using default_value_t derive attribute with a Subcommand (#3245)

Documentation

  • Added name attribute to ArgEnum variant derive reference
Changelog

Sourced from clap's changelog.

[3.0.1] - 2022-01-03

Fixes

  • Don't panic when getting number of values (#3241)
  • Don't warn when using default_value_t derive attribute with a Subcommand (#3245)

Documentation

  • Added name attribute to ArgEnum variant derive reference

[3.0.0] - 2021-12-31

Note: clap v3 has been in development for several years and has changed hands multiple times. Unfortunately, our changelog might be incomplete, whether in changes or their motivation.

Highlights

A special thanks to the maintainers, contributors, beta users, and sponsors who have helped along this journey, especially kbknapp.

StructOpt Integration

StructOpt provides a serde-like declarative approach to defining your parser. The main benefits we've seen so far from integrating are:

  • Tighter feedback between the design of clap and the derives
  • More universal traits. Crates exist for common CLI patterns (example) and we've re-designed the StructOpt traits so crates built on clap3 can be reused not just with other derives but also people using the builder API. People can even hand implement these so people using the builder API won't have the pay the cost for derives.

Custom Help Headings

Previously, clap automatically grouped arguments in the help as either ARGS, FLAGS, OPTIONS, and SUBCOMMANDS.

You can now override the default group with Arg::help_heading and App::subcommand_help_heading. To apply a heading to a series of arguments, you can set App::help_heading.

Deprecations

While a lot of deprecations have been added to clean up the API (overloaded meaning of Arg::multiple) or make things more consistent, some particular highlights are:

... (truncated)

Commits
  • d392b88 chore: Release
  • 1a19d48 docs: Update changelog
  • 3782d8e Merge pull request #3247 from epage/len
  • 5c829ff Merge pull request #3246 from epage/warn
  • e580683 fix: Don't panic when getting number of values
  • 6b9ae54 fix(derive): Don't enit warnings
  • b0cb205 docs(derive): Include name magic attribute
  • 06f24b1 Merge pull request #3243 from intgr/fix-clap_complete-documentation-imports
  • f10c5d1 docs(complete): Fix imports in documentation
  • 879219a Merge pull request #3240 from epage/heck
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Updates the requirements on [clap](https://github.com/clap-rs/clap) to permit the latest version.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](clap-rs/clap@clap_generate-v3.0.0-rc.0...clap_complete-v3.0.1)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added the A-build-dependencies Area: [build-dependencies] label Jan 4, 2022
@dependabot dependabot bot requested a review from alexcrichton January 4, 2022 01:08
@rust-highfive
Copy link

r? @alexcrichton

(rust-highfive has picked a reviewer for you, use r? to override)

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jan 4, 2022
@epage
Copy link
Contributor

epage commented Jan 4, 2022

Are there any thoughts on whether to port immediately or wait?

I'd be willing to port cargo, just double checking that it is wanted at this time.

@Eh2406
Copy link
Contributor

Eh2406 commented Jan 4, 2022

I am one vote among several, but I would be happy to have you do the update!

@alexcrichton
Copy link
Member

I think it'd be good to upgrade yeah, but Cargo's pretty big and this is probably a big update so we'll likely want to pay special attention to any changes in clap itself and/or tread carefully on a change like this (e.g. be on the lookout for any issues on nightly)

@epage
Copy link
Contributor

epage commented Jan 4, 2022

Yes, I am especially concerned about the unenumerated parser changes that happened before I took over (clap-rs/clap#3249 being an example that doesn't impact cargo)

@dependabot @github
Copy link
Contributor Author

dependabot bot commented on behalf of github Jan 5, 2022

Superseded by #10259.

@dependabot dependabot bot closed this Jan 5, 2022
@dependabot dependabot bot deleted the dependabot/cargo/clap-3.0.1 branch January 5, 2022 01:11
@epage
Copy link
Contributor

epage commented Jan 5, 2022

As an update, I've now got this down to a debug assert during cargo_alias_config::weird_check which deals with detecting external subcommands that alias built-ins when using -- (e.g. cargo -- check --invalid_argument -some-other-argument). I've created clap-rs/clap#3263 as I try to decide how to handle this in both cargo and clap.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-build-dependencies Area: [build-dependencies] S-waiting-on-review Status: Awaiting review from the assignee but also interested parties.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants