Skip to content

Reorganize command line interface options/parameters #3182

Description

@filzrev

As commented at #3162 (comment)

I wonder if we should use this as an opportunity to consider redesigning the existing command line arguments.

What we have as of today is literally two commands (run benchmarks or display info) and the benchmarking command has way too many options/arguments (I am the one to blame for that). Moreover, it certain things are impossible to configure with command line.

BenchmarkDotNet command line interface are complicated and need to be simplified.

Currently, there are following options/arguments categories are exists. and these options are specified on flat hierarchy.
So it can't specify multiple config/job level options via command line interface.

Global level options

  • --help
  • --version
  • --info
  • --list

Config level options

  • --exporters
  • --counters
  • --memory
  • --threading
  • --exceptions
  • --disasm
  • --profiler
  • --allStats
  • --statisticalTest
  • --artifacts
  • --filter
  • --hide
  • Options that are defined at ConfigOptions
  • --maxWidth
  • --buildTimeout
  • --wakeLock

Job level options

Other that are not listed above.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions