comparison mercurial/localrepo.py @ 37635:cc8c06835097

wireproto: convert legacy commands to command executor Calls to the legacy commands "changegroup" and "changegroupsubset" have been ported to the new command executor interface. Because we always pass arguments by name and not position, some inconsistent names throughout the code base have been unified. As part of this change, we no longer had any remaining callers of the legacy command methods {between, branches, changegroup, changegroupsubset}. So, these interfaces/methods have been dropped from peer interfaces. We still have an interface declaring these methods. But that interface is implemented on the concrete peer types and isn't part of the generic peer interface. (The implementations of the command executor continue to call these methods.) The ultimate goal is to remove the per-command methods from the generic peer interface: the only interface-conforming way to call a command will be with the new executor API. At some point, we may want to move the methods outside of the peer classes and change the executor implementations to not call methods directly on a peer instance. Differential Revision: https://phab.mercurial-scm.org/D3273
author Gregory Szorc <gregory.szorc@gmail.com>
date Fri, 13 Apr 2018 11:12:19 -0700
parents 33a6eee08db2
children 72e26319f3b8
comparison
equal deleted inserted replaced
37634:0ed11f9368fd 37635:cc8c06835097
318 def commandexecutor(self): 318 def commandexecutor(self):
319 return localcommandexecutor(self) 319 return localcommandexecutor(self)
320 320
321 # End of peer interface. 321 # End of peer interface.
322 322
323 class locallegacypeer(repository.legacypeer, localpeer): 323 @zi.implementer(repository.ipeerlegacycommands)
324 class locallegacypeer(localpeer):
324 '''peer extension which implements legacy methods too; used for tests with 325 '''peer extension which implements legacy methods too; used for tests with
325 restricted capabilities''' 326 restricted capabilities'''
326 327
327 def __init__(self, repo): 328 def __init__(self, repo):
328 super(locallegacypeer, self).__init__(repo, caps=legacycaps) 329 super(locallegacypeer, self).__init__(repo, caps=legacycaps)
333 return self._repo.between(pairs) 334 return self._repo.between(pairs)
334 335
335 def branches(self, nodes): 336 def branches(self, nodes):
336 return self._repo.branches(nodes) 337 return self._repo.branches(nodes)
337 338
338 def changegroup(self, basenodes, source): 339 def changegroup(self, nodes, source):
339 outgoing = discovery.outgoing(self._repo, missingroots=basenodes, 340 outgoing = discovery.outgoing(self._repo, missingroots=nodes,
340 missingheads=self._repo.heads()) 341 missingheads=self._repo.heads())
341 return changegroup.makechangegroup(self._repo, outgoing, '01', source) 342 return changegroup.makechangegroup(self._repo, outgoing, '01', source)
342 343
343 def changegroupsubset(self, bases, heads, source): 344 def changegroupsubset(self, bases, heads, source):
344 outgoing = discovery.outgoing(self._repo, missingroots=bases, 345 outgoing = discovery.outgoing(self._repo, missingroots=bases,