diff -r 492cd4bbca08 -r 3d0f8918351b mercurial/templater.py --- a/mercurial/templater.py Tue Aug 22 17:16:13 2017 -0400 +++ b/mercurial/templater.py Mon Jul 03 15:33:27 2017 +0200 @@ -18,6 +18,7 @@ encoding, error, minirst, + obsutil, parser, pycompat, registrar, @@ -849,6 +850,22 @@ func = lambda a, b: a % b return runarithmetic(context, mapping, (func, args[0], args[1])) +@templatefunc('obsfateverb(successors)') +def obsfateverb(context, mapping, args): + """Compute obsfate related information based on successors (EXPERIMENTAL)""" + if len(args) != 1: + # i18n: "obsfateverb" is a keyword + raise error.ParseError(_("obsfateverb expects one arguments")) + + successors = evalfuncarg(context, mapping, args[0]) + + try: + return obsutil.successorsetverb(successors) + except TypeError: + # i18n: "obsfateverb" is a keyword + errmsg = _("obsfateverb first argument should be countable") + raise error.ParseError(errmsg) + @templatefunc('relpath(path)') def relpath(context, mapping, args): """Convert a repository-absolute path into a filesystem path relative to