[darcs-users] Command line options
dan at ag-projects.com
Wed Dec 15 18:34:44 UTC 2010
I noticed there is some inconsistency with the command line options.
We have so called 'positive' switches that describe an action/
condition, like --set-default or --allow-conflicts and then we have
the so called 'negative' switches that are the opposite of the
'positive' switches. The 'negative' switches are not very consistent.
For example we have --dont-allow-conflicts and --no-set-default as
counterparts for the aforementioned 'positive' switches.
I think some of them may benefit from a review and some adjusting.
Those that describe a negated action should use --dont-something when
something is an actiob. In my example --no-set-default could benefit
Of course there are 'negative' options that negate a state, not an
action and in that case --no-option works just fine (like for example
--no-ssh-cm or --no-summary).
I guess the rule here would be to use --dont-something when something
is an action and --no-something when something is a state/entity.
I see some have dual versions, like --dont-allow-conflicts and --no-
allow-conflicts. I guess the later was preserved for backward
compatibility reasons. Probably a similar thing can be done for --no-
set-default, though I don't like the idea of having multiple option
aliases, but I understand the need for preserving backward
Maybe the --no-something when something is an action, can be slowly
deprecated. In the 1st state, they coexist with --dont-something as
aliases. In the 2nd stage, they are still supported, but not
advertised anymore in the docs or shown by --help. And in the 3rd
stage they are removed.
More information about the darcs-users