repository: port peer interfaces to zope.interface...
repository: port peer interfaces to zope.interface
zope.interface is superior. Let's switch to it.
Unlike abc, which defines interfaces through a base class,
zope.interface uses different types for interfaces and for
implementations. So, we had to invent some new types to hold the
interfaces in order to separate the interface from its default
implementation.
The names here could probably be better. I've been wanting to
overhaul the peer interface for a while. And wire protocol version
2 will force that work. So anticipate a refactoring of these
interfaces in later commits.
With this commit, we no longer test abc interfaces in
test-check-interfaces.py, so code for that has been removed.
Differential Revision:
https://phab.mercurial-scm.org/D3068
# no-check-commit because of stream_out()