Mercurial > public > mercurial-scm > hg-stable
diff mercurial/manifest.py @ 37374:ac42e39b1b77
narrow: move manifestlog overrides to core
With this and the previous patch, I couldn't measure any significant
difference from `hg files -r .` in a FireFox repo with 65k files. I
tried with both a flat-manifest and a tree-manifest version of
it. Neither had the narrow extension enabled.
Differential Revision: https://phab.mercurial-scm.org/D3046
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Tue, 03 Apr 2018 09:58:16 -0700 |
parents | c50078fc32f3 |
children | cf59de802883 |
line wrap: on
line diff
--- a/mercurial/manifest.py Mon Apr 02 23:46:04 2018 -0700 +++ b/mercurial/manifest.py Tue Apr 03 09:58:16 2018 -0700 @@ -1303,6 +1303,9 @@ if node in self._dirmancache.get(dir, ()): return self._dirmancache[dir][node] + if not self._narrowmatch.always(): + if not self._narrowmatch.visitdir(dir[:-1] or '.'): + return excludeddirmanifestctx(dir, node) if dir: if self._revlog._treeondisk: if verify: