diff -r 649d3ac37a12 -r d783f945a701 mercurial/obsolete.py --- a/mercurial/obsolete.py Sun Oct 06 19:25:18 2019 -0400 +++ b/mercurial/obsolete.py Mon Oct 07 00:04:04 2019 -0400 @@ -243,7 +243,7 @@ # if content cannot be translated to nodeid drop the data. parents = None - metadata = tuple(sorted(metadata.iteritems())) + metadata = tuple(sorted(pycompat.iteritems(metadata))) yield (pre, sucs, flags, metadata, date, parents) @@ -273,7 +273,7 @@ """Return encoded metadata string to string mapping. Assume no ':' in key and no '\0' in both key and value.""" - for key, value in meta.iteritems(): + for key, value in pycompat.iteritems(meta): if b':' in key or b'\0' in key: raise ValueError(b"':' and '\0' are forbidden in metadata key'") if b'\0' in value: @@ -644,7 +644,7 @@ r'in-marker cycle with %s' % pycompat.sysstr(node.hex(prec)) ) - metadata = tuple(sorted(metadata.iteritems())) + metadata = tuple(sorted(pycompat.iteritems(metadata))) for k, v in metadata: try: # might be better to reject non-ASCII keys