Mercurial > hg
changeset 36466:a8b4d7673d8e
narrow: move checking for narrow requirement into _narrowmatch()
We want to move narrowmatch() and others into core, so we need to get
rid of the dependence on the "narrow_opts" from the closure in
narrowrepo.wraprepo(). We can simply check if the narrow requirement
is set. I think that seems like an improvement regardless of moving
narrowmatch().
Differential Revision: https://phab.mercurial-scm.org/D2489
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Wed, 28 Feb 2018 10:22:54 -0800 |
parents | 94709406f10d |
children | 2d82a24d0c78 |
files | hgext/narrow/__init__.py hgext/narrow/narrowcommands.py hgext/narrow/narrowrepo.py |
diffstat | 3 files changed, 5 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/narrow/__init__.py Wed Feb 28 10:55:21 2018 -0800 +++ b/hgext/narrow/__init__.py Wed Feb 28 10:22:54 2018 -0800 @@ -73,7 +73,7 @@ return if changegroup.NARROW_REQUIREMENT in repo.requirements: - narrowrepo.wraprepo(repo, True) + narrowrepo.wraprepo(repo) narrowcopies.setup(repo) narrowdirstate.setup(repo) narrowpatch.setup(repo)
--- a/hgext/narrow/narrowcommands.py Wed Feb 28 10:55:21 2018 -0800 +++ b/hgext/narrow/narrowcommands.py Wed Feb 28 10:22:54 2018 -0800 @@ -101,7 +101,7 @@ '_pullbundle2extraprepare', pullbundle2extraprepare_widen) def pullnarrow(orig, repo, *args, **kwargs): - narrowrepo.wraprepo(repo.unfiltered(), opts_narrow) + narrowrepo.wraprepo(repo.unfiltered()) if isinstance(repo, repoview.repoview): repo.__class__.__bases__ = (repo.__class__.__bases__[0], repo.unfiltered().__class__)
--- a/hgext/narrow/narrowrepo.py Wed Feb 28 10:55:21 2018 -0800 +++ b/hgext/narrow/narrowrepo.py Wed Feb 28 10:22:54 2018 -0800 @@ -38,7 +38,7 @@ f.write(spec) return orig(ui, repo, repopath) -def wraprepo(repo, opts_narrow): +def wraprepo(repo): """Enables narrow clone functionality on a single local repository.""" cacheprop = localrepo.storecache @@ -77,9 +77,9 @@ @localrepo.repofilecache(narrowspec.FILENAME) def _narrowmatch(self): + if changegroup.NARROW_REQUIREMENT not in self.requirements: + return matchmod.always(self.root, '') include, exclude = self.narrowpats - if not opts_narrow and not include and not exclude: - return matchmod.always(self.root, '') return narrowspec.match(self.root, include=include, exclude=exclude) # TODO(martinvonz): make this property-like instead?