maelstrom-software / maelstrom

Maelstrom is a fast Rust, Go, and Python test runner that runs every test in its own container. Tests are either run locally or distributed to a clustered job runner.
https://maelstrom-software.com/
Apache License 2.0
600 stars 11 forks source link

Add `--foo` CLI options as companions for any "var-args" options #385

Open bobbobbio opened 3 months ago

bobbobbio commented 3 months ago

Use Cases Right now all the test runners have a "var-args" argument which passes extra command line arguments to the test invocation. These are accepted on the command-line only by putting extra arguments after --. It might be nice to allow the user to specify these additionally via --foo style option like --foo=--a --foo=--b etc.

We would probably accept these in addition to the ones received via -- and prepend them to the list. I'm really not sure how we represent this in the help text.

Acceptance Criteria Every test runner which accepts a "var-args" argument, accepts the same thing via a regular option like --foo provided multiple times. These new options have the same name as the "var-args" option and share the same config value.

Implementation Considerations

Definition of Done