Mercurial > public > mercurial-scm > hg
comparison mercurial/patch.py @ 31233:067f2a95e32c
vfs: use 'vfs' module directly in 'mercurial.patch'
Now that the 'vfs' classes moved in their own module, lets use the new module
directly. We update code iteratively to help with possible bisect needs in the
future.
author | Pierre-Yves David <pierre-yves.david@ens-lyon.org> |
---|---|
date | Thu, 02 Mar 2017 13:29:59 +0100 |
parents | 21fa3d3688f3 |
children | b3861be6aa6c |
comparison
equal
deleted
inserted
replaced
31232:254f98326eef | 31233:067f2a95e32c |
---|---|
36 pathutil, | 36 pathutil, |
37 pycompat, | 37 pycompat, |
38 scmutil, | 38 scmutil, |
39 similar, | 39 similar, |
40 util, | 40 util, |
41 vfs as vfsmod, | |
41 ) | 42 ) |
42 stringio = util.stringio | 43 stringio = util.stringio |
43 | 44 |
44 gitre = re.compile('diff --git a/(.*) b/(.*)') | 45 gitre = re.compile('diff --git a/(.*) b/(.*)') |
45 tabsplitter = re.compile(r'(\t+|[^\t]+)') | 46 tabsplitter = re.compile(r'(\t+|[^\t]+)') |
447 raise NotImplementedError | 448 raise NotImplementedError |
448 | 449 |
449 class fsbackend(abstractbackend): | 450 class fsbackend(abstractbackend): |
450 def __init__(self, ui, basedir): | 451 def __init__(self, ui, basedir): |
451 super(fsbackend, self).__init__(ui) | 452 super(fsbackend, self).__init__(ui) |
452 self.opener = scmutil.vfs(basedir) | 453 self.opener = vfsmod.vfs(basedir) |
453 | 454 |
454 def _join(self, f): | 455 def _join(self, f): |
455 return os.path.join(self.opener.base, f) | 456 return os.path.join(self.opener.base, f) |
456 | 457 |
457 def getfile(self, fname): | 458 def getfile(self, fname): |
558 self.data[fname] = (data, mode, copied) | 559 self.data[fname] = (data, mode, copied) |
559 self.size += len(data) | 560 self.size += len(data) |
560 else: | 561 else: |
561 if self.opener is None: | 562 if self.opener is None: |
562 root = tempfile.mkdtemp(prefix='hg-patch-') | 563 root = tempfile.mkdtemp(prefix='hg-patch-') |
563 self.opener = scmutil.vfs(root) | 564 self.opener = vfsmod.vfs(root) |
564 # Avoid filename issues with these simple names | 565 # Avoid filename issues with these simple names |
565 fn = str(self.created) | 566 fn = str(self.created) |
566 self.opener.write(fn, data) | 567 self.opener.write(fn, data) |
567 self.created += 1 | 568 self.created += 1 |
568 self.files[fname] = (fn, mode, copied) | 569 self.files[fname] = (fn, mode, copied) |