sapling/mercurial
Boris Feld 37426f06b5 template: add successors template
Add a 'successorssets' template that returns the list of all closest known
sucessorssets for a changectx. The elements of the list are changesets.

The "closest successors" are the first locally known revisions encountered
while, walking successors markers. It uses successorsets previously modified
to support the closest argument.

This logic respect repository filtering. So hidden revision will be skipped by
this logic unless --hidden is specified. Since we only display the visible
predecessors, this template will not display anything in most case. It makes a
good candidate for inclusion in the default log output.

I updated the test-obsmarker-template.t test file introduced with the
predecessors template to test successorssets template.
2017-07-03 11:22:00 +02:00
..
cext revlog: address review feedback for deltachain C implementation 2017-07-01 19:35:17 -07:00
cffi cffi: remove superfluous "if True" blocks 2017-05-02 21:45:10 +09:00
default.d mergetools.rc: find OSX FileMerge in the new location inside Xcode 4.3 2015-10-16 11:37:34 +02:00
help merge with stable 2017-07-05 11:55:26 -04:00
hgweb configitems: register the 'server.zliblevel' config 2017-06-30 03:44:16 +02:00
httpclient httpclient: update to 54868ef054d2 of httpplus 2016-06-27 11:53:50 -04:00
pure lazymanifest: write a more efficient, pypy friendly version of lazymanifest 2016-09-12 13:37:14 +02:00
templates show: implement "stack" view 2017-07-01 22:38:42 -07:00
__init__.py py3: add pycompat.unicode and add it to importer 2017-04-07 23:35:51 +05:30
ancestor.py py3: add __bool__ to every class defining __nonzero__ 2017-03-13 12:40:14 -07:00
archival.py py3: remove use of *L syntax 2016-09-01 02:29:46 +05:30
bdiff.c bdiff: split bdiff into cpy-aware and cpy-agnostic part 2016-07-13 10:46:26 +02:00
bdiff.h bdiff: split bdiff into cpy-aware and cpy-agnostic part 2016-07-13 10:46:26 +02:00
bitmanipulation.h internals: move the bitmanipulation routines into its own file 2016-06-06 13:08:13 +02:00
bookmarks.py obsutil: move 'foreground' to the new modules 2017-06-27 01:40:34 +02:00
branchmap.py rbc: fix superfluous rebuilding from scratch - don't abuse self._rbcnamescount 2016-07-18 22:25:09 +02:00
bundle2.py obsolete: reports the number of local changeset obsoleted when unbundling 2017-06-28 03:54:19 +02:00
bundlerepo.py configitems: register the 'bundle.mainreporoot' config 2017-06-30 03:31:26 +02:00
byterange.py pycompat: switch to util.urlreq/util.urlerr for py3 compat 2016-04-06 23:22:12 +00:00
changegroup.py configitems: register the 'server.validate' config 2017-06-30 03:44:15 +02:00
changelog.py revlog: make 'storedeltachains' a "public" attribute 2016-10-14 02:25:08 +02:00
chgserver.py pager: set some environment variables if they're not set 2017-04-13 08:27:19 -07:00
cmdutil.py log: add an extension hook-point in changeset_printer 2017-06-26 15:46:24 +02:00
color.py configitems: register the 'color.mode' config 2017-06-30 03:32:09 +02:00
commands.py py3: use pycompat.bytestr instead of str 2017-06-26 17:23:10 +05:30
commandserver.py commandserver: update comment about setpgid 2016-07-18 15:59:08 +01:00
compat.h compat: define ssize_t as int on 32bit Windows, silences C4142 warning 2016-07-15 23:54:56 +09:00
config.py ui: move configlist parser to config.py 2017-03-17 09:19:56 -07:00
configitems.py configitems: register the 'progress.estimate' config 2017-06-30 03:44:04 +02:00
context.py workingfilectx: add audit() as a wrapper for wvfs.audit() 2017-06-25 22:30:14 -07:00
copies.py merge: avoid superfluous filemerges when grafting through renames (issue5407) 2016-10-25 21:01:53 +02:00
crecord.py patch: rewrite reversehunks (issue5337) 2017-06-20 23:22:38 -07:00
dagop.py dagop: make walk direction switchable so it can track descendants 2017-06-24 23:35:03 +09:00
dagparser.py error: get Abort from 'error' instead of 'util' 2015-10-08 12:55:45 -07:00
dagutil.py dagutil: use absolute_import 2015-08-08 19:04:09 -07:00
debugcommands.py obsolete: closest divergent support 2017-06-30 15:27:19 +02:00
destutil.py show: implement "stack" view 2017-07-01 22:38:42 -07:00
dirstate.py dirstate: centralize _cwd handling into _cwd method 2017-07-03 02:52:40 +09:00
dirstateguard.py dirstateguard: move to new module so I can break some layering violations 2016-11-21 21:29:32 -05:00
discovery.py discovery: prevent crash caused by prune marker having no parent data 2017-04-19 23:10:05 +09:00
dispatch.py dispatch: remove unused _loaded 2017-06-24 02:39:21 +09:00
dummycert.pem
encoding.py py3: add utility to forward __str__() to __bytes__() 2017-06-24 13:48:04 +09:00
error.py error: rename RichIOError to PeerTransportError 2017-04-16 11:12:37 -07:00
exchange.py pushrace: avoid crash on bare push when using concurrent push mode 2017-06-28 17:41:25 +02:00
exewrapper.c exewrapper: add .dll to LoadLibrary() argument 2016-04-27 09:23:39 -07:00
extensions.py configitems: add an official API for extensions to register config item 2017-06-17 13:48:20 +02:00
fancyopts.py py3: slice over bytes to prevent getting it's ascii value 2017-06-25 08:36:51 +05:30
filelog.py revlog: merge hash checking subfunctions 2016-12-13 14:21:36 +00:00
filemerge.py filemerge: convert a couple of wvfs calls in internal mergetools to contexts 2017-06-26 22:52:15 -07:00
fileset.py help: clarify quotes are needed for filesets.size expressions 2016-09-21 16:33:37 +00:00
formatter.py formatter: proxy fm.context() through converter 2017-06-26 09:33:01 +09:00
graphmod.py dagop: split module hosting DAG-related algorithms from revset 2016-10-16 18:03:24 +09:00
hbisect.py bisect: move check_state into the bisect module 2016-08-24 04:25:20 +02:00
help.py help: explain how to access subtopics in internals 2017-04-19 17:04:22 -07:00
hg.py py3: check for bytes instead of str in isinstance 2017-06-22 03:20:11 +05:30
hook.py py3: convert keys of kwargs back to bytes using pycompat.byteskwargs() 2017-06-17 15:29:26 +05:30
httpconnection.py httpconnection: allow a global auth.cookiefile config entry 2017-03-09 22:35:10 -08:00
httppeer.py httppeer: unify hint message for PeerTransportError 2017-05-01 05:52:36 +09:00
i18n.py i18n: make the locale directory name the same string type as the datapath 2016-10-08 05:26:18 -04:00
keepalive.py keepalive: send HTTP request headers in a deterministic order 2017-04-13 18:04:38 -07:00
localrepo.py revlog: backed out changeset ee3dde8eb4c5 2017-07-04 10:17:14 -04:00
lock.py lock: avoid unintentional lock acquisition at failure of readlock 2017-05-01 19:59:13 +09:00
lsprof.py lsprof: use print function 2016-01-02 11:40:53 -08:00
lsprofcalltree.py lsprofcalltree: use print function 2016-01-02 11:45:29 -08:00
mail.py mail: handle renamed email.Header 2016-10-07 17:30:11 +02:00
manifest.py manifest: apply checkambig=True only for root 00manifest.i 2017-06-30 01:47:48 +09:00
match.py i18n: translate abort messages 2016-06-14 11:53:55 +02:00
mdiff.py py3: use pycompat.strkwargs() to convert kwargs keys to str 2017-06-27 00:23:32 +05:30
merge.py obsutil: move 'foreground' to the new modules 2017-06-27 01:40:34 +02:00
mergeutil.py checkunresolved: move to new package to help avoid import cycles 2016-11-21 21:31:45 -05:00
minirst.py help: search section of help topic by translated section name correctly 2016-05-13 07:19:59 +09:00
mpatch.c internals: move the bitmanipulation routines into its own file 2016-06-06 13:08:13 +02:00
mpatch.h mpatch: raise MemoryError instead of mpatchError if lalloc() failed 2016-08-07 10:06:56 +09:00
namespaces.py namespaces: record and expose whether namespace is built-in 2017-06-24 14:52:15 -07:00
node.py node: use byte literals to construct nullid and wdirid 2016-03-12 14:04:57 -08:00
obsolete.py obsolete: pass cache argument of successors set explicitly 2017-06-30 15:02:19 +02:00
obsutil.py obsolete: closest divergent support 2017-06-30 15:27:19 +02:00
parser.py parser: preserve order of keyword arguments 2017-04-09 11:58:27 +09:00
patch.py patch: make parsepatch optionally trim context lines 2017-07-04 16:41:28 -07:00
pathutil.py util: rename checkcase() to fscasesensitive() (API) 2016-08-30 09:22:53 -07:00
peer.py py3: convert to next() function 2016-05-16 21:30:53 +00:00
phases.py bundle: add config option to include phases 2017-06-22 10:10:02 -07:00
policy.py policy: add cffi policy for PyPy 2016-06-07 15:35:58 +02:00
posix.py merge with stable 2017-01-04 14:52:59 -05:00
profiling.py check-config: syntax to allow inconsistent config values 2017-07-01 20:34:27 -07:00
progress.py configitems: register the 'progress.estimate' config 2017-06-30 03:44:04 +02:00
pushkey.py pushkey: use absolute_import 2015-08-08 19:57:27 -07:00
pvec.py pvec: use absolute_import 2015-12-21 21:32:58 -08:00
pycompat.py pycompat: verify sys.argv exists before forwarding it (issue5493) 2017-03-07 13:24:24 -05:00
rcutil.py pager: use less as a fallback on Unix 2017-04-28 20:51:14 +09:00
registrar.py configitems: add an official API for extensions to register config item 2017-06-17 13:48:20 +02:00
repair.py config: register the 'devel.strip-obsmarkers' config 2017-06-28 13:32:36 +02:00
repoview.py cleanup: replace uses of util.(md5|sha1|sha256|sha512) with hashlib.\1 2016-06-10 00:12:33 -04:00
revlog.py revlog: backed out changeset ee3dde8eb4c5 2017-07-04 10:17:14 -04:00
revset.py revset: add depth limit to descendants() (issue5374) 2017-06-24 23:05:57 +09:00
revsetlang.py revsetlang: check arguments passed to ancestors() before optimizing to only() 2017-06-18 11:57:28 +09:00
scmposix.py pager: use less as a fallback on Unix 2017-04-28 20:51:14 +09:00
scmutil.py obsolete: reports the number of local changeset obsoleted when unbundling 2017-06-28 03:54:19 +02:00
scmwindows.py pager: use less as a fallback on Unix 2017-04-28 20:51:14 +09:00
server.py serve: add support for Mercurial subrepositories 2017-04-15 18:05:40 -04:00
setdiscovery.py setdiscovery: use iterbatch interface instead of batch 2016-03-01 17:44:41 -05:00
similar.py similar: remove caching from the module level 2017-01-13 11:42:36 -08:00
simplemerge.py py3: convert kwargs' keys' to str using pycompat.strkwargs() 2017-06-22 03:16:16 +05:30
smartset.py smartset: fix generatorset.last() to not return the first element (issue5609) 2017-06-27 23:50:22 +09:00
sshpeer.py py3: use pycompat.byteskwargs() to convert kwargs' keys to bytes 2017-06-27 00:20:55 +05:30
sshserver.py wireproto: compress data from a generator 2016-10-16 11:10:21 -07:00
sslutil.py sslutil: reference fingerprints config option properly (issue5559) 2017-05-08 09:30:26 -07:00
statichttprepo.py manifest: make manifestlog a storecache 2016-10-18 17:33:39 -07:00
statprof.py statprof: require input file 2017-01-18 22:45:07 -08:00
store.py store: py26 compat, don't use a dict comprehension 2016-10-09 12:58:22 +02:00
streamclone.py streamclone: stop using 'vfs.mustaudit = False' 2017-07-02 04:26:34 +02:00
subrepo.py subrepo: move prompts out of the if (issue5505) 2017-03-20 04:36:55 -07:00
tagmerge.py tagmerge: use 'wvfs' instead of 'wfile' 2017-03-15 00:28:58 -07:00
tags.py tag: make sure the repository is locked when tagging 2017-07-02 01:41:37 +02:00
templatefilters.py templatefilters: fix crash by string formatting of '{x|splitlines}' 2017-04-15 10:51:17 +09:00
templatekw.py template: add successors template 2017-07-03 11:22:00 +02:00
templater.py py3: convert kwargs' keys' to str using pycompat.strkwargs() 2017-06-22 03:16:16 +05:30
transaction.py strip: add a delayedstrip method that works in a transaction 2017-06-25 10:38:45 -07:00
treediscovery.py error: get Abort from 'error' instead of 'util' 2015-10-08 12:55:45 -07:00
txnutil.py
ui.py configitems: support callable as a default value 2017-06-28 13:50:20 +02:00
unionrepo.py configitems: register the 'bundle.mainreporoot' config 2017-06-30 03:31:26 +02:00
upgrade.py upgrade: register all format variants in a list 2017-04-12 16:48:13 +02:00
url.py url: support auth.cookiesfile for adding cookies to HTTP requests 2017-03-09 22:40:52 -08:00
util.py py3: add b'' to make the regex pattern bytes 2017-06-25 03:11:55 +05:30
verify.py verify: fix length check 2017-03-29 14:49:14 -07:00
vfs.py vfs: drop the 'mustaudit' API 2017-07-02 04:26:42 +02:00
win32.py py3: use pycompat.getcwd instead of os.getcwd 2016-12-22 01:54:17 +05:30
windows.py windows: add context manager support to mixedfilemodewrapper 2017-04-11 21:38:11 -04:00
wireproto.py configitems: register the 'server.preferuncompressed' config 2017-06-30 03:44:12 +02:00
worker.py worker: propagate exit code to main process 2017-04-15 13:27:44 +09:00