Comments
Patch
@@ -431,7 +431,7 @@ def _wraprepo(ui, repo):
visited.add(profile)
try:
- raw = self.getrawprofile(profile, rev)
+ raw = sparse.readprofile(self, profile, rev)
except error.ManifestLookupError:
msg = (
"warning: sparse profile '%s' not found "
@@ -455,11 +455,6 @@ def _wraprepo(ui, repo):
includes.add('.hg*')
return includes, excludes, profiles
- def getrawprofile(self, profile, changeid):
- # TODO add some kind of cache here because this incurs a manifest
- # resolve and can be slow.
- return self.filectx(profile, changeid=changeid).data()
-
def _sparsechecksum(self, path):
data = self.vfs.read(path)
return hashlib.sha1(data).hexdigest()
@@ -46,3 +46,10 @@ def parseconfig(ui, raw):
current.add(line)
return includes, excludes, profiles
+
+# Exists as separate function to facilitate monkeypatching.
+def readprofile(repo, profile, changeid):
+ """Resolve the raw content of a sparse profile file."""
+ # TODO add some kind of cache here because this incurs a manifest
+ # resolve and can be slow.
+ return repo.filectx(profile, changeid=changeid).data()