diff --git a/swh/storage/cassandra/storage.py b/swh/storage/cassandra/storage.py --- a/swh/storage/cassandra/storage.py +++ b/swh/storage/cassandra/storage.py @@ -558,7 +558,7 @@ return {"release:add": len(to_add)} - def release_missing(self, releases): + def release_missing(self, releases: List[Sha1Git]) -> Iterable[Sha1Git]: return self._cql_runner.release_missing(releases) def release_get(self, releases): diff --git a/swh/storage/in_memory.py b/swh/storage/in_memory.py --- a/swh/storage/in_memory.py +++ b/swh/storage/in_memory.py @@ -582,7 +582,7 @@ return {"release:add": len(to_add)} - def release_missing(self, releases): + def release_missing(self, releases: List[Sha1Git]) -> Iterable[Sha1Git]: yield from (rel for rel in releases if rel not in self._releases) def release_get(self, releases): diff --git a/swh/storage/interface.py b/swh/storage/interface.py --- a/swh/storage/interface.py +++ b/swh/storage/interface.py @@ -606,13 +606,13 @@ ... @remote_api_endpoint("release/missing") - def release_missing(self, releases): - """List releases missing from storage + def release_missing(self, releases: List[Sha1Git]) -> Iterable[Sha1Git]: + """List missing release ids from storage Args: - releases: an iterable of release ids + releases: release ids - Returns: + Yields: a list of missing release ids """ diff --git a/swh/storage/storage.py b/swh/storage/storage.py --- a/swh/storage/storage.py +++ b/swh/storage/storage.py @@ -680,7 +680,9 @@ @timed @db_transaction_generator() - def release_missing(self, releases, db=None, cur=None): + def release_missing( + self, releases: List[Sha1Git], db=None, cur=None + ) -> Iterable[Sha1Git]: if not releases: return