Mercurial > hg
changeset 39798:ddca38941b2b
annotate: pass in wdir rev and node to formatter (BC)
This is a part of the unification series. The 'ff..' hash is preferred over
None as it is a valid revision specifier.
https://www.mercurial-scm.org/wiki/GenericTemplatingPlan#Sanity_check_output
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Sat, 15 Sep 2018 17:26:23 +0900 |
parents | a677261e7422 |
children | 0b61d21f05cc |
files | mercurial/commands.py tests/test-annotate.t tests/test-fastannotate-hg.t |
diffstat | 3 files changed, 9 insertions(+), 13 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/commands.py Sat Sep 15 17:26:22 2018 +0900 +++ b/mercurial/commands.py Sat Sep 15 17:26:23 2018 +0900 @@ -19,6 +19,8 @@ nullid, nullrev, short, + wdirhex, + wdirrev, ) from . import ( archival, @@ -313,37 +315,31 @@ else: datefunc = dateutil.datestr if ctx.rev() is None: - def hexfn(node): - if node is None: - return None - else: - return hex(node) if opts.get('changeset'): # omit "+" suffix which is appended to node hex def formatrev(rev): - if rev is None: + if rev == wdirrev: return '%d' % ctx.p1().rev() else: return '%d' % rev else: def formatrev(rev): - if rev is None: + if rev == wdirrev: return '%d+' % ctx.p1().rev() else: return '%d ' % rev def formathex(h): - if h is None: + if h == wdirhex: return '%s+' % shorthex(hex(ctx.p1().node())) else: return '%s ' % shorthex(h) else: - hexfn = hex formatrev = b'%d'.__mod__ formathex = shorthex opmap = [('user', ' ', lambda x: x.fctx.user(), ui.shortuser), - ('rev', ' ', lambda x: x.fctx.rev(), formatrev), - ('node', ' ', lambda x: hexfn(x.fctx.node()), formathex), + ('rev', ' ', lambda x: scmutil.intrev(x.fctx), formatrev), + ('node', ' ', lambda x: hex(scmutil.binnode(x.fctx)), formathex), ('date', ' ', lambda x: x.fctx.date(), util.cachefunc(datefunc)), ('path', ' ', lambda x: x.fctx.path(), pycompat.bytestr), ('line_number', ':', lambda x: x.lineno, pycompat.bytestr),
--- a/tests/test-annotate.t Sat Sep 15 17:26:22 2018 +0900 +++ b/tests/test-annotate.t Sat Sep 15 17:26:23 2018 +0900 @@ -564,7 +564,7 @@ $ hg annotate -ncr "wdir()" -Tjson foo [ { - "lines": [{"line": "foo\n", "node": "472b18db256d1e8282064eab4bfdaf48cbfe83cd", "rev": 11}, {"line": "foofoo\n", "node": null, "rev": null}], + "lines": [{"line": "foo\n", "node": "472b18db256d1e8282064eab4bfdaf48cbfe83cd", "rev": 11}, {"line": "foofoo\n", "node": "ffffffffffffffffffffffffffffffffffffffff", "rev": 2147483647}], "path": "foo" } ]
--- a/tests/test-fastannotate-hg.t Sat Sep 15 17:26:22 2018 +0900 +++ b/tests/test-fastannotate-hg.t Sat Sep 15 17:26:23 2018 +0900 @@ -569,7 +569,7 @@ $ hg annotate -ncr "wdir()" -Tjson foo [ { - "lines": [{"line": "foo\n", "node": "472b18db256d1e8282064eab4bfdaf48cbfe83cd", "rev": 11}, {"line": "foofoo\n", "node": null, "rev": null}], + "lines": [{"line": "foo\n", "node": "472b18db256d1e8282064eab4bfdaf48cbfe83cd", "rev": 11}, {"line": "foofoo\n", "node": "ffffffffffffffffffffffffffffffffffffffff", "rev": 2147483647}], "path": "foo" } ]