Mercurial > public > mercurial-scm > hg
comparison mercurial/sshpeer.py @ 52520:1554bd50a1af
interfaces: move peer `capabilities()` to the `ipeercapabilities` interface
I'm not sure why this was on the `ipeercommands` interface. It appears to be
because these interfaces started out as `_basewirecommands` to hold wire
commands, back in 558f5b2ee10e. The capabilities interface wasn't split out
until 98861a2298b5, when it pulled the capability related methods off of the
`ipeerbase` interface. Perhaps it was an oversight to not look at the commands
interface because, while this is a wire command, both `sshpeer` and `httppeer`
now perform a handshake while instantiating the peer object, and cache a fixed
list of capabilities in that object. Likewise, `localpeer` is given a fixed set
of capabilities when instantiated. Back in 558f5b2ee10e, `httppeer` looks like
it issued a wire command when this method was called, but `sshpeer` obtained and
cached the capabilities when instantiated, and this method always returned a
fixed value.
There's a perfectly good interface with other capability related methods, and
having it here makes it easier to implement the base `peer` mixin class.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Mon, 16 Dec 2024 02:41:24 -0500 |
parents | f4733654f144 |
children | b52f2b365eff |
comparison
equal
deleted
inserted
replaced
52519:5cf81d8d7de1 | 52520:1554bd50a1af |
---|---|
437 def close(self): | 437 def close(self): |
438 self._cleanup() | 438 self._cleanup() |
439 | 439 |
440 # End of ipeerconnection interface. | 440 # End of ipeerconnection interface. |
441 | 441 |
442 # Begin of ipeercommands interface. | 442 # Begin of ipeercapabilities interface. |
443 | 443 |
444 def capabilities(self): | 444 def capabilities(self): |
445 return self._caps | 445 return self._caps |
446 | 446 |
447 # End of ipeercommands interface. | 447 # End of ipeercapabilities interface. |
448 | 448 |
449 def _readerr(self): | 449 def _readerr(self): |
450 _forwardoutput(self.ui, self._pipee) | 450 _forwardoutput(self.ui, self._pipee) |
451 | 451 |
452 def _abort(self, exception): | 452 def _abort(self, exception): |