Mercurial > hg
changeset 30052:eaaedad68011
py3: switch to .items() using transformer
.iteritems() don't exist in Python 3 world. Used the transformer
to replace .iteritems() to .items()
author | Pulkit Goyal <7895pulkit@gmail.com> |
---|---|
date | Fri, 07 Oct 2016 15:29:57 +0200 |
parents | 3139ec39b505 |
children | dbcef8918bbd |
files | mercurial/__init__.py |
diffstat | 1 files changed, 8 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/__init__.py Fri Oct 07 14:04:49 2016 +0200 +++ b/mercurial/__init__.py Fri Oct 07 15:29:57 2016 +0200 @@ -305,6 +305,13 @@ except IndexError: pass + # It changes iteritems to items as iteritems is not + # present in Python 3 world. + if fn == 'iteritems': + yield tokenize.TokenInfo(t.type, 'items', + t.start, t.end, t.line) + continue + # Emit unmodified token. yield t @@ -312,7 +319,7 @@ # ``replacetoken`` or any mechanism that changes semantics of module # loading is changed. Otherwise cached bytecode may get loaded without # the new transformation mechanisms applied. - BYTECODEHEADER = b'HG\x00\x03' + BYTECODEHEADER = b'HG\x00\x04' class hgloader(importlib.machinery.SourceFileLoader): """Custom module loader that transforms source code.