[PATCH 4 of 8 sparse V2] sparse: use self instead of repo.dirstate

Gregory Szorc gregory.szorc at gmail.com
Tue Jul 11 00:57:03 EDT 2017


# HG changeset patch
# User Gregory Szorc <gregory.szorc at gmail.com>
# Date 1499553731 25200
#      Sat Jul 08 15:42:11 2017 -0700
# Node ID ee818b5e70b42f4bd65605c5872d06e5bc0a0bb5
# Parent  ec1d258a7940fd3104d7cf001150d69e6c4da0ce
sparse: use self instead of repo.dirstate

"self" here is the dirstate instance. I'm pretty confident that self
and repo.dirstate will be the exact same object. So remove a dependency
on repo by just looking at self.

diff --git a/hgext/sparse.py b/hgext/sparse.py
--- a/hgext/sparse.py
+++ b/hgext/sparse.py
@@ -265,10 +265,9 @@ def _setupdirstate(ui):
             repo = self.repo
             sparsematch = sparse.matcher(repo)
             if not sparsematch.always():
-                dirstate = repo.dirstate
                 for f in args:
                     if (f is not None and not sparsematch(f) and
-                        f not in dirstate):
+                        f not in self):
                         raise error.Abort(_("cannot add '%s' - it is outside "
                                             "the sparse checkout") % f,
                                           hint=hint)


More information about the Mercurial-devel mailing list