-
Notifications
You must be signed in to change notification settings - Fork 38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Replace gumdrop
with clap
v3?
#298
Comments
Here are some advantages I personally think a switch to clap would bring:
|
4 tasks
gumdrop
with clap-v3
?gumdrop
with clap
v3?
Closed
tarcieri
pushed a commit
that referenced
this issue
Oct 6, 2021
As discussed in #298, switches command-line argument processing from `gumdrop` to `clap` v3.0.0-beta.4. This release of `clap`, despite still being beta, has moved many of the warnings around the stability of the API. They are also cutting scope of an initial release upstream, which are good signs that they will get to a stable release soon.
tarcieri
pushed a commit
that referenced
this issue
Oct 6, 2021
As discussed in #298, switches command-line argument processing from `gumdrop` to `clap` v3.0.0-beta.4. This release of `clap`, despite still being beta, has moved many of the warnings around the stability of the API. They are also cutting scope of an initial release upstream, which are good signs that they will get to a stable release soon.
tony-iqlusion
added a commit
that referenced
this issue
Oct 6, 2021
As discussed in #298, switches command-line argument processing from `gumdrop` to `clap` v3.0.0-beta.4. This release of `clap`, despite still being beta, has moved many of the warnings around the stability of the API. They are also cutting scope of an initial release upstream, which are good signs that they will get to a stable release soon. Co-authored-by: rsdy <[email protected]>
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
There were two primary reasons why Abscissa used
gumdrop
overclap
v2 originally:clap
had an excessively large number of dependencies, whereasgumdrop
had no dependencies other thanproc-macro2
,quote
, andsyn
for its proc macro. It seemsclap-v3
has done a good job of addressing this (see below).clap
's previous custom derive cratestructopt
was added as something of an afterthought, had a clunky attribute syntax, and generally felt pretty low quality, whereasgumdrop
was effectively a "custom derive first" crate and in that regard felt much more cohesive. That said,clap-v3
now featuresclap_derive
which largely addresses these concerns.We're now at a crossroads where we can either upgrade to
gumdrop
v0.8 or consider migrating toclap-v3
. Either approach seems a bit difficult asgumdrop
v0.8 contains a number of API changes.The current beta release is clap-v3 3.0.0-beta.2. They warn against depending on the API until it's stable, however.
Tracking issue for
clap
v3 is here: clap-rs/clap#1037Dependencies
Here are the transitive dependencies of
clap-v3
3.0.0-beta.1 (I haven't fully cross-referenced these with our current ones yet, but I see a lot of commonality):The text was updated successfully, but these errors were encountered: