mirror of
https://github.com/clap-rs/clap
synced 2024-11-14 00:27:13 +00:00
bd25b5f615
Because we gradually build the `ArgGroup` as we parse the YAML, we don't use `ArgGroup::new`. Clap3 introduced an internal `id` in addition to the public `name` and it appears that this custom initialization code was not updated. This shows the problem with publically exposing `impl Default`. Choices: - Remove `impl Default` - Always valid - Requires spreading invariants - Callers can't implement code the same way we do - Add `ArgGroup::name` - Can be constructed in an invalid state - Centralizes invariants - A caller could implement code like the yaml logic I decided to go with `ArgGroup::name`. Fixes #2719 |
||
---|---|---|
.. | ||
app.yaml | ||
app_2space.yaml | ||
app_field_not_string.yaml | ||
app_regex.yaml | ||
app_regex_invalid.yaml | ||
app_setting_invalid.yaml | ||
arg_field_not_string.yaml | ||
arg_not_hash.yaml | ||
arg_setting_invalid.yaml | ||
extra_fields.yaml | ||
extra_fields_invalid_app.yaml | ||
extra_fields_invalid_arg.yaml | ||
field_not_hash.yaml | ||
multiple_groups.yaml | ||
name_not_string.yaml | ||
not_hash.yaml |