Yuya Nishihara <yuya@tcha.org> [Sun, 21 Jan 2018 15:54:18 +0900] rev 36007
log: pack filematcher and hunksfilter into changesetdiffer object
This is just a way of getting rid of clumsy makefilematcher/makehunksfilter
arguments. There might be a better abstraction, but I don't think this is bad.
This makes filematcher and hunksfilter available by default, but that should
be fine.
Yuya Nishihara <yuya@tcha.org> [Sun, 21 Jan 2018 15:50:24 +0900] rev 36006
log: drop dead code to concatenate --line-range patterns and pats
It's disabled since
2e45bbd3db7b, and the current implementation is unlikely
to be reused.
Yuya Nishihara <yuya@tcha.org> [Sun, 21 Jan 2018 15:34:37 +0900] rev 36005
logcmdutil: create hunksfilter and filematcher even if no diff option given
It's okay since
5fe6f946f111, "log: allow matchfn to be non-null even if both
--patch/--stat are off."
Yuya Nishihara <yuya@tcha.org> [Sun, 21 Jan 2018 14:37:04 +0900] rev 36004
logcmdutil: unindent diff generator of changesetprinter
Prepares for the next few patches which will make matchfn and hunksfilterfn
always available.
Yuya Nishihara <yuya@tcha.org> [Sun, 21 Jan 2018 14:07:52 +0900] rev 36003
logcmdutil: hold makefilematcher/makehunksfilter() by changesetpriner (API)
This merges self.matchfn and self.show(matchfn) into self._makefilematcher,
and does the same for hunksfilter. Because changesetprinter seems to have
too many optional arguments, makefilematcher() and makehunksfilter() will
be packed into one object by later patch.
Yuya Nishihara <yuya@tcha.org> [Sun, 21 Jan 2018 13:40:31 +0900] rev 36002
log: pass ctx to makefilematcher() and makehunksfilter() functions
This isn't important, but seems more consistent as changesetprinter.show()
takes a ctx, not a revision number.
Anton Shestakov <av6@dwimlabs.net> [Tue, 13 Feb 2018 18:12:26 +0800] rev 36001
tests: allow age to go up to triple digits in test-shelve.t
We started to glob the age of shelved changes in
51934fc796c0, which says that
sometimes tests run slow and `hg shelve --list` says "2s" instead of "1s".
However in some instances, like [1], tests run so slow that the age goes up to
double digits ("13s" in that case). When that happens, `hg shelve --list`
output has less white spaces after the age, so let's glob the spaces too. We
probably won't ever need to handle triple digits there, but I went ahead and
left only 2 required white spaces in total.
[1]: https://buildd.debian.org/status/fetch.php?pkg=mercurial&arch=sparc64&ver=4.5-1&stamp=
1518360804&raw=0
Matt Harbison <matt_harbison@yahoo.com> [Sat, 27 Jan 2018 19:02:33 -0500] rev 36000
lfs: teach the 'lfs()' fileset to handle removed files
The callstatus setting is required to notice the removal of 'lfs.test' in rev 6
in the tests, even though this isn't directly calling mctx.status(). However,
it's not needed to get the results in the tests for `hg status`, so I'm probably
missing something.
Matt Harbison <matt_harbison@yahoo.com> [Sat, 27 Jan 2018 19:22:15 -0500] rev 35999
lfs: teach '{lfs_files}' to handle removed files
Matt Harbison <matt_harbison@yahoo.com> [Sat, 27 Jan 2018 18:56:24 -0500] rev 35998
lfs: allow a pointer to be extracted from a context that removes the file
This is needed to let 'set:lfs()' and '{lfs_files}' work normally on removed
files.
Yuya suggested returning a null pointer for removed files, instead of the
pointer from the parent. The first attempt at this was to return None for a non
LFS file, and a (pointer, ctx) tuple to hold the pointer and context (or parent
pointer and context for a removed file). But this complicated the callers, even
the ones that didn't care about removed files.
Instead, let's use {} to represent a removed pointer. This has the added
convenience of being a useful representation in the template language, and only
affects the callers that care about removed files (and only slightly). Since
pointers are explicitly serialized with a call to a member function, there is no
danger of writing these to disk.