argh
pico-args
argh | pico-args | |
---|---|---|
7 | 11 | |
1,568 | 547 | |
1.6% | - | |
6.0 | 3.0 | |
21 days ago | 7 months ago | |
Rust | Rust | |
BSD 3-clause "New" or "Revised" License | MIT License |
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.
argh
-
Crate List - Blessed.rs
https://github.com/google/argh is another minimal library for CLI argument parsing that could be in the list
-
Rust Web Framework Comparison
My go-to is argh[1], as it's more lightweight while still providing a nice derive-based API.
[1]: https://github.com/google/argh
-
Immediately off the top of your head what is the best Rust CLI library.
It'll panic if the path contains non-UTF8-able bytes.
-
fncmd: Command line interface as a function.
Yes clap needs a lot of boilerplate that small programs don't always need, but if you're going to simplify it, I don't think having a bunch of arguments given to the main function is better than having an option struct as in argh. Such an option struct can be given to other functions from the main, can have dedicated consistency check or completion methods, etc.
-
Newbie frustration: can we KISS more?
Typically programs are configured through a config object. People like to use things like clap, structopt, or argh for passing in arguments through the CLI https://github.com/google/argh. You can also use the env! macro for embedding values in at compile time, or by going through the std::env::var infrastructure for runtime env vars.
-
Darkroom: A VCR contract testing tool built in Rust
Until the argh crate bumps their version I cannot updater the version on crates.io so the install command currently is: cargo install --git https://github.com/mkatychev/darkroom
-
Announcement: xflags, fast-to-compile proc macro for cli args
Ahh. The secondary reason I discounted Argh as "unsuitable for purpose" after "Doesn't support using OsString under the hood".
pico-args
- Improving build times for derive macros by 3x or more
-
Need a new args parser
That's because the maintainer does not consider it an issue but an implementation detail: https://github.com/RazrFalcon/pico-args/issues/15
-
An alternative to clap but with a stable API?
Maybe pico-args then?
-
Immediately off the top of your head what is the best Rust CLI library.
If I forget to get around to it, would you mind poking RazrFalcon/pico-args about adding it to the comparison chart? I really like using that thing as something I can link people to with just a quick explanation of that particular trade-off.
-
Best CLI arg parser for use in Rust to port from Perl with Getopt::Long?
If fewer dependencies is better, you can't get much fewer than pico-args, which has zero dependencies.
- What is the current proper way to get command line args ?
-
Creating an Argparse library [feedback would be appreciated]
You might also want to check out pico-args, Gumdrop, and lexopt to see if any of them meet your needs.
-
Can we please stop downvoting people who dislike Rust?
For example, The Rust compiler isn't slow; we are. and pico-args: Alternatives.
- pico-args: An ultra simple CLI arguments parser with 0 dependencies
-
New:`cargo-fuzzcheck` 0.5.0 and a series of decent, fast-to-compile crates to replace `syn`, `quote`, `serde-json`, and `toml-rs`
For example, I'd love to go from StructOpt to Gumdrop for parsing command-line arguments and cut my compile times and output size by an order of magnitude, but Gumdrop uses String internally, which means it'll panic if it encounters a Windows path with un-paired surrogates or a mojibake'd posix path... some of which I actually have.
What are some alternatives?
clap-rs - A full featured, fast Command Line Argument Parser for Rust
lexopt - Minimalist pedantic command line parser
structopt - Parse command line arguments by defining a struct.
xflags
hello-actix - Hello, actix!
command-line-rust - Code for Command-Line Rust (O'Reilly, 2022, ISBN 9781098109417) https://learning.oreilly.com/library/view/command-line-rust/9781098109424/
thiserror - derive(Error) for struct and enum error types
argparse-benchmarks-rs - Collected benchmarks for arg parsing crates written in Rust [Moved to: https://github.com/rosetta-rs/argparse-rosetta-rs]
cli-guidelines - A guide to help you write better command-line programs, taking traditional UNIX principles and updating them for the modern day.
rust-prehistory - historical archive of rust pre-publication development
rust - Rust for the xtensa architecture. Built in targets for the ESP32 and ESP8266