comparison mercurial/wireprotov1peer.py @ 43106:d783f945a701

py3: finish porting iteritems() to pycompat and remove source transformer This commit finishes porting .iteritems() to pycompat.iteritems() for the mercurial package. The translation of .iteritems() to .items() was the last conversion performed by the source transformer. With the porting to pycompat complete, we no longer have a need for the source transformer. So the source transformer has been removed. Good riddance! The code base is now compatible with Python 2 and Python 3. For the record, as the person who introduced the source transformer, it brings me joy to delete it. It accomplished its goal to facilitate a port to Python 3 without overly burdening people on some painful low-level differences between Python 2 and 3. It is unfortunate we still have to wallpaper over many differences with the pycompat shim. But it is what it is. Differential Revision: https://phab.mercurial-scm.org/D7015
author Gregory Szorc <gregory.szorc@gmail.com>
date Mon, 07 Oct 2019 00:04:04 -0400
parents c59eb1560c44
children 8ff1ecfadcd1
comparison
equal deleted inserted replaced
43105:649d3ac37a12 43106:d783f945a701
93 # servers. 93 # servers.
94 assert all(escapearg(k) == k for k in argsdict) 94 assert all(escapearg(k) == k for k in argsdict)
95 95
96 args = b','.join( 96 args = b','.join(
97 b'%s=%s' % (escapearg(k), escapearg(v)) 97 b'%s=%s' % (escapearg(k), escapearg(v))
98 for k, v in argsdict.iteritems() 98 for k, v in pycompat.iteritems(argsdict)
99 ) 99 )
100 cmds.append(b'%s %s' % (op, args)) 100 cmds.append(b'%s %s' % (op, args))
101 101
102 return b';'.join(cmds) 102 return b';'.join(cmds)
103 103
446 def getbundle(self, source, **kwargs): 446 def getbundle(self, source, **kwargs):
447 kwargs = pycompat.byteskwargs(kwargs) 447 kwargs = pycompat.byteskwargs(kwargs)
448 self.requirecap(b'getbundle', _(b'look up remote changes')) 448 self.requirecap(b'getbundle', _(b'look up remote changes'))
449 opts = {} 449 opts = {}
450 bundlecaps = kwargs.get(b'bundlecaps') or set() 450 bundlecaps = kwargs.get(b'bundlecaps') or set()
451 for key, value in kwargs.iteritems(): 451 for key, value in pycompat.iteritems(kwargs):
452 if value is None: 452 if value is None:
453 continue 453 continue
454 keytype = wireprototypes.GETBUNDLE_ARGUMENTS.get(key) 454 keytype = wireprototypes.GETBUNDLE_ARGUMENTS.get(key)
455 if keytype is None: 455 if keytype is None:
456 raise error.ProgrammingError( 456 raise error.ProgrammingError(