D7820: grep: speed up `hg grep --all-files some/path` by using ctx.matches(match)
martinvonz (Martin von Zweigbergk)
phabricator at mercurial-scm.org
Mon Jan 13 09:18:56 EST 2020
Closed by commit rHG6cfaebb625d3: grep: speed up `hg grep --all-files some/path` by using ctx.matches(match) (authored by martinvonz).
This revision was automatically updated to reflect the committed changes.
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D7820?vs=19140&id=19160
CHANGES SINCE LAST ACTION
https://phab.mercurial-scm.org/D7820/new/
REVISION DETAIL
https://phab.mercurial-scm.org/D7820
AFFECTED FILES
mercurial/cmdutil.py
CHANGE DETAILS
diff --git a/mercurial/cmdutil.py b/mercurial/cmdutil.py
--- a/mercurial/cmdutil.py
+++ b/mercurial/cmdutil.py
@@ -2429,12 +2429,16 @@
def fns_generator():
if allfiles:
- fiter = iter(ctx)
+
+ def bad(f, msg):
+ pass
+
+ for f in ctx.matches(matchmod.badmatch(match, bad)):
+ yield f
else:
- fiter = ctx.files()
- for f in fiter:
- if match(f):
- yield f
+ for f in ctx.files():
+ if match(f):
+ yield f
fns = fns_generator()
prepare(ctx, fns)
To: martinvonz, #hg-reviewers, pulkit
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list