Nicolas Dumazet <nicdumz.commits@gmail.com> [Sat, 30 Apr 2011 17:38:06 +0200] rev 925
tests: move test bundles in a bundles/ subdirectory
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sun, 01 May 2011 10:37:57 +0100] rev 924
Merge with stable
Idan Kamara <idankk86@gmail.com> [Sat, 30 Apr 2011 15:20:27 +0300] rev 923
run-tests: print a new line before writing the diff
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sat, 30 Apr 2011 11:41:20 +0100] rev 922
Merge with stable
Idan Kamara <idankk86@gmail.com> [Fri, 29 Apr 2011 20:29:22 +0300] rev 921
run-tests: don't count test as succeeded if it failed
regressed around ec4ae5727f07
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sat, 30 Apr 2011 01:25:43 +0100] rev 920
Merge with stable
Matt Mackall <mpm@selenic.com> [Mon, 25 Apr 2011 17:01:34 -0500] rev 919
run-tests: do chdir for tests under a lock for thread safety
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Mon, 25 Apr 2011 16:17:08 -0500] rev 918
run-tests: add iolock to vlog
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Mon, 25 Apr 2011 23:09:47 +0100] rev 917
Merge with stable
Patrick Mezard <pmezard@gmail.com> [Mon, 25 Apr 2011 18:42:31 +0200] rev 916
run-tests: display diff before prompting with --interactive
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Sun, 24 Apr 2011 17:52:46 -0500] rev 915
run-tests: fix some missing i/o locks
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Sun, 24 Apr 2011 16:46:37 -0500] rev 914
run-tests: add a lock for console I/O
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Sun, 24 Apr 2011 16:42:15 -0500] rev 913
run-tests: switch timeout handling from alarm to helper thread
This should be slightly more portable than signals and be compatible
with threaded dispatch.
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Sun, 24 Apr 2011 16:42:11 -0500] rev 912
run-tests: add locking on results struct
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Mon, 25 Apr 2011 01:42:21 +0100] rev 911
Merge with stable
Patrick Mezard <pmezard@gmail.com> [Sun, 24 Apr 2011 23:33:48 +0200] rev 910
run-tests: fix --interactive (after 994ad067ac6e)
- Do not prompt if there is no .err file
- Fix source and target paths
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Fri, 22 Apr 2011 14:04:34 -0500] rev 909
run-tests: move test loop into a helper function
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Fri, 22 Apr 2011 12:24:22 -0500] rev 908
run-tests: use a results dict
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Fri, 22 Apr 2011 11:36:40 -0500] rev 907
run-tests: move blacklist and retest filtering to runone
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Fri, 22 Apr 2011 11:32:05 -0500] rev 906
run-tests: keep a list of passed tests
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Fri, 22 Apr 2011 11:24:27 -0500] rev 905
run-tests: move keyword checking into runone
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Fri, 22 Apr 2011 11:22:02 -0500] rev 904
run-tests: add ignores list
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Thu, 21 Apr 2011 18:38:30 -0500] rev 903
run-tests: move existence/name format check into runone
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Thu, 21 Apr 2011 18:19:45 -0500] rev 902
run-tests: move interactive handling into runone
[ original upstream message ]
Adrian Buehlmann <adrian@cadifra.com> [Wed, 20 Apr 2011 21:41:41 +0200] rev 901
move canonpath from util to scmutil
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sun, 10 Apr 2011 20:51:39 +0200] rev 900
Merge with stable
Matt Mackall <mpm@selenic.com> [Sat, 09 Apr 2011 15:52:19 -0500] rev 899
tests: better output on timeouts
Formerly, timeouts would generate huge scrollback-destroying diffs and
weird -15 return codes in the summary. Now we simply report "timed
out".
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Tue, 05 Apr 2011 16:35:41 +0200] rev 898
Merge with stable
Martin Geisler <mg@aragost.com> [Tue, 05 Apr 2011 11:07:25 +0200] rev 897
keyword: convert a verbatim block to a field list
[ orginal upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sun, 27 Mar 2011 13:15:35 +0200] rev 896
Merge with stable
Idan Kamara <idankk86@gmail.com> [Fri, 25 Mar 2011 22:15:37 +0200] rev 895
tests: set HOME to the test temp dir (issue2707)
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Mon, 14 Mar 2011 23:11:14 +0100] rev 894
Merge with default
Christian Ebert <blacktrash@gmx.net> [Mon, 14 Mar 2011 12:26:50 +0100] rev 893
Offer additional datefilters when the extension is enabled
Before the additional datefilters (utcdate, svnisodate, svnutcdate)
were used when kwtemplater was initialized. Now they always be used
once the extension is enabled.
Christian Ebert <blacktrash@gmx.net> [Mon, 14 Mar 2011 12:19:59 +0100] rev 892
Docstrings for additional date filters
Christian Ebert <blacktrash@gmx.net> [Sat, 12 Mar 2011 13:19:55 +0100] rev 891
Merge with stable
Patrick Mezard <pmezard@gmail.com> [Sat, 12 Mar 2011 12:46:31 +0100] rev 890
templates: document missing keywords or filters
Keywords keywords are not documented yet but are turned into function
definitions to avoid lambda docstring weirdness.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Thu, 10 Mar 2011 22:02:02 +0100] rev 889
Merge with stable
Martin Geisler <mg@aragost.com> [Thu, 10 Mar 2011 13:43:47 +0100] rev 888
tests: use $TESTTMP more and use (glob) less
This locks down the test output a little more.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Thu, 10 Mar 2011 22:01:08 +0100] rev 887
stable: merge with default
Christian Ebert <blacktrash@gmx.net> [Mon, 07 Mar 2011 14:43:27 +0100] rev 886
README: minimal test command line
Christian Ebert <blacktrash@gmx.net> [Mon, 07 Mar 2011 14:41:14 +0100] rev 885
Merge with stable
Gilles Moris <gilles.moris@free.fr> [Thu, 10 Feb 2011 09:03:06 +0100] rev 884
rollback: clarifies the message about the reverted state (issue2628)
Previously, when rolling back a transaction, some users could be confused
between the level to which the store is rolled back, and the new parents
of the working directory.
$ hg rollback
rolling back to revision 4 (undo commit)
With this change:
$ hg rollback
repository tip rolled back to tip revision 4 (undo commit)
working directory now based on revision 2 and 1
So now the user can realize that the store has been rolled back to an older
tip, but also that the working directory may not on the tip (here we are
rolling back the merge of the heads 2 and 1)
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Mon, 07 Mar 2011 14:34:27 +0100] rev 883
Merge with stable
Patrick Mezard <pmezard@gmail.com> [Sun, 06 Mar 2011 14:19:57 +0100] rev 882
run-tests: handle mixed comment lines in blacklists
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Tue, 15 Feb 2011 10:40:29 +0100] rev 881
Merge with stable
Dan Villiom Podlaski Christiansen <danchr@gmail.com> [Fri, 24 Dec 2010 15:23:01 +0100] rev 880
explicitly close files
Add missing calls to close() to many places where files are
opened. Relying on reference counting to catch them soon-ish is not
portable and fails in environments with a proper GC, such as PyPy.
[ original upstream description ]
Christian Ebert <blacktrash@gmx.net> [Fri, 11 Feb 2011 04:55:00 +0100] rev 879
Merge with stable
Simon Heimberg <simohe@besonet.ch> [Wed, 02 Feb 2011 23:21:13 +0100] rev 878
run-tests: only call WIFEXITED on systems it exists
not on Windows or in jython
[ original upstream message ]
Simon Heimberg <simohe@besonet.ch> [Tue, 01 Feb 2011 20:47:05 +0100] rev 877
run-tests: loadable as module
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Wed, 26 Jan 2011 17:49:11 +0000] rev 876
stable: merge with default
Christian Ebert <blacktrash@gmx.net> [Sun, 23 Jan 2011 03:15:44 +0100] rev 875
Move repo.__class__ assignment out of monkeypatch context
A cosmetic change to improve readability.
Christian Ebert <blacktrash@gmx.net> [Sun, 23 Jan 2011 03:15:39 +0100] rev 874
Inform user about current keywordset in kwdemo
The kwdemo --default output now looks roughly like this:
configuration using default cvs keywordset
[extensions]
keyword =
[keyword]
demo.txt =
[keywordset] * section added with this change
svn = False
[keywordmaps]
...
Christian Ebert <blacktrash@gmx.net> [Sun, 16 Jan 2011 15:45:26 +0100] rev 873
Update documentation for kwshrink
* remove obsolete reference to potential problems with merge and import
* emphasize that running kwshrink before configuration changes which
affect active/expanded keywords is mandatory
Christian Ebert <blacktrash@gmx.net> [Sat, 11 Dec 2010 12:49:10 +0100] rev 872
Merge with default
Christian Ebert <blacktrash@gmx.net> [Sun, 05 Dec 2010 13:07:28 +0100] rev 871
Make kwfiles show deleted files configured for expansion
Christian Ebert <blacktrash@gmx.net> [Sun, 05 Dec 2010 13:07:24 +0100] rev 870
Colorize hg kwfiles output
Christian Ebert <blacktrash@gmx.net> [Thu, 02 Dec 2010 09:44:01 +0100] rev 869
Merge with default
Christian Ebert <blacktrash@gmx.net> [Thu, 02 Dec 2010 09:42:21 +0100] rev 868
Copy: when copied source is a symlink, follow it
1) hg cp symlink copy -> copy is a symlink.
2) cp symlink copy; hg cp -A symlink copy -> copy is a regular file.
In the second case we have to follow the symlink to its target
to find out whether we have to unexpand keywords in the copy.
Add test covering the case where the copied link's target is ignored
by keyword but has content which would match the regex for expanded
keywords to check whether we indeed leave the destination alone.
Christian Ebert <blacktrash@gmx.net> [Thu, 02 Dec 2010 09:41:56 +0100] rev 867
Merge with stable
Martin Geisler <mg@aragost.com> [Mon, 22 Nov 2010 18:15:58 +0100] rev 866
code style: prefer 'is' and 'is not' tests with singletons
[ original upstream description ]
Christian Ebert <blacktrash@gmx.net> [Mon, 22 Nov 2010 20:45:42 +0100] rev 865
Merge with default
Christian Ebert <blacktrash@gmx.net> [Mon, 22 Nov 2010 20:44:36 +0100] rev 864
s/config/configuration/ in help
Christian Ebert <blacktrash@gmx.net> [Tue, 16 Nov 2010 16:59:06 +0100] rev 863
Merge with stable
Nicolas Dumazet <nicdumz.commits@gmail.com> [Tue, 16 Nov 2010 10:33:19 +0900] rev 862
run-tests: fix --debug for .t tests
When --debug is given to the test runner, run() returns (retcode, None).
Do not try to use None output as a string, and return directly, similarly
as other testers.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Tue, 09 Nov 2010 10:31:54 +0000] rev 861
Merge with stable
Erik Zielke <ez@aragost.com> [Mon, 08 Nov 2010 10:56:47 +0100] rev 860
run-test: fixed wrong parenthesis
Fixed wrong placement of end parenthesis, from b911cb80c671
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Mon, 08 Nov 2010 11:11:23 +0000] rev 859
Merge with stable
Mads Kiilerich <mads@kiilerich.com> [Mon, 08 Nov 2010 01:35:41 +0100] rev 858
tests: use (esc) markup for string-escape
This makes test output less ambiguous.
Failing test output will be escaped and marked up if necessary. A Python
string-escape compatible encoding is used, but not everything is encoded -
especially not \n and \t and '.
[ original upstream message ]
Mads Kiilerich <mads@kiilerich.com> [Mon, 08 Nov 2010 01:35:40 +0100] rev 857
tests: (no-eol) markup for command output without trailing LF
Output chunks without a trailing LF will now work but get (no-eol) appended.
This change mostly moves code around so we can handle that an output line
starts with data from previous command, followed by salt and the next command.
[ original upstream message ]
Mads Kiilerich <mads@kiilerich.com> [Sat, 06 Nov 2010 00:31:44 +0100] rev 856
tests: handle .t files without trailing LF
9a2de8dae27b made this simple test-test.t succeed silently:
$ printf ' $ true' > test-test.t
but did not give a usable .err in this case:
$ printf ' $ false' > test-test.t
The missing LF will now be fixed in the test output and it will thus give a
test failure and a solution in the .err file.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Fri, 05 Nov 2010 10:01:23 +0000] rev 855
Merge with default
Christian Ebert <blacktrash@gmx.net> [Fri, 05 Nov 2010 10:00:11 +0000] rev 854
Turn regexes and escaped keywords into a propertycache
Christian Ebert <blacktrash@gmx.net> [Tue, 02 Nov 2010 14:04:21 +0100] rev 853
Merge with stable
Martin Geisler <mg@aragost.com> [Mon, 01 Nov 2010 10:24:07 +0100] rev 852
run-tests: use regex when searching for $HGPORT in test output
This prevents spurious errors when a changeset hash happens to match
the port number. Before, this invocation gave a test failure:
$ ./run-tests.py test-log.t --port 24427
ERROR: /home/mg/src/mercurial-crew/tests/test-log.t output changed
--- /home/mg/src/mercurial-crew/tests/test-log.t
+++ /home/mg/src/mercurial-crew/tests/test-log.t.err
@@ -626,12 +626,12 @@
$ hg log -b default
changeset: 2:c3a4f03cc9a7
- parent: 0:24427303d56f
+ parent: 0:$HGPORT303d56f
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: commit on default
...
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Wed, 27 Oct 2010 11:15:31 +0100] rev 851
Merge with stable
Kevin Bullock <kbullock@ringworld.org> [Wed, 20 Oct 2010 17:38:21 -0500] rev 850
pull: silence spurious 'requesting all changes' message
When issuing `hg pull -r REV` in a repo with no common ancestor with the
remote repo, the message 'requesting all changes' is printed, even though only
the changese that are ancestors of REV are actually requested. This can be
confusing for users (see
http://www.selenic.com/pipermail/mercurial/2010-October/035508.html).
This silences the message if (and only if) the '-r' option was passed.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Mon, 25 Oct 2010 19:21:06 +0100] rev 849
Function to look up changectx for expansion
Similarly rename variable in kwtemplater.overwrite().
Christian Ebert <blacktrash@gmx.net> [Mon, 25 Oct 2010 19:21:06 +0100] rev 848
Compile regexes on demand
Christian Ebert <blacktrash@gmx.net> [Mon, 25 Oct 2010 20:00:18 +0100] rev 847
Merge with default
Christian Ebert <blacktrash@gmx.net> [Mon, 25 Oct 2010 19:21:06 +0100] rev 846
Fix regressions introduced in 9d01f9cab5e2
- dirstate of overwritten files must be forced to normal
with kwexpand/kwshrink, not commit.
- recorded files must be weeded before overwriting.
- add test cases.
Christian Ebert <blacktrash@gmx.net> [Wed, 20 Oct 2010 22:46:09 +0100] rev 845
Merge with stable
Yuya Nishihara <yuya@tcha.org> [Sat, 02 Oct 2010 22:57:25 +0900] rev 844
tests: accept \-escaped test output
It changes tsttest to accept expected outputs in python-style \-escapes.
It aims to avoid trouble with outputs for non-ascii, color and progress
tests.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Fri, 15 Oct 2010 00:36:45 +0200] rev 843
Merge with default
Christian Ebert <blacktrash@gmx.net> [Thu, 14 Oct 2010 22:53:17 +0200] rev 842
Only use expensive fctx.cmp when needed
Restrict expensive cmp to cases when:
- comparing against working directory
and
- encode filters active
or
- path is configured for keyword expansion
Christian Ebert <blacktrash@gmx.net> [Wed, 13 Oct 2010 09:21:19 +0100] rev 841
Merge with stable
Nicolas Dumazet <nicdumz.commits@gmail.com> [Tue, 27 Jul 2010 23:07:30 +0900] rev 840
filectx: use ctx.size comparisons to speed up ctx.cmp
Comparing sizes is cheaper than comparing file contents, as it does not
involve reading the file on disk or from the filelog.
It is however not always possible: some extensions, or encode filters,
change data when extracting it to the working directory.
[ original upstream description ]
Christian Ebert <blacktrash@gmx.net> [Wed, 13 Oct 2010 09:18:46 +0100] rev 839
Merge with stable
Christian Ebert <blacktrash@gmx.net> [Tue, 12 Oct 2010 16:29:32 +0100] rev 838
Code cleanup
- move preselection of expansion candidates for rollback
and record into helper function
- same overwrite order in rollback and record:
1. modified, 2. added
- self.wlock() inside kwrepo class instead of repo.wlock()
Christian Ebert <blacktrash@gmx.net> [Sun, 10 Oct 2010 01:07:16 +0100] rev 837
enforce subn method via boolean switch
There are only 2 patterns to choose, and so far only 1 case
where kwtemplater.re_kw.subn is applied on data read from
the working directory: when recording added files.
With this change the code reflects more closely the boolean
character of the switch and underlines the special case.
Christian Ebert <blacktrash@gmx.net> [Sun, 10 Oct 2010 01:07:16 +0100] rev 836
Fix weeding of expansion candidates when recording
Rearrange tests to check this, i.e. that there are changes
in other files, not only the recorded one.
Christian Ebert <blacktrash@gmx.net> [Sun, 10 Oct 2010 01:10:13 +0100] rev 835
Merge with stable
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sat, 09 Oct 2010 16:27:10 -0500] rev 834
run-tests.py: remove support for .bat files
[ original upstream message ]
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sat, 09 Oct 2010 16:25:28 -0500] rev 833
run-tests.py: do not install hg when the tests do no exist
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sat, 09 Oct 2010 15:47:19 +0100] rev 832
Merge with stable
Mads Kiilerich <mads@kiilerich.com> [Sat, 09 Oct 2010 07:13:51 -0500] rev 831
test-keyword: ignore subject in notify hook mails
Long tmpdir names caused truncation of subject anyway, and that made $TESTTMP
replacement fail.
[ original upstream description ]
Mads Kiilerich <mads@kiilerich.com> [Sat, 09 Oct 2010 07:13:49 -0500] rev 830
test-keyword: fix test glob to ACL/SELinux flag
[ original upstream description ]
Mads Kiilerich <mads@kiilerich.com> [Fri, 08 Oct 2010 22:36:11 -0500] rev 829
tests: reintroduce ":$HGPORT" in test output
This reduces the number of patterns that must be adjusted when writing tests.
[ original upstream description ]
Mads Kiilerich <mads@kiilerich.com> [Fri, 08 Oct 2010 22:36:10 -0500] rev 828
tests: remove redundant globs
Many globs now just match $TESTTMP and is no longer needed.
[ original upstream description ]
Erik Zielke <ez@aragost.com> [Thu, 30 Sep 2010 09:49:40 +0200] rev 827
tests: removed test names in tests
The name of the test files is replaced with a glob * expression,
thereby the tests does not depend on the filename of the file they are
in.
[ original upstream description ]
Mads Kiilerich <mads@kiilerich.com> [Fri, 08 Oct 2010 22:36:10 -0500] rev 826
tests: replace test tmp directory with $TESTTMP in test output
This reduces the number of patterns that must be adjusted when writing tests.
[ original upstream description ]
Christian Ebert <blacktrash@gmx.net> [Sat, 09 Oct 2010 12:26:56 +0100] rev 825
Merge with stable
Patrick Mezard <pmezard@gmail.com> [Fri, 08 Oct 2010 17:00:38 -0500] rev 824
run-tests: handle .tst not ending with an LF
[ original upstream description ]
Thomas Arendsen Hein <thomas@intevation.de> [Mon, 27 Sep 2010 22:49:30 +0200] rev 823
tests: show skip reason instead of "irrelevant" with unified tests, too
parsehghaveoutput expects just the test output, not the merged test/output,
so for skipped unified tests e.g.:
Skipped test-convert-darcs.t: missing feature: irrelevant
was shown instead of:
Skipped test-convert-darcs.t: missing feature: darcs client
[ original upstream description ]
Martin Geisler <mg@lazybytes.net> [Sun, 26 Sep 2010 22:22:59 +0200] rev 822
run-tests: move build/ directory to HGTMP
Before, running a test would give you a build/ directory in the root
of your Mercurial source tree. The directory had a full copy of the
the source, so a grep in '**/*.py' would find files inside build/.
[ original upstream description ]
Matt Mackall <mpm@selenic.com> [Fri, 08 Oct 2010 20:12:40 -0500] rev 821
keyword: fix test glob
[ original upstream description ]
Christian Ebert <blacktrash@gmx.net> [Sat, 09 Oct 2010 11:52:32 +0100] rev 820
Merge with default
Christian Ebert <blacktrash@gmx.net> [Sat, 09 Oct 2010 11:35:31 +0100] rev 819
Switch kwtemplater.record in kw_dorecord()
Obsoletes the need for a global recordcommands variable.
Christian Ebert <blacktrash@gmx.net> [Sat, 09 Oct 2010 11:35:24 +0100] rev 818
Specific regular expressions depending on read mode
More safeguarding against accidental (un)expansion:
Reading filelog: act only on \$(kw1|kw2|..)\$ as keywords are always
stored unexpanded.
Reading wdir: act only on \$(kw1|kw2|..): [^$\n\r]*? \$ as we only
are interested in expanded keywords in this situation.
Note: we cannot use ..): [^$\n\r]+? \$ because e.g.
the {branch} template might be empty.
hg record is a special case as we read from the working directory and
need one regex each for modified and added files. Therefore test
recording an added file.
This way we finally also forbid sequences like $Id: $ being treated
as keywords.
Christian Ebert <blacktrash@gmx.net> [Sat, 09 Oct 2010 11:34:55 +0100] rev 817
test: remove remaining sed calls
Christian Ebert <blacktrash@gmx.net> [Sat, 09 Oct 2010 11:34:39 +0100] rev 816
disable expansion in kwfilelog.read() if file renamed in node
Simplifies kwfilelog.cmp() and avoids fiddling with/importing revlog.
Reorder imports alphabetically.
Christian Ebert <blacktrash@gmx.net> [Sat, 09 Oct 2010 11:33:38 +0100] rev 815
Make iskwfile() a weeding method in lieu of a boolean
Update iskwfile docstring.
Christian Ebert <blacktrash@gmx.net> [Sat, 09 Oct 2010 11:33:12 +0100] rev 814
Support copy and rename
copy/rename destinations being unversioned and possibly ignored by
the extension should not contain expanded keywords.
Files copied/renamed from an ignored source are not touched.
Add tests covering both of the above cases, plus the corner case of
cp symlink foo; hg cp -A symlink foo (where foo becomes a regular file).