Ben Coburn <[email protected]> writes:

> While exercising some code, I noticed that darcs 2.1.2 no longer
> reorders patches when 'optimize --reorder-patches' is called on a
> repository in the 'hashed, darcs-2' format. Does this mean that the
> new format is efficient enough to make --reorder-patches irrelevant?
> If so, that's a good thing!
>
> p.s. Maybe commands should start grouping options into 'Options:',
> 'Advanced Options:', and some group for options that only apply to the
> old repository format. It would be nice to have options that no longer
> apply to the current format marked somehow in the help/manual.

In general, the "legacy" options should already either be no-ops or
issue a "I'm an alias for <new option>!" when used in a darcs-2 repo.

I'm working on improving the long help (below the options in "darcs foo
--help") to also mention this, but I'm not sure how useful it would be
to also put those options in a separate section.  How many obsolete
options exist?

Actually, I guess I feel that it should be possible to tell what the
"common" options are by looking at the ones that have a short option (-f
as well as --foo).  How would people feel about a single option list per
command, and sorting it?

For example, "darcs pull --help" would have the following.  I already
have an (ugly) patch to sort the options.  Perhaps we should also
simplify things by compressing the --foo and --no-foo or --dont-foo
options, e.g. "--[no-]foo".  Incidentally, why do we have both --no and
--dont prefixes?!

Options:
  -a, --all                          answer yes to all patches
  -h, --help                         shows brief description of command and its 
arguments
  -i, --interactive                  prompt user interactively
  -p, --patches=REGEXP               select patches matching REGEXP
  -q, --quiet                        suppress informational output
  -s, --summary                      summarize changes
  -t, --tags=REGEXP                  select tags matching REGEXP
  -v, --verbose                      give verbose output
      --allow-conflicts              allow conflicts, but don't mark them
      --complement                   take complement of repositories (in order 
listed)
      --compress                     create compressed patches
      --debug                        give only debug output
      --debug-http                   give debug output for curl and libwww
      --debug-verbose                give debug and verbose output
      --disable                      disable this command
      --dont-allow-conflicts         fail on patches that create conflicts
      --dont-compress                don't create compressed patches
      --dont-set-scripts-executable  don't make scripts executable
      --dry-run                      don't actually take the action
      --external-merge=COMMAND       use external tool to merge conflicts
      --http-pipelining              enable HTTP pipelining
      --ignore-times                 don't trust the file modification times
      --ignore-unrelated-repos       do not check if repositories are unrelated
      --intersection                 take intersection of all repositories
      --mark-conflicts               mark conflicts [DEFAULT]
      --matches=PATTERN              select patches matching PATTERN
      --no-cache                     don't use patch caches
      --no-deps                      don't automatically fulfill dependencies
      --no-http-pipelining           disable HTTP pipelining [DEFAULT]
      --no-posthook                  don't run posthook command
      --no-prehook                   don't run prehook command
      --no-set-default               don't set default repository
      --no-ssh-cm                    don't use SSH ControlMaster feature 
[DEFAULT]
      --no-summary                   don't summarize changes
      --no-test                      don't run the test script
      --nolinks                      do not link repository or pristine to 
sibling
      --posthook=COMMAND             specify command to run after this darcs 
command
      --prehook=COMMAND              specify command to run before this darcs 
command
      --prompt-posthook              prompt before running posthook [DEFAULT]
      --prompt-prehook               prompt before running prehook [DEFAULT]
      --remote-repo=URL              specify the remote repository URL to work 
with
      --repodir=DIRECTORY            specify the repository directory in which 
to run
      --run-posthook                 run posthook command without prompting
      --run-prehook                  run prehook command without prompting
      --set-default                  set default repository [DEFAULT]
      --set-scripts-executable       make scripts executable
      --ssh-cm                       use SSH ControlMaster feature
      --standard-verbosity           neither verbose nor quiet output
      --test                         run the test script
      --timings                      provide debugging timings information
      --umask=UMASK                  specify umask to use when writing
      --union                        take union of all repositories [DEFAULT]
      --xml-output                   generate XML formatted output

_______________________________________________
darcs-users mailing list
[email protected]
http://lists.osuosl.org/mailman/listinfo/darcs-users

Reply via email to