# HG changeset patch # User Pulkit Goyal # Date 2019-02-05 18:31:33 # Node ID b436059c1cca85ec327889a8fba17837e5c7b8e6 # Parent 83d62df28ab60deab90f808e5bdaca59ee6b6867 py3: use pycompat.bytestr() on extra values because it can be int One such example is {'close': 1} which marks a branch as closed. This makes test-convert-mtn.t pass on Python 3. Differential Revision: https://phab.mercurial-scm.org/D5864 diff --git a/contrib/python3-whitelist b/contrib/python3-whitelist --- a/contrib/python3-whitelist +++ b/contrib/python3-whitelist @@ -121,6 +121,7 @@ test-convert-git.t test-convert-hg-sink.t test-convert-hg-source.t test-convert-hg-startrev.t +test-convert-mtn.t test-convert-splicemap.t test-convert-svn-sink.t test-convert-tagsbranch-topology.t diff --git a/mercurial/changelog.py b/mercurial/changelog.py --- a/mercurial/changelog.py +++ b/mercurial/changelog.py @@ -70,7 +70,10 @@ def decodeextra(text): def encodeextra(d): # keys must be sorted to produce a deterministic changelog entry - items = [_string_escape('%s:%s' % (k, d[k])) for k in sorted(d)] + items = [ + _string_escape('%s:%s' % (k, pycompat.bytestr(d[k]))) + for k in sorted(d) + ] return "\0".join(items) def stripdesc(desc):