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).
Christian Ebert <blacktrash@gmx.net> [Sat, 09 Oct 2010 11:33:04 +0100] rev 813
Refactor kwtemplater.overwrite()
Make kwexpand, kwshrink restricted commands - i.e. read from
filelog without expansion for substition in kwtemplater.overwrite,
and set/unset restricted mode for overwrite() in in kwcommitctx
and the dorecord wrapper.
Preselect candidates when working on changed files (rollback, record)
outside kwtemplater class, and remove 6th argument from overwrite().
Avoid duplicate substitution/search in overwrite():
Only go into restricted read mode when reading from filelog.
rollback and record read from the working directory, where
restricted mode would already shrink keywords before overwrite()
either expands or shrinks them again.
This ensures that the usual automatic operations on keywords
are turned off during overwrite() and only overwrite() itself
acts on them.
Reduce manifest calculation to the cases where it is needed.
Move helper function for expansion removal outside kwtemplater class.