interfaces: mark `completelocalrepository` as a Protocol class
authorMatt Harbison <matt_harbison@yahoo.com>
Wed, 11 Dec 2024 18:04:21 -0500
changeset 52500 3abf9bc10fcc
parent 52499 9358d786af24
child 52503 cef86c1d5dfd
interfaces: mark `completelocalrepository` as a Protocol class This is just for completeness, since everything else in here is explicitly marked. The *.pyi file generated for this module is unchanged, because this class currently has no methods or attrs of its own (other than `__doc__`). With this, the odyssey of converting the zope interfaces to Protocol classes is complete. There's a little bit of mopping up in making sure the previously converted Protocols use `@abc.abstractmethod` where appropriate, but that can be deferred for now.
mercurial/interfaces/repository.py
--- a/mercurial/interfaces/repository.py	Wed Dec 11 17:56:53 2024 -0500
+++ b/mercurial/interfaces/repository.py	Wed Dec 11 18:04:21 2024 -0500
@@ -2233,7 +2233,9 @@
 
 
 class completelocalrepository(
-    ilocalrepositorymain, ilocalrepositoryfilestorage
+    ilocalrepositorymain,
+    ilocalrepositoryfilestorage,
+    Protocol,
 ):
     """Complete interface for a local repository."""