match: drop unnecessary removal of '.' from excluded roots
authorMartin von Zweigbergk <martinvonz@google.com>
Wed, 27 May 2015 13:23:35 -0700
changeset 25575 475eae3497af
parent 25574 88a17ccf0196
child 25576 d02f4b3e71f5
match: drop unnecessary removal of '.' from excluded roots The repo root is nothing special when it comes to what directories to visit: patterns like '-X relglob:*.py' should not exclude the top directory, while '-X path:.' should (pointless as such a pattern may be). The explicit removal of '.' from the set of excluded roots was probably there to avoid removing the the root directory when any patterns had been given, but since 20ad936ac5d2 (treemanifest: visit directory 'foo' when given e.g. '-X foo/ba?', 2015-05-27), we only exclude directories that should be completely excluded, so we no longer need to special-case the root directory.
mercurial/match.py
--- a/mercurial/match.py	Fri Jun 12 11:00:50 2015 -0700
+++ b/mercurial/match.py	Wed May 27 13:23:35 2015 -0700
@@ -135,7 +135,6 @@
                                               listsubrepos, root)
             if not _anypats(kindpats):
                 self._excluderoots.update(_roots(kindpats))
-                self._excluderoots.discard('.')
             matchfns.append(lambda f: not em(f))
         if exact:
             if isinstance(patterns, list):