swift-argument-parser icon indicating copy to clipboard operation
swift-argument-parser copied to clipboard

Add first class citizen for "experimental" arguments

Open bkhouri opened this issue 1 year ago • 0 comments

As a software developer, I want to define an argument as "experimental" and have swift-argument-parser handle adding the --experimental command line prefix


There are cases when we introduce an experimental command line argument to a command line tool. (e.g.: https://github.com/swiftlang/swift-package-manager/pull/8147/files#diff-e48104d0afa05391fe5ce04c6c616253d7770dab98a1f4497ac2a346606137aeR192)

instead of providing the name experimental-<actual-name>, it would be better to provide an boolean argument isExperimental: Bool which defaults to false. This way, there is consistency in the naming of experimental flag

Acceptance Criteria:

  • an isExperimental, or equivalent, argument is available for all argument types.
  • The isExperimental argument is a Boolean and defaults to false
  • if the argument is set to false, argument parser behaves as it does today
  • If the argument is set to true, the command line argument name is prefixed the name with experimental-. e.g.: --experimental-<name>

bkhouri avatar Dec 20 '24 19:12 bkhouri