Mercurial > public > mercurial-scm > hg-stable
diff tests/simplestorerepo.py @ 53031:e705fec4a03f stable
branching: merging with 7.0 changes
Since 6.9.3 was made after 7.0rc0 we need to deal with more branching than
usual.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Wed, 05 Mar 2025 23:02:19 +0100 |
parents | e627cc25b6f3 |
children |
line wrap: on
line diff
--- a/tests/simplestorerepo.py Wed Mar 05 22:33:11 2025 +0100 +++ b/tests/simplestorerepo.py Wed Mar 05 23:02:19 2025 +0100 @@ -13,6 +13,12 @@ import stat +from typing import ( + Iterable, + Iterator, + Optional, +) + from mercurial.i18n import _ from mercurial.node import ( bin, @@ -34,7 +40,6 @@ ) from mercurial.interfaces import ( repository, - util as interfaceutil, ) from mercurial.utils import ( cborutil, @@ -68,30 +73,29 @@ pass -@interfaceutil.implementer(repository.irevisiondelta) @attr.s(slots=True) -class simplestorerevisiondelta: - node = attr.ib() - p1node = attr.ib() - p2node = attr.ib() - basenode = attr.ib() - flags = attr.ib() - baserevisionsize = attr.ib() - revision = attr.ib() - delta = attr.ib() - linknode = attr.ib(default=None) +class simplestorerevisiondelta(repository.irevisiondelta): + node = attr.ib(type=bytes) + p1node = attr.ib(type=bytes) + p2node = attr.ib(type=bytes) + basenode = attr.ib(type=bytes) + flags = attr.ib(type=int) + baserevisionsize = attr.ib(type=Optional[int]) + revision = attr.ib(type=Optional[bytes]) + delta = attr.ib(type=Optional[bytes]) + sidedata = attr.ib(type=Optional[bytes]) + protocol_flags = attr.ib(type=int) + linknode = attr.ib(default=None, type=Optional[bytes]) -@interfaceutil.implementer(repository.iverifyproblem) @attr.s(frozen=True) -class simplefilestoreproblem: - warning = attr.ib(default=None) - error = attr.ib(default=None) - node = attr.ib(default=None) +class simplefilestoreproblem(repository.iverifyproblem): + warning = attr.ib(default=None, type=Optional[bytes]) + error = attr.ib(default=None, type=Optional[bytes]) + node = attr.ib(default=None, type=Optional[bytes]) -@interfaceutil.implementer(repository.ifilestorage) -class filestorage: +class filestorage(repository.ifilestorage): """Implements storage for a tracked path. Data is stored in the VFS in a directory corresponding to the tracked @@ -160,10 +164,10 @@ self._index.append((0, 0, 0, -1, -1, -1, -1, self._repo.nullid)) - def __len__(self): + def __len__(self) -> int: return len(self._indexdata) - def __iter__(self): + def __iter__(self) -> Iterator[int]: return iter(range(len(self))) def revs(self, start=0, stop=None): @@ -427,7 +431,7 @@ 'storedsize': None, } - def verifyintegrity(self, state): + def verifyintegrity(self, state) -> Iterable[repository.iverifyproblem]: state['skipread'] = set() for rev in self: node = self.node(rev) @@ -452,7 +456,7 @@ nodes = [n for n in nodes if n != self._repo.nullid] if not nodes: return - for delta in storageutil.emitrevisions( + yield from storageutil.emitrevisions( self, nodes, nodesorder, @@ -461,8 +465,7 @@ assumehaveparentrevisions=assumehaveparentrevisions, deltamode=deltamode, sidedata_helpers=sidedata_helpers, - ): - yield delta + ) def add(self, text, meta, transaction, linkrev, p1, p2): if meta or text.startswith(b'\1\n'): @@ -665,8 +668,7 @@ class simplestore(store.encodedstore): def data_entries(self, undecodable=None): - for x in super(simplestore, self).data_entries(): - yield x + yield from super().data_entries() # Supplement with non-revlog files. extrafiles = self._walk('data', True, filefilter=issimplestorefile)