NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #119 most downloaded on crates.io
A simple to use, efficient, and full-featured Command Line Argument Parser
Last release 19 days ago
14 Sep 2026
Release timing varies
gaps range from 8 days to 4 months
Nearly every release is documented
notes for 55 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
4 years old
109 releases · first in 2023
One column per quarter.
*(error)* Include suggestion to add -- even if there is a "did you mean" so long as last or trailing_var_arg is used
-- even if there is a "did you mean" so long as last or trailing_var_arg is used### Compatibility - Update MSRV to 1.74
*(error)* When lacking usage feature, ensure the list of required arguments is unique
usage feature, ensure the list of required arguments is uniqueFix panic! when mixing args_conflicts_with_subcommands with ArgGroup (which is implicit with derive) introduced in 4.4.15
panic! when mixing args_conflicts_with_subcommands with ArgGroup (which is implicit with derive) introduced in 4.4.15Ensure invalid escape sequences in user-defined strings are correctly stripped when terminal doesn't support color
Improve error for args_conflicts_with_subcommands
args_conflicts_with_subcommandsargs_conflicts_with_subcommands when using subcommand short and long flagsFix find cookbook entry to allow repeats of flags/options
find cookbook entry to allow repeats of flags/optionsnum_args(0) on options which allows making them emulate being a flag for position-tracking flagsOnly ask TypedValueParser for possible values if needed
TypedValueParser for possible values if needed### Features - Add Command::mut_group
Command::mut_group*(help)* Show correct Command::about under flattened headings
Command::about under flattened headingshide when flattening subcommandsAdd Command::flatten_help to allow git stash -h like help for subcommands
Command::flatten_help to allow git stash -h like help for subcommands### Performance - Reduced code size
### Internal - Upgrade anstream
anstream*(parser)* When inferring subcommand name or long_flag, allow ambiguous-looking matches that unambiguously map back to the same command
name or long_flag, allow ambiguous-looking matches that unambiguously map back to the same commandlong_flag, don't panic### Internal - Update terminal_size to 0.3
terminal_size to 0.3Improve build times by removing once_cell dependency
once_cell dependency### Features - Stabilize Command::styles
Command::styles### compatibility - update msrv to 1.70.0
Ensure column padding is preserved in --help with custom templates
--help with custom templatesFixed UnknownArgumentValueParser to not error on flag's absence
UnknownArgumentValueParser to not error on flag's absenceAdd UnknownArgumentValueParser for injecting errors for improving the experience with errors
UnknownArgumentValueParser for injecting errors for improving the experience with errorsExpose TryMapValueParser so the type can be named
TryMapValueParser so the type can be namedCommand::mut_args for modifying all arguments en masse
Command::mut_args for modifying all arguments en masse*(parse)* Respect value_terminator even in the presence of later multiple-value positional arguments
value_terminator even in the presence of later multiple-value positional arguments*(parse)* Suggest -- in fewer places where it won't work
-- in fewer places where it won't work*(help)* Address a regression in wrapping PossibleValue descriptions in --help
PossibleValue descriptions in --helpDon't assert when stateful value parsers fail on defaults (e.g. checking if a path exists)
*(unstable-styles)* Re-export anstyle
anstyleArgAction::HelpShort and ArgAction::HelpLong for explicitly specifying which style of help to display
ArgAction::HelpShort and ArgAction::HelpLong for explicitly specifying which style of help to display[OPTIONS] in usage if a help or version ArgAction is usedNothing published for this version
*(derive)* Don't error on enum variant field attributes
*(derive)* Support fields wrapped in num::Wrapping, Box, or Arc
num::Wrapping, Box, or ArcBox<str>, Box<OsStr>, and Box<Path>Drop a dependency, reducing binary size by 1.3 KiB
Command::ignore_errors no longer masks help/version
Command::ignore_errors no longer masks help/versionError on ambiguity with infer_long_arg, rather than arbitrarily picking one, matching the documentation and subcommand's behavior
infer_long_arg, rather than arbitrarily picking one, matching the documentation and subcommand's behaviorColorChoice::possible_values is added to simplify things for builder users
ColorChoice::possible_values is added to simplify things for builder usersColorChoice::to_possible_value no longer includes descriptions, encouraging shorter help where possible### Features - Add Error::exit_code
Error::exit_codeCommand::defer for delayed initialization of subcommands to reduce startup times of large applications like deno
Command::defer for delayed initialization of subcommands to reduce startup times of large applications like deno*(derive)* Reduce the amount of generated code
*(assert)* Allow multiple, value-terminated, positional arguments
last assertionvalue_terminator has higher precedence than allow_hyphen_values--helpCorrectly track remaining length for iterators provided by ArgMatches
ArgMatchesimpl Eq for clap_builder::AnyValueId
impl Eq<std::any::TypeId> for clap_builder::util::AnyValueIdImprove panic when a group requires a non-existent ID
Corrected docs for Command::style
Command::styleCommand::styles for theming help/errors (behind unstable-styles)
Command::styles for theming help/errors (behind unstable-styles)### Internal - Update dependencies
Don't highlight uninteresting parts of the error message
Removed the languishing unstable-replace feature (open to discussion at #2836)
unstable-replace feature (open to discussion at #2836)unstable-grouped featureStyledStr to accept text styled with ANSI escape codesCLICOLOR, CLICOLOR_FORCE*(derive)* #[group] raw attribute support
#[group] raw attribute supportclap_builder was pulled out of clap so it could build in parallel to clap_deriveos_str_bytes dependency was removed for faster builds and smaller binariesYour coding agent can read these notes before it upgrades. Set up the MCP server →