Patrick Mezard <patrick@mezard.eu> [Wed, 15 Aug 2012 22:29:09 +0200] rev 17366
fileset: matchctx.existing() must consider unknown files
By default, unknown files are ignored. If the 'unknown()' predicate
appears in the syntax tree, then they are taken in account.
Unfortunately, matchctx.existing() was filtering against non-deleted
context files, which does not include unknown files. So:
$ hg debugfileset 'binary() and unknown()'
would not return existing binary unknown files.
Patrick Mezard <patrick@mezard.eu> [Wed, 15 Aug 2012 21:44:00 +0200] rev 17365
fileset: exclude deleted files from matchctx.existing()
Running:
$ hg debugfileset 'binary()'
would traceback if there were one deleted file in the working directory.
It happened because matchctx.existing() was filtering files against the
ctx.__contains__() but deleted files are still considered part of
workingctx.
Patrick Mezard <patrick@mezard.eu> [Wed, 15 Aug 2012 18:04:50 +0200] rev 17364
test-fileset: test file status predicates
Patrick Mezard <patrick@mezard.eu> [Wed, 15 Aug 2012 19:02:04 +0200] rev 17363
fileset: actually implement 'minusset'
$ hg debugfileset 'a* - a1'
was tracing back because 'minus' symbol was not supported.
Patrick Mezard <patrick@mezard.eu> [Wed, 15 Aug 2012 17:39:03 +0200] rev 17362
tests: test filesets with test-fileset.t
Sune Foldager <cryo@cyanite.org> [Wed, 15 Aug 2012 12:12:21 +0200] rev 17361
merge with stable
Sune Foldager <cryo@cyanite.org> [Wed, 15 Aug 2012 12:04:50 +0200] rev 17360
rollback: write dirstate branch with correct encoding
Bryan O'Sullivan <bryano@fb.com> [Tue, 14 Aug 2012 08:12:09 -0700] rev 17359
Merge
Bryan O'Sullivan <bryano@fb.com> [Tue, 14 Aug 2012 08:11:15 -0700] rev 17358
templatekw: merge, preferring the second implementation
epriestley <hg@yghe.net> [Tue, 10 Jul 2012 08:43:32 -0700] rev 17357
templatekw: add p1rev, p1node, p2rev, p2node keywords
The {parents} template is cumbersome for some uses, as it does not show
anything if there's only one "natural" parent and you can't use it to get the
full 40 digit node hashes for parents unless you rely on the behavior of
the --debug flag.
Introduce four new template keywords: {p1rev}, {p2rev}, {p1node} and
{p2node}. The "node" flavors of these always show full 40 digit hashes,
but users can get the short version with a filter construction like
'{p1node|short}'.
Bryan O'Sullivan <bryano@fb.com> [Mon, 13 Aug 2012 14:04:52 -0700] rev 17356
parsers: fix an integer size warning issued by clang
epriestley <hg@yghe.net> [Tue, 10 Jul 2012 08:43:32 -0700] rev 17355
templatekw: add parent1, parent1node, parent2, parent2node keywords
The {parents} template is cumbersome for some uses, as it does not show
anything if there's only one "natural" parent and you can't use it to get the
full 40 digit node hashes for parents unless you rely on the behavior of
the --debug flag.
Introduce four new template keywords: {parent1}, {parent2}, {parent1node} and
{parent2node}. The "node" flavors of these always show full 40 digit hashes,
but users can get the short version with a filter construction like
'{parent1node|short}'.
Bryan O'Sullivan <bryano@fb.com> [Mon, 13 Aug 2012 11:49:55 -0700] rev 17354
Merge with crew-stable
sorcerer [Thu, 02 Aug 2012 19:10:45 +0400] rev 17353
revlog: don't try to partialmatch strings those length > 40
_partialmatch() does prefix matching against nodes. String passed
to _partialmetch() actualy may be any string, not prefix only.
For example,
"e410be8603932e46a51298748a4b874739037fad or 300" is a good
argument for _partialmatch().
When _partialmatch() searches using radix tree, index_partialmatch()
C function shouldn't try to match too long strings.
Matt Mackall <mpm@selenic.com> [Sat, 11 Aug 2012 12:45:53 -0500] rev 17352
merge with stable