Commit graph

4355 commits

Author SHA1 Message Date
Ed Page
0a4a2dd36b docs(examples): Provide app_from_crate! example
This consolidates two `crate_*!` macro examples into a `app_from_crate`
example.

- This is more of what we expect users to use
- We've talked about splitting the `crate_*` macros out into their own
  crate.  This shifts the focus to what clap would be providing long
  term
2021-11-17 15:23:31 -06:00
Ed Page
535d663dfc docs(examples): Align quick_examples
`01b` doesn't require `output`, so updating `01a` to match
2021-11-17 15:23:31 -06:00
Ed Page
2df043655f docs(examples): Remove reference to non-existent example 2021-11-17 15:23:31 -06:00
Ed Page
11537b24a5
Merge pull request #7 from epage/revert
revert: Default value behaviour with conflicts and requirement validation
2021-11-17 15:56:27 -06:00
Ed Page
ede8af1da9
Merge pull request #5 from epage/dependabot/cargo/os_str_bytes-5.0
chore(deps): Update os_str_bytes requirement from 4.1 to 5.0
2021-11-17 15:46:13 -06:00
Ed Page
9753f68a76 revert: Default value behaviour with conflicts and requirement validation
This feature is too immature at this stage in the release.   See
clap-rs/clap Issue 3020 when bringing this feature back.

This reverts commit 301c6f765a.
This reverts commit 43a4c90c86.
This reverts commit 4e29777b21.
This reverts commit 69957c4ddd.
This reverts commit bdb1d324a5.
This reverts commit b102da0cd2.
This reverts commit 72429be14e.
This reverts commit 0b7def675b.
This reverts commit b86aa631be.
This reverts commit 6b458c602d.
2021-11-17 15:45:50 -06:00
Ed Page
6f70f65a24
Merge pull request #3 from epage/change
docs: Parent SubcommandPrecedenceOverArg under AppSettings
2021-11-17 15:45:33 -06:00
Ed Page
42f13977c3
Merge pull request #6 from epage/generic
feat(derive): Generic support
2021-11-17 15:45:19 -06:00
Ed Page
fa0b5477b7
Merge pull request #4 from epage/dependabot/cargo/pretty_assertions-1.0
chore(deps): Update pretty_assertions requirement from 0.7 to 1.0
2021-11-17 15:45:04 -06:00
dependabot[bot]
7737ce6946
chore(deps): Update os_str_bytes requirement from 4.1 to 5.0
Updates the requirements on [os_str_bytes](https://github.com/dylni/os_str_bytes) to permit the latest version.
- [Release notes](https://github.com/dylni/os_str_bytes/releases)
- [Commits](https://github.com/dylni/os_str_bytes/compare/4.1.0...5.0.0)

---
updated-dependencies:
- dependency-name: os_str_bytes
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-17 21:34:23 +00:00
dependabot[bot]
33240fcff3
chore(deps): Update pretty_assertions requirement from 0.7 to 1.0
Updates the requirements on [pretty_assertions](https://github.com/colin-kiegel/rust-pretty-assertions) to permit the latest version.
- [Release notes](https://github.com/colin-kiegel/rust-pretty-assertions/releases)
- [Changelog](https://github.com/colin-kiegel/rust-pretty-assertions/blob/main/CHANGELOG.md)
- [Commits](https://github.com/colin-kiegel/rust-pretty-assertions/compare/v0.7.0...v1.0.0)

---
updated-dependencies:
- dependency-name: pretty_assertions
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-17 21:34:15 +00:00
kuviman
aa6594b334 feat(derive): Generic support
This is a port of clap-rs/clap#3023
2021-11-17 15:33:59 -06:00
Ed Page
58b0fe537e
Merge pull request #2 from epage/boiler
chore: Align on boilerplate
2021-11-17 15:32:41 -06:00
Ed Page
4e546dd2a1 chore: Align on boilerplate 2021-11-17 15:24:50 -06:00
Ed Page
dd974168fd docs: Fix typos 2021-11-17 15:21:58 -06:00
Ed Page
60aac4760a
Merge pull request #1 from epage/ci
Speed up CI
2021-11-17 15:10:35 -06:00
Ed Page
b06f69b08d chore(ci): Reduce scope 2021-11-17 15:01:16 -06:00
Ed Page
2113b044e7 chore: Remove dead files 2021-11-17 14:58:56 -06:00
Ed Page
3c937dc76a fix: Allow tests without cargo feature 2021-11-17 14:27:26 -06:00
Ed Page
4479282b11 style: Address warnings 2021-11-17 14:23:32 -06:00
Ed Page
89e1c7206b chore: Remove dead code 2021-11-17 13:56:36 -06:00
Ed Page
0168dd7350 chore: Remove site 2021-11-17 13:49:59 -06:00
Ed Page
26cefe2ce3 chore(ci): Update for branch renames
And for not running bors
2021-11-17 13:49:29 -06:00
Ed Page
23b988e064 docs: Parent SubcommandPrecedenceOverArg under AppSettings
We have it marked as an `ArgSettings` when it is an `AppSettings`.
2021-11-15 10:27:30 -06:00
bors[bot]
5e913473d7
Merge #3025
3025: docs: Remove references to `just` (removed by #2923) r=epage a=mkayaalp



Co-authored-by: mkayaalp <mk@mkayaalp.net>
2021-11-15 14:52:00 +00:00
mkayaalp
e27ba8c47d docs: Remove references to just (removed by #2923) 2021-11-14 21:46:31 -05:00
bors[bot]
ca3e14ca2d
Merge #3014
3014: fix(app): Propogate color  r=pksunkara a=epage



Co-authored-by: Ed Page <eopage@gmail.com>
2021-11-13 10:43:42 +00:00
bors[bot]
4b70a6e8ff
Merge #3018
3018: fix(derive): Don't emit warnings r=pksunkara a=epage



Co-authored-by: Ed Page <eopage@gmail.com>
2021-11-12 21:29:44 +00:00
Ed Page
9167fdebf3 fix(derive): Don't emit warnings
Looks like this is coming from `update_from_arg_matches` where we do a
ladder of `if __clap_arg_matches.is_present(...)` that clippy wants to
be `else if`s.  While for human edited code, that does clarify intent,
for machine generated code that is rarely read, its a pain to do, so
silencing it.

Unfortunately, it isn't in a group we can overall silence.

Fixes #3017
2021-11-12 12:52:18 -06:00
bors[bot]
98c1a75949
Merge #3016
3016: Revert "Automatically read license field from Cargo.toml" r=pksunkara a=epage



Co-authored-by: Ed Page <eopage@gmail.com>
2021-11-12 16:16:35 +00:00
Ed Page
7a59dc3da4 Revert "Automatically read license field from Cargo.toml"
This reverts commit 6898fbde33.

PR #2144 added the `license` field but no consumer has been added since
the (like Issue #1768).  Since this is not ready yet, I am pulling it
from the 3.0 release.

So far, our main route for pulling a feature from the release has
been to put it behind a `unstable-*` feature flag and to create a
stablization tracking issue.  I chose to instead remove the feature
because a write-only field with no effect does not provide values for
people to use in as an early access and so doesn't outweight the cost of
the extra documentation noise and code noise it creates.  Additionally,
keeping an `unstable-` feature around when it has such an unknown path
(and time table) to stalbization feels like it violates YAGNI.  I'm
uncertain how much of this feature we can implement and not create a
legal trap for users because the crate's license is insufficient for the
final artifact's license.  I feel our stabliazation process sshould be
about iteration and collecting user feedback which this doesn't line up
with.

When someone is ready to tackle #1768, it will be easy to revert this
commit and pick up the work again.

Fixes #3001
2021-11-12 09:55:37 -06:00
bors[bot]
3092751f6d
Merge #2985
2985: Follow up to #2950 r=epage a=pksunkara



Co-authored-by: Pavan Kumar Sunkara <pavan.sss1991@gmail.com>
2021-11-11 22:50:35 +00:00
Pavan Kumar Sunkara
301c6f765a Added and used ArgPredicate api 2021-11-11 22:33:30 +00:00
Pavan Kumar Sunkara
43a4c90c86 Remove is_default_value in favor of contains_explicit_value 2021-11-11 22:07:29 +00:00
Pavan Kumar Sunkara
4e29777b21 Added contains_explicit_val function instead of contains_val 2021-11-11 22:07:29 +00:00
Pavan Kumar Sunkara
69957c4ddd Revert "Revert "Fixes arg having required_unless on default values""
This reverts commit 6e85fb3ae0.
2021-11-11 21:33:50 +00:00
Pavan Kumar Sunkara
bdb1d324a5 Revert "Revert "Fixes arg having required_if on default values""
This reverts commit 8818327b25.
2021-11-11 21:33:50 +00:00
Pavan Kumar Sunkara
b102da0cd2 Revert "Revert "Fixes arg and group with default value having requires""
This reverts commit bd8c36cf04.
2021-11-11 21:33:50 +00:00
Pavan Kumar Sunkara
72429be14e Revert "Revert "Fixes group conflicting if two args with default values""
This reverts commit 4e370bb093.
2021-11-11 21:33:50 +00:00
Pavan Kumar Sunkara
0b7def675b Revert "Revert "Fixes arg conflicting with group whose arg has default value""
This reverts commit 706085d9c5.
2021-11-11 21:33:50 +00:00
Pavan Kumar Sunkara
b86aa631be Revert "Revert "Fixes group conflicting with arg which has default value""
This reverts commit 736cb28dd0.
2021-11-11 21:33:50 +00:00
Pavan Kumar Sunkara
6b458c602d Revert "Revert "Added ArgMatcher::is_default_value abstraction""
This reverts commit 5e76e6c568.
2021-11-11 21:33:50 +00:00
Pavan Kumar Sunkara
45f281b67e Revert "Revert "Revert "docs: Clarify corner caseses with default values"""
This reverts commit 98f696c0a6.
2021-11-11 21:33:50 +00:00
bors[bot]
9dd59ad341
Merge #2996
2996: fix typo r=pksunkara a=bacongobbler



Co-authored-by: Matthew Fisher <matt.fisher@fishworks.io>
2021-11-11 18:05:03 +00:00
Ed Page
a2c3b14bb0 fix(app): Propogate color
In #2851, we moved color from an AppSetting to function (with some
tweaks in #2907).  When doing this, we documented `App::color` to be
equivalent of `App::global_settings(Color...)` but never actually
propagated it.

We are now propagating it.  A test is added to ensure that no matter
how we store the color choice, we continue to propagate it.  This
required exposing `App::get_color`.
2021-11-11 11:39:21 -06:00
Ed Page
ae67496473 feat(app): Expose App::get_color
This will be important for testing color support.  No idea how much
users will care.
2021-11-11 11:34:20 -06:00
bors[bot]
00a0c4ee14
Merge #2997
2997: fix check warnings r=epage a=bacongobbler



Co-authored-by: Matthew Fisher <matt.fisher@fishworks.io>
2021-11-05 19:03:46 +00:00
Matthew Fisher
a769071f72
fix check warnings
Signed-off-by: Matthew Fisher <matt.fisher@fishworks.io>
2021-11-05 11:38:06 -07:00
Matthew Fisher
2232afbe99
fix typo
Signed-off-by: Matthew Fisher <matt.fisher@fishworks.io>
2021-11-05 11:17:59 -07:00
bors[bot]
6b0c49e840
Merge #2994
2994: Revert:  Add new App::mut_args for mutating all arguments #2966  r=pksunkara a=epage



Co-authored-by: Ed Page <eopage@gmail.com>
2021-11-05 15:15:43 +00:00