D2493: narrow: remove dependency from narrowspec module to hg module
martinvonz (Martin von Zweigbergk)
phabricator at mercurial-scm.org
Wed Feb 28 20:57:00 UTC 2018
martinvonz created this revision.
Herald added a reviewer: durin42.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D2493
AFFECTED FILES
hgext/narrow/narrowrepo.py
mercurial/narrowspec.py
CHANGE DETAILS
diff --git a/mercurial/narrowspec.py b/mercurial/narrowspec.py
--- a/mercurial/narrowspec.py
+++ b/mercurial/narrowspec.py
@@ -12,7 +12,6 @@
from .i18n import _
from . import (
error,
- hg,
match as matchmod,
util,
)
@@ -129,8 +128,6 @@
return [i for i in includes if i.startswith('include:')]
def load(repo):
- if repo.shared():
- repo = hg.sharedreposource(repo)
try:
spec = repo.vfs.read(FILENAME)
except IOError as e:
@@ -146,8 +143,6 @@
def save(repo, includepats, excludepats):
spec = format(includepats, excludepats)
- if repo.shared():
- repo = hg.sharedreposource(repo)
repo.vfs.write(FILENAME, spec)
def restrictpatterns(req_includes, req_excludes, repo_includes, repo_excludes):
diff --git a/hgext/narrow/narrowrepo.py b/hgext/narrow/narrowrepo.py
--- a/hgext/narrow/narrowrepo.py
+++ b/hgext/narrow/narrowrepo.py
@@ -73,7 +73,10 @@
A tuple of (includes, excludes).
"""
- return narrowspec.load(self)
+ source = self
+ if self.shared():
+ source = hg.sharedreposource(self)
+ return narrowspec.load(source)
@localrepo.repofilecache(narrowspec.FILENAME)
def _narrowmatch(self):
@@ -87,7 +90,10 @@
return self._narrowmatch
def setnarrowpats(self, newincludes, newexcludes):
- narrowspec.save(self, newincludes, newexcludes)
+ target = self
+ if self.shared():
+ target = hg.sharedreposource(self)
+ narrowspec.save(target, newincludes, newexcludes)
self.invalidate(clearfilecache=True)
# I'm not sure this is the right place to do this filter.
To: martinvonz, durin42, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list