comparison mercurial/ui.py @ 43104:74802979dd9d

py3: define and use pycompat.itervalues() .itervalues() only exists on Python 2. Python 3's equivalent is .values(). But we don't want to blindly use .values() everywhere because on Python 2, it will create a list, which will have performance implications. This commit introduces pycompat.itervalues() which will call the appropriate method on the passed object. We update all callers of obj.itervalues() to pycompat.itervalues(obj) instead. With this commit, the only source tranforming remaining is for iteritems(). Victory is near... Differential Revision: https://phab.mercurial-scm.org/D7013
author Gregory Szorc <gregory.szorc@gmail.com>
date Sun, 06 Oct 2019 17:59:15 -0400
parents c59eb1560c44
children d783f945a701
comparison
equal deleted inserted replaced
43103:c95b2f40db7c 43104:74802979dd9d
1964 **opts currently has no defined meanings. 1964 **opts currently has no defined meanings.
1965 ''' 1965 '''
1966 if not self._loggers: 1966 if not self._loggers:
1967 return 1967 return
1968 activeloggers = [ 1968 activeloggers = [
1969 l for l in self._loggers.itervalues() if l.tracked(event) 1969 l for l in pycompat.itervalues(self._loggers) if l.tracked(event)
1970 ] 1970 ]
1971 if not activeloggers: 1971 if not activeloggers:
1972 return 1972 return
1973 msg = msgfmt % msgargs 1973 msg = msgfmt % msgargs
1974 opts = pycompat.byteskwargs(opts) 1974 opts = pycompat.byteskwargs(opts)