[PATCH 3 of 3 V2] py3: add pycompat.unicode and add it to importer
Pulkit Goyal
7895pulkit at gmail.com
Fri Apr 7 14:38:25 EDT 2017
# HG changeset patch
# User Pulkit Goyal <7895pulkit at gmail.com>
# Date 1491588351 -19800
# Fri Apr 07 23:35:51 2017 +0530
# Node ID 7ce54c695ff7a5637b6798dec0fc6cf4f7b22098
# Parent 1724a314de7c22936d33b09066e9f06197437391
py3: add pycompat.unicode and add it to importer
On python 3, builtins.unicode does not exist.
diff -r 1724a314de7c -r 7ce54c695ff7 mercurial/__init__.py
--- a/mercurial/__init__.py Fri Apr 07 16:00:44 2017 +0530
+++ b/mercurial/__init__.py Fri Apr 07 23:35:51 2017 +0530
@@ -283,7 +283,8 @@
continue
r, c = t.start
l = (b'; from mercurial.pycompat import '
- b'delattr, getattr, hasattr, setattr, xrange, open\n')
+ b'delattr, getattr, hasattr, setattr, xrange, '
+ b'open, unicode\n')
for u in tokenize.tokenize(io.BytesIO(l).readline):
if u.type in (tokenize.ENCODING, token.ENDMARKER):
continue
@@ -323,7 +324,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\x09'
+ BYTECODEHEADER = b'HG\x00\x10'
class hgloader(importlib.machinery.SourceFileLoader):
"""Custom module loader that transforms source code.
diff -r 1724a314de7c -r 7ce54c695ff7 mercurial/pycompat.py
--- a/mercurial/pycompat.py Fri Apr 07 16:00:44 2017 +0530
+++ b/mercurial/pycompat.py Fri Apr 07 23:35:51 2017 +0530
@@ -174,6 +174,7 @@
hasattr = _wrapattrfunc(builtins.hasattr)
setattr = _wrapattrfunc(builtins.setattr)
xrange = builtins.range
+ unicode = str
def open(name, mode='r', buffering=-1):
return builtins.open(name, sysstr(mode), buffering)
More information about the Mercurial-devel
mailing list