Ed Page
d791a93ec7
refacor(usage): Remove use of sort
2022-08-30 11:27:14 -05:00
Ed Page
1f734c8661
Merge pull request #4148 from epage/collect
...
fix(parser): Improve required error messages
2022-08-30 09:49:57 -05:00
Ed Page
8da1f085dd
fix(parser): Require earlier, not-present positionals
2022-08-30 09:31:46 -05:00
Ed Page
f3c4bfd993
docs: Forward integrate v3's changelog
2022-08-30 08:54:00 -05:00
Ed Page
2388ace47b
refactor(parser): Hoist check into iteration
2022-08-30 08:47:03 -05:00
Ed Page
619b1fb187
perF(usage): Defer de-duplicating to later
...
This should drop code size
2022-08-30 07:15:50 -05:00
Ed Page
66957f8398
refactor(usage): Make last check clearer
2022-08-29 21:26:39 -05:00
Ed Page
09031fb4ab
refactor(usage): Consolidate required bookkeeping
2022-08-29 21:26:35 -05:00
Ed Page
85569514db
refactor(usage): Make duplicate check more resilient
2022-08-29 21:26:32 -05:00
Ed Page
3b17f7fdc9
refactor(usage): Pull out duplicate check
2022-08-29 21:26:28 -05:00
Ed Page
ecb632f487
refactor(usage): Split out group processing
2022-08-29 21:26:24 -05:00
Ed Page
26ea3e32d0
refactor(parser): Consolidate the loops
2022-08-29 19:42:21 -05:00
Ed Page
0c9b9d7ec8
fix(parser): Show all required errors at once
...
This also has the side effect of always using the "smart usage" which is
why the tests changed.
2022-08-29 19:40:35 -05:00
Ed Page
14d910dee1
refactor(parser): Prefer explicit for loops
2022-08-29 17:04:17 -05:00
Ed Page
3c466c63f7
refactor(parser): Flatten required_unless logic
2022-08-29 17:02:05 -05:00
Ed Page
dacc8ff43a
refactor(parser): Consolidate presence check
2022-08-29 16:59:58 -05:00
Ed Page
5bbe04ac2a
docs: Update changelog
2022-08-29 16:50:04 -05:00
Ed Page
45d56ca9d2
Merge pull request #4145 from epage/optional
...
fix(help): Ensure consistency in usage
2022-08-29 16:01:59 -05:00
Ed Page
567bff707b
Merge pull request #4144 from epage/collapse-bug
...
fix(help): Consistently use `[]` for positionals
2022-08-29 15:50:50 -05:00
Ed Page
76dd3a18e2
fix(help): Ensure consistency in usage
2022-08-29 15:50:39 -05:00
Ed Page
29238551ab
Merge pull request #4143 from epage/refactor
...
refactor(help): Prep for usage fixes
2022-08-29 15:35:08 -05:00
Ed Page
02db3043e2
fix(help): Consistently use []
for positionals
...
In the usaeg we use `[]` but in the arg list we use `<>`.
2022-08-29 15:34:30 -05:00
Ed Page
5ef803f01a
refactor(help): Move close to use
2022-08-29 15:18:46 -05:00
Ed Page
91332267cf
refactor(help): Positive logic can clarify intent
2022-08-29 14:29:32 -05:00
Ed Page
87e2d0c2e0
refactor(help): Clarify intent of fn
2022-08-29 14:07:10 -05:00
Ed Page
2b4541fab2
refactor(help): Clean up code
2022-08-29 14:04:27 -05:00
Ed Page
a666328c1f
Merge pull request #4141 from epage/deprecate
...
fix: Deprecate _os variants
2022-08-29 13:07:48 -05:00
Ed Page
36460aed08
fix: Deprecate _os variants
...
PR #4096 made them redundant
2022-08-29 12:42:30 -05:00
Ed Page
d61e614660
Merge pull request #4138 from epage/help
...
fix(help): Command::print_help should respect disable_colored_help
2022-08-29 11:00:17 -05:00
Ed Page
4eeee9b110
fix(help): Command::print_help should respect disable_colored_help
2022-08-29 10:47:08 -05:00
Ed Page
d61292d999
Merge pull request #4136 from sashashura/patch-2
...
GitHub Workflows security hardening
2022-08-29 07:56:04 -05:00
sashashura
5a563db76a
chore: Set permissions
2022-08-28 01:50:11 +03:00
Ed Page
a2f3ee2cfa
docs: Update changelog
2022-08-26 20:06:46 -05:00
Ed Page
9a9d3a8e60
Merge pull request #4131 from talklittle/no-global-args-on-help
...
fix(help): Do not propagate global args to help
2022-08-26 20:05:35 -05:00
Andrew Shu
eec047a6f6
fix(help): Do not propagate global args to help
...
This prevents global args from showing in help completions,
since help completions should only suggest subcommands.
Adds tests to ensure the args still show in the generated
help messages of subcommands.
2022-08-26 17:48:58 -07:00
Ed Page
1f3df00388
Merge pull request #4130 from epage/structopt
...
fix(derive): Remove structopt attribute support
2022-08-26 16:23:07 -05:00
Ed Page
ba5eec31f5
Merge pull request #4129 from epage/derive
...
refactor(derive): Prepare for builder attributes
2022-08-26 16:08:31 -05:00
Ed Page
521a012c28
fix(derive): Remove structopt attribute support
2022-08-26 16:06:10 -05:00
Ed Page
c04fe2fa4b
refactor(derive): Allow carrying context with parsed attributes
2022-08-26 15:52:21 -05:00
Ed Page
294868f5d8
Merge pull request #4115 from talklittle/completion-help-parser-flag
...
feat(complete): Add completion for help subcommands
2022-08-26 15:28:21 -05:00
Andrew Shu
0d0be51606
fix(complete): Fix help completion issues
...
* Copy hide flag
* Revert global args special handling. Another commit will
address the issue of whether global args should be included in
help subtrees.
2022-08-26 12:57:12 -07:00
Ed Page
f08575e4a3
refactor(derive): Simplify verbatim docs tracking
2022-08-26 14:44:04 -05:00
Ed Page
2f4e42f227
Merge pull request #4128 from epage/default
...
fix(derive): Remove error case for default_value
2022-08-26 14:16:10 -05:00
Ed Page
4e6733fbe5
fix(derive): Remove error case for default_value
2022-08-26 13:59:18 -05:00
Ed Page
c13b824e37
Merge pull request #4127 from epage/arg
...
fix(derive): Remove deprecated arg_enum attribute
2022-08-26 13:48:47 -05:00
Ed Page
b4b121d3a4
fix(derive): Remove deprecated arg_enum attribute
2022-08-26 13:34:16 -05:00
Ed Page
6523666a73
Merge pull request #4126 from epage/dimmed
...
fix(help): Don't dim placeholders
2022-08-26 11:58:27 -05:00
Ed Page
e02648e66b
fix(help): Don't dim placeholders
...
This came from feedback: https://rust-lang.zulipchat.com/#narrow/stream/220302-wg-cli/topic/Help.20changes.20in.20clap.20v4
2022-08-26 11:46:44 -05:00
Ed Page
7818af3ac8
Merge pull request #4125 from epage/sub
...
fix(help): Shift focus to subcommands, when present
2022-08-26 11:13:27 -05:00
Ed Page
83d6add9aa
fix(help): Shift focus to subcommands, when present
...
In surveying various tools and CLI parsers, I noticed they list the
subcommands first. This puts an emphasis on them which makes sense
because that is most likely what an end user is supposed to pass in
next.
Listing them last aligns with the usage order but it probably doesn't
outweigh the value of getting a user moving forward.
2022-08-26 10:59:40 -05:00