Changes in behavior of note that are not guaranteed to be compatible across releases:
(help)help subcommand shows long help like --help, rather than short help (-h), deprecated clap::AppSettings::UseLongFormatForHelpSubcommand (#3440)
(help) Pacman-style subcommands are now ordered the same as usage errors (#3470)
(help) Pacman-style subcommands use standard alternate syntax in usage (#3470)
Deprecations
clap::Command is now preferred over clap::App (#3089 in #3472)
clap::command! is now preferred over clap::app_from_crate (#3089 in #3474)
clap::CommandFactory::command is now preferred over clap::IntoApp::into_app (#3089 in #3473)
(help)help subcommand shows long help like --help, rather than short help (-h), deprecated clap::AppSettings::UseLongFormatForHelpSubcommand (#3440)
(error) Deprecate clap::AppSettings::WaitOnError, leaving it to the user to implement
(validation)clap::Command::subcommand_required(true).arg_required_else_help(true) is now preferred over clap::AppSettings::SubcommandRequiredElseHelp (#3280)
(builder)clap::AppSettings are nearly all deprecated and replaced with builder methods and getters (#2717)
(builder)clap::ArgSettings is deprecated and replaced with builder methods and getters (#2717)
(builder)clap::Arg::id and clap::ArgGroup::id are now preferred over clap::Arg::name and clap::ArgGroup::name (#3335)
(help)clap::Command::next_help_heading is now preferred over clap::Command::help_heading (#1807, #1553)
(error)clap::error::ErrorKind is now preferred over clap::ErrorKind (#3395)
(error)clap::Error::kind() is now preferred over clap::Error::kind
(error)clap::Error::context() is now preferred over clap::Error::info (#2628)
Note: All items deprecated in 3.0.0 are now hidden in the documentation. (#3458)
Features
(matches) Add clap::ArgMatches::value_source to determine what insert the value (#1345)
(help) Override derived display order with clap::Command::next_display_order (#1807)
(error) Show possible values when an argument doesn't have a value (#3320)
(error) New clap::Error::context API to open the door for fully-custom error messages (#2628)
(error)clap::error::ErrorKind now implements Display
Fixes
(builder) Some functions were renamed for consistency and fixing spelling issues
(builder) Allow clap::Command::color to override previous calls (#3449)
(parse) Propagate globals with multiple subcommands (#3428)
(validation) Give ArgRequiredElseHelp precedence over SubcommandRequired (#3456)
(validation) Default values no longer count as "present" for conflicts, requires, clap::Command::arg_required_else_help, etc (#3076, #1264)
Changes in behavior of note that are not guaranteed to be compatible across releases:
(help)help subcommand shows long help like --help, rather than short help (-h), deprecated clap::AppSettings::UseLongFormatForHelpSubcommand (#3440)
(help) Pacman-style subcommands are now ordered the same as usage errors (#3470)
(help) Pacman-style subcommands use standard alternate syntax in usage (#3470)
Deprecations
clap::Command is now preferred over clap::App (#3089 in #3472)
clap::command! is now preferred over clap::app_from_crate (#3089 in #3474)
clap::CommandFactory::command is now preferred over clap::IntoApp::into_app (#3089 in #3473)
(help)help subcommand shows long help like --help, rather than short help (-h), deprecated clap::AppSettings::UseLongFormatForHelpSubcommand (#3440)
(error) Deprecate clap::AppSettings::WaitOnError, leaving it to the user to implement
(validation)clap::Command::subcommand_required(true).arg_required_else_help(true) is now preferred over clap::AppSettings::SubcommandRequiredElseHelp (#3280)
(builder)clap::AppSettings are nearly all deprecated and replaced with builder methods and getters (#2717)
(builder)clap::ArgSettings is deprecated and replaced with builder methods and getters (#2717)
(builder)clap::Arg::id and clap::ArgGroup::id are now preferred over clap::Arg::name and clap::ArgGroup::name (#3335)
(help)clap::Command::next_help_heading is now preferred over clap::Command::help_heading (#1807, #1553)
(error)clap::error::ErrorKind is now preferred over clap::ErrorKind (#3395)
(error)clap::Error::kind() is now preferred over clap::Error::kind
(error)clap::Error::context() is now preferred over clap::Error::info (#2628)
Note: All items deprecated in 3.0.0 are now hidden in the documentation. (#3458)
Features
(matches) Add clap::ArgMatches::value_source to determine what insert the value (#1345)
(help) Override derived display order with clap::Command::next_display_order (#1807)
(error) Show possible values when an argument doesn't have a value (#3320)
(error) New clap::Error::context API to open the door for fully-custom error messages (#2628)
(error)clap::error::ErrorKind now implements Display
Fixes
(builder) Some functions were renamed for consistency and fixing spelling issues
(builder) Allow clap::Command::color to override previous calls (#3449)
(parse) Propagate globals with multiple subcommands (#3428)
(validation) Give ArgRequiredElseHelp precedence over SubcommandRequired (#3456)
(validation) Default values no longer count as "present" for conflicts, requires, clap::Command::arg_required_else_help, etc (#3076, #1264)
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 to permit the latest version.
Release notes
Sourced from clap's releases.
... (truncated)
Changelog
Sourced from clap's changelog.
... (truncated)
Commits
e6729f9
chore: Releaseaad9fdc
Merge pull request #3477 from epage/compat62c2ca4
chore: Remove compatibility crates73847b3
chore: Upgrade boilerplate9bc0af8
Merge pull request #3475 from epage/fixes3dd3993
docs(builder): Add ToC to Command, Arg94e2727
docs(builder): Clarify command-wide92d1002
docs(changelog): Add missing deprecatione2136f9
docs(contrib): Align release windows15c7abb
docs(parser): Fix ArgMatches::value_source documentationDependabot 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)