Skip to content

Migrating command line argument parsing to "structopt" crate

I have a proposal of changing command line argument parsing from naive implementation to "structopt" crate for the following advantages:

  • Clear error messages when unknown option is used or a known one is used incorrectly. Currently an unknown option is interpreted as a path to a script, which tries to get executed and fails because of file not found error.
  • Ability to chain command line options after single '-' sign where it makes sense instead of always being separated by whitespace.
  • Coherency of binary usage with Rust ecosystem - it is a popular crate for command line argument parsing.

Possible concerns with a new implementation:

  • Additional dependency, which maintainers may prefer not to have.
  • Possible increase in binary size. Needs to be measured if that is the case and for how much post factum.

If this change is considered desirable, I would like to be responsible for the implementation.