Patchwork D2423: templatekw: use ctx.rev() instead of casting context to int

login
register
mail settings
Submitter phabricator
Date Feb. 24, 2018, 7:31 p.m.
Message ID <differential-rev-PHID-DREV-z554f6nthbbj7f6ebb76-req@phab.mercurial-scm.org>
Download mbox | patch
Permalink /patch/28329/
State Superseded
Headers show

Comments

phabricator - Feb. 24, 2018, 7:31 p.m.
indygreg created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  basectx has __int__ implemented. Per mailing list discussion
  with Yuya, we don't like having this implemented because it is
  too much magic and in some cases rev() will return None, which
  isn't an int.
  
  So convert a `'%d' % ctx` to ctx.rev() instead.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D2423

AFFECTED FILES
  mercurial/templatekw.py

CHANGE DETAILS




To: indygreg, #hg-reviewers
Cc: mercurial-devel

Patch

diff --git a/mercurial/templatekw.py b/mercurial/templatekw.py
--- a/mercurial/templatekw.py
+++ b/mercurial/templatekw.py
@@ -400,7 +400,7 @@ 
     """List of strings. The children of the changeset."""
     args = pycompat.byteskwargs(args)
     ctx = args['ctx']
-    childrevs = ['%d:%s' % (cctx, cctx) for cctx in ctx.children()]
+    childrevs = ['%d:%s' % (cctx.rev(), cctx) for cctx in ctx.children()]
     return showlist('children', childrevs, args, element='child')
 
 # Deprecated, but kept alive for help generation a purpose.