--- a/hgext3rd/evolve/compat.py Tue Jan 16 01:11:47 2018 +0100
+++ b/hgext3rd/evolve/compat.py Tue Jan 16 02:21:44 2018 +0100
@@ -15,6 +15,13 @@
util,
)
+# hg < 4.2 compat
+try:
+ from mercurial import vfs as vfsmod
+ vfsmod.vfs
+except ImportError:
+ from mercurial import scmutil as vfsmod
+
try:
from mercurial import obsutil
obsutil.closestpredecessors
@@ -212,3 +219,10 @@
isexec='x' in flags,
copied=copied.get(path))
return mctx
+
+def getcachevfs(repo):
+ cachevfs = getattr(repo, 'cachevfs', None)
+ if cachevfs is None:
+ cachevfs = vfsmod.vfs(repo.vfs.join('cache'))
+ cachevfs.createmode = repo.store.createmode
+ return cachevfs