D4051: linelog: port to Python 3
durin42 (Augie Fackler)
phabricator at mercurial-scm.org
Thu Aug 2 03:32:13 UTC 2018
durin42 created this revision.
Herald added a reviewer: pulkit.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D4051
AFFECTED FILES
contrib/python3-whitelist
mercurial/linelog.py
tests/test-linelog.py
CHANGE DETAILS
diff --git a/tests/test-linelog.py b/tests/test-linelog.py
--- a/tests/test-linelog.py
+++ b/tests/test-linelog.py
@@ -41,12 +41,12 @@
self.assertEqual(linelog.linelog.fromdata(enc), ll)
# This encoding matches the encoding used by hg-experimental's
# linelog file, or is supposed to if it doesn't.
- self.assertEqual(enc, ('\x00\x00\x01\x90\x00\x00\x00\x06'
- '\x00\x00\x00\xa4\x00\x00\x00*'
- '\x00\x00\x00\x00\x00\x00\x00+'
- '\x00\x00\x00\x00\x00\x00\x00\x00'
- '\x00\x00\x00\xb1\x00\x00\x00-'
- '\x00\x00\x00\xba\x00\x00\x00/'))
+ self.assertEqual(enc, (b'\x00\x00\x01\x90\x00\x00\x00\x06'
+ b'\x00\x00\x00\xa4\x00\x00\x00*'
+ b'\x00\x00\x00\x00\x00\x00\x00+'
+ b'\x00\x00\x00\x00\x00\x00\x00\x00'
+ b'\x00\x00\x00\xb1\x00\x00\x00-'
+ b'\x00\x00\x00\xba\x00\x00\x00/'))
def testsimpleedits(self):
ll = linelog.linelog()
@@ -94,21 +94,21 @@
def testparseclinelogfile(self):
# This data is what the replacements in testsimpleedits
# produce when fed to the original linelog.c implementation.
- data = ('\x00\x00\x00\x0c\x00\x00\x00\x0f'
- '\x00\x00\x00\x00\x00\x00\x00\x02'
- '\x00\x00\x00\x05\x00\x00\x00\x06'
- '\x00\x00\x00\x06\x00\x00\x00\x00'
- '\x00\x00\x00\x00\x00\x00\x00\x07'
- '\x00\x00\x00\x06\x00\x00\x00\x02'
- '\x00\x00\x00\x00\x00\x00\x00\x00'
- '\x00\x00\x00\t\x00\x00\x00\t'
- '\x00\x00\x00\x00\x00\x00\x00\x0c'
- '\x00\x00\x00\x08\x00\x00\x00\x05'
- '\x00\x00\x00\x06\x00\x00\x00\x01'
- '\x00\x00\x00\x00\x00\x00\x00\x05'
- '\x00\x00\x00\x0c\x00\x00\x00\x05'
- '\x00\x00\x00\n\x00\x00\x00\x01'
- '\x00\x00\x00\x00\x00\x00\x00\t')
+ data = (b'\x00\x00\x00\x0c\x00\x00\x00\x0f'
+ b'\x00\x00\x00\x00\x00\x00\x00\x02'
+ b'\x00\x00\x00\x05\x00\x00\x00\x06'
+ b'\x00\x00\x00\x06\x00\x00\x00\x00'
+ b'\x00\x00\x00\x00\x00\x00\x00\x07'
+ b'\x00\x00\x00\x06\x00\x00\x00\x02'
+ b'\x00\x00\x00\x00\x00\x00\x00\x00'
+ b'\x00\x00\x00\t\x00\x00\x00\t'
+ b'\x00\x00\x00\x00\x00\x00\x00\x0c'
+ b'\x00\x00\x00\x08\x00\x00\x00\x05'
+ b'\x00\x00\x00\x06\x00\x00\x00\x01'
+ b'\x00\x00\x00\x00\x00\x00\x00\x05'
+ b'\x00\x00\x00\x0c\x00\x00\x00\x05'
+ b'\x00\x00\x00\n\x00\x00\x00\x01'
+ b'\x00\x00\x00\x00\x00\x00\x00\t')
llc = linelog.linelog.fromdata(data)
self.assertEqual([(l.rev, l.linenum) for l in llc.annotate(1)],
[(1, 0),
diff --git a/mercurial/linelog.py b/mercurial/linelog.py
--- a/mercurial/linelog.py
+++ b/mercurial/linelog.py
@@ -98,7 +98,7 @@
self._target = op2
def __str__(self):
- return 'JGE %d %d' % (self._cmprev, self._target)
+ return r'JGE %d %d' % (self._cmprev, self._target)
def __eq__(self, other):
return (type(self) == type(other)
@@ -122,7 +122,7 @@
self._target = op2
def __str__(self):
- return 'JUMP %d' % (self._target)
+ return r'JUMP %d' % (self._target)
def __eq__(self, other):
return (type(self) == type(other)
@@ -144,7 +144,7 @@
raise LineLogError("malformed EOF, op2 must be 0, got %d" % op2)
def __str__(self):
- return 'EOF'
+ return r'EOF'
def __eq__(self, other):
return type(self) == type(other)
@@ -163,7 +163,7 @@
self._target = op2
def __str__(self):
- return 'JL %d %d' % (self._cmprev, self._target)
+ return r'JL %d %d' % (self._cmprev, self._target)
def __eq__(self, other):
return (type(self) == type(other)
@@ -188,7 +188,7 @@
self._origlineno = op2
def __str__(self):
- return 'LINE %d %d' % (self._rev, self._origlineno)
+ return r'LINE %d %d' % (self._rev, self._origlineno)
def __eq__(self, other):
return (type(self) == type(other)
@@ -245,8 +245,8 @@
hex(id(self)), self._maxrev, len(self._program))
def debugstr(self):
- fmt = '%%%dd %%s' % len(str(len(self._program)))
- return '\n'.join(
+ fmt = r'%%%dd %%s' % len(str(len(self._program)))
+ return pycompat.sysstr('\n').join(
fmt % (idx, i) for idx, i in enumerate(self._program[1:], 1))
@classmethod
diff --git a/contrib/python3-whitelist b/contrib/python3-whitelist
--- a/contrib/python3-whitelist
+++ b/contrib/python3-whitelist
@@ -254,6 +254,7 @@
test-largefiles.t
test-lfs-largefiles.t
test-lfs-pointer.py
+test-linelog.py
test-linerange.py
test-locate.t
test-lock-badness.t
To: durin42, pulkit, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list