comparison mercurial/bundlerepo.py @ 35047:32d079f37207

bundlerepo: make methods agree with base class My editor was complaining about mismatches between method signatures. For methods that are implemented, we change arguments to match the base. For those that aren't, we use variable arguments because it shouldn't matter. Differential Revision: https://phab.mercurial-scm.org/D1372
author Gregory Szorc <gregory.szorc@gmail.com>
date Sat, 11 Nov 2017 17:02:31 -0800
parents a2dfc723b6b5
children 80e9b85d96e5
comparison
equal deleted inserted replaced
35046:241d9caca11e 35047:32d079f37207
84 self.index.insert(-1, e) 84 self.index.insert(-1, e)
85 self.nodemap[node] = n 85 self.nodemap[node] = n
86 self.bundlerevs.add(n) 86 self.bundlerevs.add(n)
87 n += 1 87 n += 1
88 88
89 def _chunk(self, rev): 89 def _chunk(self, rev, df=None):
90 # Warning: in case of bundle, the diff is against what we stored as 90 # Warning: in case of bundle, the diff is against what we stored as
91 # delta base, not against rev - 1 91 # delta base, not against rev - 1
92 # XXX: could use some caching 92 # XXX: could use some caching
93 if rev <= self.repotiprev: 93 if rev <= self.repotiprev:
94 return revlog.revlog._chunk(self, rev) 94 return revlog.revlog._chunk(self, rev)
106 return revlog.revlog.revdiff(self, rev1, rev2) 106 return revlog.revlog.revdiff(self, rev1, rev2)
107 107
108 return mdiff.textdiff(self.revision(rev1, raw=True), 108 return mdiff.textdiff(self.revision(rev1, raw=True),
109 self.revision(rev2, raw=True)) 109 self.revision(rev2, raw=True))
110 110
111 def revision(self, nodeorrev, raw=False): 111 def revision(self, nodeorrev, _df=None, raw=False):
112 """return an uncompressed revision of a given node or revision 112 """return an uncompressed revision of a given node or revision
113 number. 113 number.
114 """ 114 """
115 if isinstance(nodeorrev, int): 115 if isinstance(nodeorrev, int):
116 rev = nodeorrev 116 rev = nodeorrev
150 # Revlog subclasses may override 'revision' method to modify format of 150 # Revlog subclasses may override 'revision' method to modify format of
151 # content retrieved from revlog. To use bundlerevlog with such class one 151 # content retrieved from revlog. To use bundlerevlog with such class one
152 # needs to override 'baserevision' and make more specific call here. 152 # needs to override 'baserevision' and make more specific call here.
153 return revlog.revlog.revision(self, nodeorrev, raw=True) 153 return revlog.revlog.revision(self, nodeorrev, raw=True)
154 154
155 def addrevision(self, text, transaction, link, p1=None, p2=None, d=None): 155 def addrevision(self, *args, **kwargs):
156 raise NotImplementedError 156 raise NotImplementedError
157 def addgroup(self, deltas, transaction, addrevisioncb=None): 157
158 raise NotImplementedError 158 def addgroup(self, *args, **kwargs):
159 def strip(self, rev, minlink): 159 raise NotImplementedError
160 raise NotImplementedError 160
161 def strip(self, *args, **kwargs):
162 raise NotImplementedError
163
161 def checksize(self): 164 def checksize(self):
162 raise NotImplementedError 165 raise NotImplementedError
163 166
164 class bundlechangelog(bundlerevlog, changelog.changelog): 167 class bundlechangelog(bundlerevlog, changelog.changelog):
165 def __init__(self, opener, bundle): 168 def __init__(self, opener, bundle):