Mercurial > hg-stable
changeset 36378:f85e32a5e5c8
narrow: use list comprehension instead of filter for filtering lists
filter() returns a generator on Python 3, which causes these filters
to break things.
Differential Revision: https://phab.mercurial-scm.org/D2363
author | Augie Fackler <augie@google.com> |
---|---|
date | Wed, 21 Feb 2018 10:08:35 -0500 |
parents | a65502597d8d |
children | f62369667a7c |
files | hgext/narrow/narrowchangegroup.py hgext/narrow/narrowcopies.py hgext/narrow/narrowpatch.py |
diffstat | 3 files changed, 5 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/narrow/narrowchangegroup.py Wed Feb 21 09:43:35 2018 -0500 +++ b/hgext/narrow/narrowchangegroup.py Wed Feb 21 10:08:35 2018 -0500 @@ -52,7 +52,7 @@ getattr(self, '_narrow_matcher', None)) if matcher is not None: narrowmatch = matcher() - changedfiles = filter(narrowmatch, changedfiles) + changedfiles = [f for f in changedfiles if narrowmatch(f)] if getattr(self, 'is_shallow', False): # See comment in generate() for why this sadness is a thing. mfdicts = self._mfdicts
--- a/hgext/narrow/narrowcopies.py Wed Feb 21 09:43:35 2018 -0500 +++ b/hgext/narrow/narrowcopies.py Wed Feb 21 10:08:35 2018 -0500 @@ -19,7 +19,7 @@ missing = orig(a, b, match) if util.safehasattr(repo, 'narrowmatch'): narrowmatch = repo.narrowmatch() - missing = filter(narrowmatch, missing) + missing = [f for f in missing if narrowmatch(f)] return missing def _checkcopies(orig, srcctx, dstctx, f, base, tca, remotebase, limit,
--- a/hgext/narrow/narrowpatch.py Wed Feb 21 09:43:35 2018 -0500 +++ b/hgext/narrow/narrowpatch.py Wed Feb 21 10:08:35 2018 -0500 @@ -31,9 +31,9 @@ copy, getfilectx, *args, **kwargs): if util.safehasattr(repo, 'narrowmatch'): narrowmatch = repo.narrowmatch() - modified = filter(narrowmatch, modified) - added = filter(narrowmatch, added) - removed = filter(narrowmatch, removed) + modified = [f for f in modified if narrowmatch(f)] + added = [f for f in added if narrowmatch(f)] + removed = [f for f in removed if narrowmatch(f)] copy = {k: v for k, v in copy.iteritems() if narrowmatch(k)} return orig(repo, revs, ctx1, ctx2, modified, added, removed, copy, getfilectx, *args, **kwargs)