getargs | xflags | |
---|---|---|
6 | 6 | |
42 | 75 | |
- | - | |
0.0 | 7.5 | |
10 months ago | 5 days ago | |
Rust | Rust | |
MIT License | Apache License 2.0 |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
getargs
Posts with mentions or reviews of getargs.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-10-08.
-
Announcement: xflags 3.0.0
Actually, I would say getargs on this one. Full disclosure, I'm a major contributor to the library, but it is also faster than lexopt, and provides a bit more control.
-
Inlining functions that will only ever be called once - is this a good convention?
I have benchmarked getargs to have significant performance gains from inlining.
-
How do i learn about new crates?
I'd recommend getargs over argparse, it's also very well documented (but that version is not on crates.io yet)
-
How to parse `strace -c ls -a` using clap?
It pains me that getargs 0.5.0 is still not released yet. If you can deal with a git dependency, I would highly recommend it, it can do exactly what you want with no fuss.
-
What's everyone working on this week (23/2022)?
I'm currently working on bringing up getargs, which was abandoned on crates.io over 2 years ago. It has an API design that I agree with and I wanted to make it great, so I'm giving it a visit from the PR fairy.
-
What are legitimate problems with Rust?
If it's perfectly fine then it shouldn't be terribly difficult to write it in a way that the borrow checker is happy with. The problem is reformulating your problem such that it's easy to either annotate the lifetimes in that way or have the compiler infer them for you. And it's made more difficult if your libraries have incorrectly elided lifetimes.
xflags
Posts with mentions or reviews of xflags.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-10-11.
-
Started using Rust for scripting
3) xflags is my preferred way to parse CLI arguments for such scripts. It's not good at all, but, for me, it's the best for the task at the moment.
- Announcement: xflags 3.0.0
-
pico-args: An ultra simple CLI arguments parser with 0 dependencies
You might like xflags. It has a similar design philosophy, but is willing to compromise on simplicity a bit to get auto-generated help.
-
Announcement: xflags, fast-to-compile proc macro for cli args
See also https://github.com/matklad/xflags/issues/3
-
Argument parsers that don't choke on invalid unicode
Added https://github.com/matklad/xflags/blob/master/examples/non-utf8.rs.
What are some alternatives?
When comparing getargs and xflags you can also consider the following projects:
faketty - Wrapper to exec a command in a pty, even if redirecting the output
pico-args - An ultra simple CLI arguments parser.
async-fundamentals-initiative
argh - Rust derive-based argument parsing optimized for code size
lexopt - Minimalist pedantic command line parser
clap-rs - A full featured, fast Command Line Argument Parser for Rust
gumdrop - Rust option parser with custom derive support
ponyc - Pony is an open-source, actor-model, capabilities-secure, high performance programming language
strop - Stochastically generates machine code
bpaf - Command line parser with applicative interface