changeset 52480:01818a59f463

interfaces: convert `imanifestrevisionwritable` to a Protocol class Same as cdd4bc69bfc1 for `imanifestrevisionstored`.
author Matt Harbison <matt_harbison@yahoo.com>
date Tue, 10 Dec 2024 21:55:13 -0500
parents 99ca58c7cd0d
children 22f97aa5e8b2
files mercurial/interfaces/repository.py
diffstat 1 files changed, 2 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/interfaces/repository.py	Tue Dec 10 21:48:12 2024 -0500
+++ b/mercurial/interfaces/repository.py	Tue Dec 10 21:55:13 2024 -0500
@@ -1279,9 +1279,10 @@
         """
 
 
-class imanifestrevisionwritable(imanifestrevisionbase):
+class imanifestrevisionwritable(imanifestrevisionbase, Protocol):
     """Interface representing a manifest revision that can be committed."""
 
+    @abc.abstractmethod
     def write(
         self, transaction, linkrev, p1node, p2node, added, removed, match=None
     ):