extdiff: allow a preconfigured merge-tool to be invoked
There are three ways to configure an extdiff tool:
1) cmd.tool = (/path/to/exe optional)
2) tool = (path/to/exe optional)
3) tool = sometool someargs
Previously, if no executable is specified in the first two forms, the named tool
must be in $PATH, or the invocation fails. Since the [merge-tools] section
already has the path to the diff executable, and/or the registry keys to find
the executable on Windows, reuse that configuration for forms 1 and 2 instead of
failing. We already fallback to [diff-tools] and then [merge-tools] for program
arguments if they aren't specified in the [extdiff] section.
Since this additional lookup only occurs if an executable is not on the $PATH
for the named tool, this is backwards compatible. For now, we assume the user
knows what he is doing if a path is provided.
This change allows a configuration file like this (assuming beyondcompare3 is
configured in merge-tools), instead of hardcoding system specific a path:
[extdiff]
beyondcompare3 =
Put here definitions of blacklists for run-tests.py
Create a file per blacklist. Each file should list the names of tests that you
want to be skipped.
File names are meant to be used as targets for run-tests.py --blacklist
option.
Lines starting with # are ignored. White spaces are stripped.
e.g. if you create a blacklist/example file containing:
test-hgrc
# some comment
test-help
then calling "run-tests.py --blacklist blacklists/example" will exclude
test-hgrc and test-help from the list of tests to run.