archival: use walk() instead of matches() on manifest
All we care about is the filepaths, so this avoids a pointless copy of the
manifest that we only used to extract matching filenames.
Differential Revision: https://phab.mercurial-scm.org/D8090
--- a/mercurial/archival.py Fri Jan 24 11:10:07 2020 +0100
+++ b/mercurial/archival.py Thu Feb 06 16:55:39 2020 -0500
@@ -355,7 +355,7 @@
if match(name):
write(name, 0o644, False, lambda: buildmetadata(ctx))
- files = [f for f in ctx.manifest().matches(match)]
+ files = list(ctx.manifest().walk(match))
total = len(files)
if total:
files.sort()