Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
After porting to Clap in #1633, @pacak asked me on Mastodon to try
bpaf.Here is the result:
Compile time
Currently,
bpafhas two dependencies less than Clap. The difference is not significant.The benchmark:
bpafhas 8% additional compile time instead of the 15% of Clap. But remember, we are talking about one additional second instead of two of a compilation that is done only once!Which to choose?
Personally, I like the output of
bpafmore since it has colors, but if you don't like the colors and want only bold and underline highlightings, you can use thebpaffeaturedull-colorinstead ofbright-color.The code quality is very similar to Clap. It doesn't have the boilerplate of
argh.I don't like that the
Subcommandenum has to implementClone. @pacak said that it is required to be able to run the parser multiple times, but I still think that it could be improved.I will let you decide which one to merge :)
Personally, I will go with
bpaffor my temporary fork for my Rust course. Just for the nice colors 🌈