JojiiOfficial / LiveBudsCli

A tool to control your Galaxy buds+, Live, Buds Pro and Buds 2 Pro
https://crates.io/crates/earbuds
GNU General Public License v3.0
193 stars 16 forks source link

fix(deps): update rust crate clap to v4 - autoclosed #95

Closed renovate[bot] closed 4 months ago

renovate[bot] commented 1 year ago

Mend Renovate

This PR contains the following updates:

Package Type Update Change
clap dependencies major 3.2.25 -> 4.0.0

Release Notes

clap-rs/clap (clap) ### [`v4.5.4`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#454---2024-03-25) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.5.3...v4.5.4) ##### Fixes - *(derive)* Allow non-literal `#[arg(id)]` attributes again ### [`v4.5.3`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#453---2024-03-15) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.5.2...v4.5.3) ##### Internal - *(derive)* Update `heck` ### [`v4.5.2`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#452---2024-03-06) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.5.1...v4.5.2) ##### Fixes - *(macros)* Silence a warning ### [`v4.5.1`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#451---2024-02-16) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.5.0...v4.5.1) ##### Fixes - *(error)* Include suggestion to add `--` even if there is a "did you mean" so long as `last` or `trailing_var_arg` is used ### [`v4.5.0`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#450---2024-02-08) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.18...v4.5.0) ##### Compatibility - Update MSRV to 1.74 ### [`v4.4.18`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4418---2024-01-16) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.17...v4.4.18) ##### Fixes - *(error)* When lacking `usage` feature, ensure the list of required arguments is unique ### [`v4.4.17`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4417---2024-01-15) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.16...v4.4.17) ##### Fixes - Fix `panic!` when mixing `args_conflicts_with_subcommands` with `ArgGroup` (which is implicit with `derive`) introduced in 4.4.15 ### [`v4.4.16`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4416---2024-01-12) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.15...v4.4.16) ##### Fixes - Ensure invalid escape sequences in user-defined strings are correctly stripped when terminal doesn't support color ### [`v4.4.15`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4415---2024-01-11) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.14...v4.4.15) ##### Fixes - Improve error for `args_conflicts_with_subcommands` - Ensure we error for `args_conflicts_with_subcommands` when using subcommand short and long flags ### [`v4.4.14`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4414---2024-01-08) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.13...v4.4.14) ##### Documentation - Fix `find` cookbook entry to allow repeats of flags/options ##### Features - Allow `num_args(0)` on options which allows making them emulate being a flag for position-tracking flags ### [`v4.4.13`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4413---2024-01-04) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.12...v4.4.13) ##### Documentation - Fix link to structopt migration guide ### [`v4.4.12`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4412---2023-12-28) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.11...v4.4.12) ##### Performance - Only ask `TypedValueParser` for possible values if needed ### [`v4.4.11`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4411---2023-12-04) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.10...v4.4.11) ##### Features - Add `Command::mut_group` ### [`v4.4.10`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4410---2023-11-28) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.9...v4.4.10) ##### Documentation - Link out to changelog - Cross link derive's attribute reference to derive tutorial ### [`v4.4.9`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#449---2023-11-27) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.8...v4.4.9) ##### Fixes - *(help)* Show correct `Command::about` under flattened headings - *(help)* Respect `hide` when flattening subcommands ### [`v4.4.8`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#448---2023-11-10) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.7...v4.4.8) ##### Features - Add `Command::flatten_help` to allow `git stash -h` like help for subcommands ### [`v4.4.7`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#447---2023-10-24) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.6...v4.4.7) ##### Performance - Reduced code size ### [`v4.4.6`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#446---2023-09-28) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.5...v4.4.6) ##### Internal - Upgrade `anstream` ### [`v4.4.5`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#445---2023-09-25) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.4...v4.4.5) ##### Fixes - *(parser)* When inferring subcommand `name` or `long_flag`, allow ambiguous-looking matches that unambiguously map back to the same command - *(parser)* When inferring subcommand `long_flag`, don't panic - *(assert)* Clarify what action is causing a positional that doesn't set values which is especially useful for derive users ### [`v4.4.4`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#444---2023-09-18) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.3...v4.4.4) ##### Internal - Update `terminal_size` to 0.3 ### [`v4.4.3`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#443---2023-09-12) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.2...v4.4.3) ##### Documentation - *(derive)* Clarify use of attributes within the tutorial - Split sections in the builder and derive tutorials into separate modules ### [`v4.4.2`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#442---2023-08-31) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.1...v4.4.2) ##### Performance - Improve build times by removing `once_cell` dependency ### [`v4.4.1`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4418---2024-01-16) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.0...v4.4.1) ##### Fixes - *(error)* When lacking `usage` feature, ensure the list of required arguments is unique ### [`v4.4.0`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#440---2023-08-24) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.24...v4.4.0) ##### compatibility - update msrv to 1.70.0 ### [`v4.3.24`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4324---2023-08-23) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.23...v4.3.24) ##### Fixes - Ensure column padding is preserved in `--help` with custom templates ### [`v4.3.23`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4323---2023-08-18) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.22...v4.3.23) ##### Fixes - Fixed `UnknownArgumentValueParser` to not error on flag's absence ### [`v4.3.22`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4322---2023-08-17) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.21...v4.3.22) ##### Features - Add `UnknownArgumentValueParser` for injecting errors for improving the experience with errors ### [`v4.3.21`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4321---2023-08-08) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.20...v4.3.21) ##### Features - Expose `TryMapValueParser` so the type can be named ### [`v4.3.20`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4320---2023-08-08) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.19...v4.3.20) ##### Features - `Command::mut_args` for modifying all arguments en masse ### [`v4.3.19`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4319---2023-07-21) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.18...v4.3.19) ##### Fixes - *(parse)* Respect `value_terminator` even in the presence of later multiple-value positional arguments ### [`v4.3.18`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4318---2023-07-21) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.17...v4.3.18) ##### Fixes - *(parse)* Suggest `--` in fewer places where it won't work ### [`v4.3.17`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4317---2023-07-19) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.16...v4.3.17) ##### Fixes - *(help)* Address a regression in wrapping `PossibleValue` descriptions in `--help` ### [`v4.3.16`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4316---2023-07-18) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.15...v4.3.16) ##### Fixes - Don't assert when stateful value parsers fail on defaults (e.g. checking if a path exists) ### [`v4.3.15`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4315---2023-07-18) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.14...v4.3.15) ##### Features - *(unstable-styles)* Re-export `anstyle` ##### Documentation - *(unstable-styles)* Provide more examples ### [`v4.3.14`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4314---2023-07-17) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.13...v4.3.14) ##### Features - `ArgAction::HelpShort` and `ArgAction::HelpLong` for explicitly specifying which style of help to display ##### Fixes - Skip `[OPTIONS]` in usage if a help or version `ArgAction` is used ### [`v4.3.13`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4313---2023-07-17) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.12...v4.3.13) ### [`v4.3.12`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4312---2023-07-14) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.11...v4.3.12) ##### Fixes - *(derive)* Don't error on enum variant field attributes ### [`v4.3.11`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4311---2023-07-05) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.10...v4.3.11) ##### Features - *(derive)* Support fields wrapped in `num::Wrapping`, `Box`, or `Arc` - *(derive)* Support `Box`, `Box`, and `Box` ### [`v4.3.10`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4310---2023-06-30) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.9...v4.3.10) ##### Performance - Drop a dependency, reducing binary size by 1.3 KiB ### [`v4.3.9`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#439---2023-06-28) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.8...v4.3.9) ##### Fixes - `Command::ignore_errors` no longer masks help/version ### [`v4.3.8`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#438---2023-06-23) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.7...v4.3.8) ##### Fixes - Error on ambiguity with `infer_long_arg`, rather than arbitrarily picking one, matching the documentation and subcommand's behavior ### [`v4.3.7`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#437---2023-06-23) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.6...v4.3.7) ##### Documentation - Further clarify magic behavior in derive tutorial - Further clarify derive API's relationship to builder within the tutorial ### [`v4.3.6`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#436---2023-06-23) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.5...v4.3.6) ##### Documentation - Suggest `clio` ### [`v4.3.5`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#435---2023-06-20) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.4...v4.3.5) - `ColorChoice::possible_values` is added to simplify things for builder users ##### Fixes - `ColorChoice::to_possible_value` no longer includes descriptions, encouraging shorter help where possible ### [`v4.3.4`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#434---2023-06-14) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.3...v4.3.4) ##### Features - Add `Error::exit_code` ### [`v4.3.3`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#433---2023-06-09) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.2...v4.3.3) ##### Features - `Command::defer` for delayed initialization of subcommands to reduce startup times of large applications like deno ### [`v4.3.2`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4324---2023-08-23) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.1...v4.3.2) ##### Fixes - Ensure column padding is preserved in `--help` with custom templates ### [`v4.3.1`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4319---2023-07-21) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.3.0...v4.3.1) ##### Fixes - *(parse)* Respect `value_terminator` even in the presence of later multiple-value positional arguments ### [`v4.3.0`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#430---2023-05-19) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.2.7...v4.3.0) ##### Fixes - *(assert)* Allow multiple, value-terminated, positional arguments - *(assert)* Clear up language on `last` assertion - *(parser)* Correctly assign values to arguments when using multiple, value-termianted, positional arguments - *(parser)* Ensure `value_terminator` has higher precedence than `allow_hyphen_values` - *(help)* Only use next-line-help on subcommand list when explicitly specified, not just with `--help` - *(help)* Correctly align possible values list - *(help)* Don't waste code, vertical space in moving possible value descriptions to next line ### [`v4.2.7`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#427---2023-05-02) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.2.6...v4.2.7) ##### Fixes - Correctly track remaining length for iterators provided by `ArgMatches` ### [`v4.2.6`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#426---2023-05-02) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.2.5...v4.2.6) ##### Features - `impl Eq for clap_builder::util::AnyValueId` ### [`v4.2.5`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#425---2023-04-27) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.2.4...v4.2.5) ##### Fixes - Improve panic when a group requires a non-existent ID ### [`v4.2.4`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#424---2023-04-19) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.2.3...v4.2.4) ##### Documentation - Corrected docs for `Command::style` ### [`v4.2.3`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#423---2023-04-18) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.2.2...v4.2.3) ##### Features - `Command::styles` for theming help/errors (behind `unstable-styles`) ### [`v4.2.2`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#422---2023-04-13) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.2.1...v4.2.2) ##### Internal - Update dependencies ### [`v4.2.1`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#421---2023-03-28) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.2.0...v4.2.1) ##### Fixes - Don't highlight uninteresting parts of the error message ### [`v4.2.0`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#420---2023-03-28) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.14...v4.2.0) ##### Compatibility - Removed the languishing `unstable-replace` feature (open to discussion at [#​2836](https://togithub.com/clap-rs/clap/issues/2836)) - Removed the stablized `unstable-grouped` feature ##### Features - Allow any `StyledStr` to accept text styled with ANSI escape codes - Respect `CLICOLOR`, `CLICOLOR_FORCE` ##### Fixes - Lighten the tone for "unexpected argument" errors (open to discussion at [#​4638](https://togithub.com/clap-rs/clap/issues/4638)) ### [`v4.1.14`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4114---2023-03-28) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.13...v4.1.14) ##### Features - *(derive)* `#[group]` raw attribute support ##### Performance - *(derive)* `clap_builder` was pulled out of `clap` so it could build in parallel to `clap_derive` - `os_str_bytes` dependency was removed for faster builds and smaller binaries ### [`v4.1.13`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4113---2023-03-18) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.12...v4.1.13) ##### Performance - Reduce repeated alloc calls when building a `Command` - Reduce duplicate dependencies for faster builds ### [`v4.1.12`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4112---2023-03-18) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.11...v4.1.12) ##### Internal - *(derive)* Update to `syn` v2 ##### Performance - *(derive)* Faster build times by dropping `proc-macro-error` dependency ### [`v4.1.11`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4111---2023-03-17) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.10...v4.1.11) ##### Internal - Update `bitflags` ### [`v4.1.10`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4110---2023-03-17) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.9...v4.1.10) ##### Fixes - *(help)* On Windows, avoid underlined text artifacts ### [`v4.1.9`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#419---2023-03-16) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.8...v4.1.9) ##### Fixes - *(assert)* Improve the assert when using the wrong action with `get_count` / `get_flag` ### [`v4.1.8`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#418---2023-02-27) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.7...v4.1.8) ##### Fixes - *(derive)* Don't `deny` lints on the users behalf ### [`v4.1.7`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#417---2023-02-27) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.6...v4.1.7) ##### Fixes - *(derive)* Hide some nightly clippy warnings ### [`v4.1.6`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#416---2023-02-15) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.5...v4.1.6) ##### Fixes - *(help)* Don't show long help for `--help` just because hidden possible values include a description ### [`v4.1.5`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#415---2023-02-15) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.4...v4.1.5) ##### Fixes - *(help)* Don't show long help for `--help` just because a hidden arg has a possible value with a description ### [`v4.1.4`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#414---2023-01-24) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.3...v4.1.4) ##### Fixes - *(help)* Respect `disable_colored_help` when using `arg_required_else_help` ##### Performance - Speed up compiling `arg!` macro ### [`v4.1.3`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#413---2023-01-23) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.2...v4.1.3) ##### Fixes - *(error)* Improve suggested flag/value/subcommand when two share a long preifx - *(error)* When suggesting one of several subcommands, use the plural `subcommands`, rather than `subcommand` ### [`v4.1.2`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#412---2023-01-23) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.1...v4.1.2) ##### Fixes - In documentation, refer to `get_flag`, rather than `get_one::` ### [`v4.1.1`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4114---2023-03-28) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.1.0...v4.1.1) ##### Features - *(derive)* `#[group]` raw attribute support ##### Performance - *(derive)* `clap_builder` was pulled out of `clap` so it could build in parallel to `clap_derive` - `os_str_bytes` dependency was removed for faster builds and smaller binaries ### [`v4.1.0`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#410---2023-01-13) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.32...v4.1.0) ##### Compatibility MSRV changed to 1.64.0 For apps with custom `--help` and `--version` flags: - Descriptions for `--help` and `--version` changed When apps have errors imitating clap's error style: - Error message style was changed, including - Moving away from "did you mean" to tips - Leading letter is lower case - "For more" added some punctuation ##### Features - `ArgMatches::get_occurrences` support for argument values to be grouped by their occurrence ##### Fixes - *(derive)* Allow `upgrade_from` when arguments / subcommands are explicitly marked as required - *(help)* Try be more clearer and succinct with `--help` and `--version` (also helps with overflow) - *(error)* Try to be more clearer and succinct with error messages - *(error)* Officially adopt [an error style guide](https://rustc-dev-guide.rust-lang.org/diagnostics.html#suggestion-style-guide) ### [`v4.0.32`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4032---2022-12-22) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.31...v4.0.32) ##### Fixes - *(parser)* When overriding `required(true)`, consider args that conflict with its group ### [`v4.0.31`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4031---2022-12-22) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.30...v4.0.31) ##### Performance - Speed up parsing when a lot of different flags are present (100 unique flags) ### [`v4.0.30`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4030---2022-12-21) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.29...v4.0.30) ##### Fixes - *(error)* Improve error for `args_conflicts_with_subcommand` ### [`v4.0.29`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4029---2022-11-29) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.28...v4.0.29) ### [`v4.0.28`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4028---2022-11-29) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.27...v4.0.28) ##### Fixes - Fix wasm support which was broken in 4.0.27 ### [`v4.0.27`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4027---2022-11-24) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.26...v4.0.27) ##### Features - Have `Arg::value_parser` accept `Vec>` - Implement `Display` and `FromStr` for `ColorChoice` ##### Fixes - Remove soundness issue by switching from `atty` to `is-terminal` ### [`v4.0.26`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4026---2022-11-16) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.25...v4.0.26) ##### Fixes - *(error)* Fix typos in `ContextKind::as_str` ### [`v4.0.25`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4025---2022-11-15) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.24...v4.0.25) ##### Features - *(error)* Report available subcommands when required subcommand is missing ### [`v4.0.24`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4024---2022-11-14) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.23...v4.0.24) ##### Fixes - Avoid panic when printing an argument that isn't built ### [`v4.0.23`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4023---2022-11-11) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.22...v4.0.23) ##### Fixes - Don't panic on reporting invalid-long errors when followed by invalid UTF8 - *(help)* Clarified argument to `help` subcommand ### [`v4.0.22`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4022---2022-11-07) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.21...v4.0.22) ##### Fixes - *(help)* Don't overflow into next-line-help early due to stale (pre-v4) padding calculations ### [`v4.0.21`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4021---2022-11-07) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.20...v4.0.21) ##### Features - *(derive)* `long_about` and `long_help` attributes, without a value, force using doc comment (before it wouldn't be set if there wasn't anything different than the short help) ### [`v4.0.20`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4020---2022-11-07) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.19...v4.0.20) ##### Fixes - *(derive)* Allow defaulted value parser for '()' fields ### [`v4.0.19`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4019---2022-11-04) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.18...v4.0.19) ##### Features - `ColorChoice` now implements `ValueEnum` ### [`v4.0.18`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4018---2022-10-20) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.17...v4.0.18) ##### Fixes - *(derive)* Allow `#[command(skip)]` to also work with enum variants with a value ### [`v4.0.17`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4017---2022-10-18) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.16...v4.0.17) ##### Fixes - Allow using `Arg::last(true)` with `Arg::value_hint(ValueHint::CommandWithArguments)` ### [`v4.0.16`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4016---2022-10-18) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.15...v4.0.16) ##### Fixes - `Arg::exclusive(true)` should not be exclusive with the argument's own `ArgGroup` ### [`v4.0.15`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4015---2022-10-13) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.14...v4.0.15) ##### Fixes - *(error)* Don't suggest `--` when it doesn't help - *(error)* Be more consistent in quoting, punctuation, and indentation in errors ### [`v4.0.14`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4014---2022-10-12) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.13...v4.0.14) ##### Fixes - Only put `ArgGroup` in `ArgMatches` when explicitly specified, fixing derives handling of option-flattened fields ([#​4375](https://togithub.com/clap-rs/clap/issues/4375)) ### [`v4.0.13`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4013---2022-10-11) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.12...v4.0.13) ##### Features - *(derive)* Allow `()` for fields to mean "don't read" ([#​4371](https://togithub.com/clap-rs/clap/issues/4371)) ### [`v4.0.12`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4012---2022-10-10) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.11...v4.0.12) ##### Features - Added `TypedValueParser::try_map` for when adapting an existing `TypedValueParser` can fail - *(error)* Create errors like clap with `Error::new`, `Error::with_cmd`, and `Error::insert` ### [`v4.0.11`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4011---2022-10-09) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.10...v4.0.11) ##### Fixes - *(help)* Fix wrapping calculations with ANSI escape codes ### [`v4.0.10`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4010---2022-10-05) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.9...v4.0.10) ##### Features - *(derive)* Support `#[arg(flatten)]` on `Option` types ([#​4211](https://togithub.com/clap-rs/clap/issues/4211), [#​4350](https://togithub.com/clap-rs/clap/issues/4350)) ### [`v4.0.9`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#409---2022-10-03) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.8...v4.0.9) ##### Fixes - *(derive)* Process doc comments for `#[command(subcommand)]` like in clap v3 ### [`v4.0.8`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#408---2022-10-01) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.7...v4.0.8) ##### Fixes - *(derive)* Remove a low-value assert preventing defaulting `Help` and `Version` actions ### [`v4.0.7`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#407---2022-09-30) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.6...v4.0.7) ##### Features - *(derive)* Populate implicit ArgGroup ([#​3165](https://togithub.com/clap-rs/clap/issues/3165)) ##### Fixes - *(derive)* Support `#[group(skip)]` on `Parser` derive - *(derive)* Tell users about implicit arg groups when running into group name conflicts - *(error)* Don't report unrelated groups in conflict or requires errors ### [`v4.0.6`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#406---2022-09-30) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.5...v4.0.6) ##### Features - *(derive)* Support `#[group(skip)]` ([#​4279](https://togithub.com/clap-rs/clap/issues/4279), [#​4301](https://togithub.com/clap-rs/clap/issues/4301)) ### [`v4.0.5`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#405---2022-09-30) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.4...v4.0.5) ### [`v4.0.4`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#404---2022-09-29) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.3...v4.0.4) ##### Fixes - *(error)* Specialize the self-conflict error to look like clap v3 ### [`v4.0.3`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4032---2022-12-22) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.2...v4.0.3) ##### Fixes - *(parser)* When overriding `required(true)`, consider args that conflict with its group ### [`v4.0.2`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4029---2022-11-29) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.1...v4.0.2) ### [`v4.0.1`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#4019---2022-11-04) [Compare Source](https://togithub.com/clap-rs/clap/compare/v4.0.0...v4.0.1) ##### Features - `ColorChoice` now implements `ValueEnum` ### [`v4.0.0`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#400---2022-09-28) [Compare Source](https://togithub.com/clap-rs/clap/compare/v3.2.25...v4.0.0) ##### Highlights **`Arg::num_args(range)`** Clap has had several ways for controlling how many values will be captured without always being clear on how they interacted, including - `Arg::multiple_values(true)` - `Arg::number_of_values(4)` - `Arg::min_values(2)` - `Arg::max_values(20)` - `Arg::takes_value(true)` These have now all been collapsed into `Arg::num_args` which accepts both single values and ranges of values. `num_args` controls how many raw arguments on the command line will be captured as values per occurrence and independent of value delimiters. See [Issue 2688](https://togithub.com/clap-rs/clap/issues/2688) for more background. **Polishing Help** Clap strives to give a polished CLI experience out of the box with little ceremony. With some feedback that has accumulated over time, we took this release as an opportunity to re-evaluate our `--help` output to make sure it is meeting that goal. In doing this evaluation, we wanted to keep in mind: - Whether other CLIs had ideas that make sense to apply - Providing an experience that fits within the rest of applications and works across all shells Before: git A fictional versioning CLI USAGE: git OPTIONS: -h, --help Print help information SUBCOMMANDS: add adds things clone Clones repos help Print this message or the help of the given subcommand(s) push pushes things stash After: A fictional versioning CLI Usage: git Commands: clone Clones repos push pushes things add adds things stash help Print this message or the help of the given subcommand(s) Options: -h, --help Print help information - name/version header was removed because we couldn't justify the space it occupied when - Usage already includes the name - `--version` is available for showing the same thing (if the program has a version set) - Usage was dropped to one line to save space - Focus is put on the subcommands - Headings are now Title case - The more general term "command" is used rather than being explicit about being "subcommands" - The output is more dense with the expectation that it won't affect legibility but will allow more content - We've moved to a more neutral palette for highlighting elements (not highlighted above) In talking to users, we found some that liked clap's `man`-like experience. When deviating from this, we are making the assumption that those are more power users and that the majority of users wouldn't look as favorably on being consistent with `man`. See [Issue 4132](https://togithub.com/clap-rs/clap/issues/4132) for more background. **More Dynamicism** Clap's API has focused on `&str` for performance but this can make dealing with owned data difficult, like `#[arg(default_value_t)]` generating a String from the default value. Additionally, to avoid `ArgMatches` from borrowing (and for some features we decided to forgo), clap took the `&str` argument IDs and hashed them. This prevented us from providing a usable API for iterating over existing arguments. Now clap has switched to a string newtype that gives us the flexibility to decide whether to use `&'static str`, `Cow<'static, str>` for fast dynamic behavior, or `Box` for dynamic behavior with small binary size. As an extension of that work, you can now call `ArgMatches::ids` to iterate over the arguments and groups that were found when parsing. The newtype `Id` was used to prevent some classes of bugs and to make it easier to understand when opaque Ids are used vs user-visible strings. **Clearing Out Deprecations** Instead of doing all development on clap 4.0.0, we implemented a lot of new features during clap 3's development, deprecating the old API while introducing the new API, including: - Replacing the implicit behavior for args when parsing them with `ArgAction` - Replacing various one-off forms of value validation with the `ValueParser` API - Allowing derives to automatically do the right thing for `PathBuf` (allowing invalid UTF-8) - Replacing `AppSettings` and `ArgSettings` enums with getters/setters - Clarifying terms and making them more consistent ##### Migrating Steps: 0. [Upgrade to v3](https://togithub.com/clap-rs/clap/blob/v3-master/CHANGELOG.md#migrating) if you haven't already 1. Add CLI tests (including example below), `-h` and `--help` output at a minimum (recommendation: [trycmd](https://docs.rs/trycmd/) for snapshot testing) 2. *If using Builder API*: Explicitly set the `arg.action(ArgAction::...)` on each argument (`StoreValue` for options and `IncOccurrences` for flags) 3. Run `cargo check --features clap/deprecated` and resolve all deprecation warnings 4. Upgrade to v4 5. Update feature flags - *If `default-features = false`*, run `cargo add clap -F help,usage,error-context` - Run `cargo add clap -F wrap_help` unless you want to hard code line wraps 6. Resolve compiler errors 7. Resolve behavior changes (see "subtle changes" under BREAKING CHANGES) 8. *At your leisure:* resolve new deprecation notices Example test (derive): ```rust #[derive(clap::Parser)] struct Cli { ... } #[test] fn verify_cli() { use clap::CommandFactory; Cli::command().debug_assert() } ``` Example test (builder): ```rust fn cli() -> clap::Command { ... } #[test] fn verify_cli() { cli().debug_assert(); } ``` Note: the idiomatic / recommended way of specifying different types of args in the Builder API has changed: Before ```rust .arg(Arg::new("flag").long("flag")) # --flag .arg(Arg::new("option").long("option").takes_value(true)) # --option

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR has been generated by Mend Renovate. View repository job log here.

renovate[bot] commented 10 months ago

⚠ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

The artifact failure details are included below:

File name: Cargo.lock
Command failed: cargo update --config net.git-fetch-with-cli=true --manifest-path Cargo.toml --package clap@3.2.25 --precise 4.5.4
    Updating crates.io index
error: failed to select a version for the requirement `clap = "^3.2.1"`
candidate versions found which didn't match: 4.5.4
location searched: crates.io index
required by package `clap_complete v3.2.5`
    ... which satisfies dependency `clap_complete = "^3.2.5"` (locked to 3.2.5) of package `earbuds v0.1.9 (/tmp/renovate/repos/github/JojiiOfficial/LiveBudsCli)`
perhaps a crate was updated and forgotten to be re-vendored?