mirror of
https://mau.dev/maunium/synapse.git
synced 2024-12-13 15:53:26 +01:00
Fix type hint errors from Twisted trunk (#16526)
This commit is contained in:
parent
8f35f8148e
commit
3ab861ab9e
6 changed files with 17 additions and 8 deletions
1
changelog.d/16526.misc
Normal file
1
changelog.d/16526.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Improve type hints.
|
|
@ -13,7 +13,7 @@
|
|||
# limitations under the License.
|
||||
|
||||
import queue
|
||||
from typing import BinaryIO, Optional, Union, cast
|
||||
from typing import Any, BinaryIO, Optional, Union, cast
|
||||
|
||||
from twisted.internet import threads
|
||||
from twisted.internet.defer import Deferred
|
||||
|
@ -58,7 +58,9 @@ class BackgroundFileConsumer:
|
|||
self._bytes_queue: queue.Queue[Optional[bytes]] = queue.Queue()
|
||||
|
||||
# Deferred that is resolved when finished writing
|
||||
self._finished_deferred: Optional[Deferred[None]] = None
|
||||
#
|
||||
# This is really Deferred[None], but mypy doesn't seem to like that.
|
||||
self._finished_deferred: Optional[Deferred[Any]] = None
|
||||
|
||||
# If the _writer thread throws an exception it gets stored here.
|
||||
self._write_exception: Optional[Exception] = None
|
||||
|
@ -80,9 +82,13 @@ class BackgroundFileConsumer:
|
|||
self.streaming = streaming
|
||||
self._finished_deferred = run_in_background(
|
||||
threads.deferToThreadPool,
|
||||
self._reactor,
|
||||
self._reactor.getThreadPool(),
|
||||
self._writer,
|
||||
# mypy seems to get confused with the chaining of ParamSpec from
|
||||
# run_in_background to deferToThreadPool.
|
||||
#
|
||||
# For Twisted trunk, ignore arg-type; for Twisted release ignore unused-ignore.
|
||||
self._reactor, # type: ignore[arg-type,unused-ignore]
|
||||
self._reactor.getThreadPool(), # type: ignore[arg-type,unused-ignore]
|
||||
self._writer, # type: ignore[arg-type,unused-ignore]
|
||||
)
|
||||
if not streaming:
|
||||
self._producer.resumeProducing()
|
||||
|
|
|
@ -156,6 +156,7 @@ class AppServiceHandlerTestCase(unittest.TestCase):
|
|||
result = self.successResultOf(
|
||||
defer.ensureDeferred(self.handler.query_room_alias_exists(room_alias))
|
||||
)
|
||||
assert result is not None
|
||||
|
||||
self.mock_as_api.query_alias.assert_called_once_with(
|
||||
interested_service, room_alias_str
|
||||
|
|
|
@ -335,7 +335,7 @@ class Deferred__next__Patch:
|
|||
self._request_number = request_number
|
||||
self._seen_awaits = seen_awaits
|
||||
|
||||
self._original_Deferred___next__ = Deferred.__next__
|
||||
self._original_Deferred___next__ = Deferred.__next__ # type: ignore[misc,unused-ignore]
|
||||
|
||||
# The number of `await`s on `Deferred`s we have seen so far.
|
||||
self.awaits_seen = 0
|
||||
|
|
|
@ -70,7 +70,7 @@ class FederationClientTests(HomeserverTestCase):
|
|||
"""
|
||||
|
||||
@defer.inlineCallbacks
|
||||
def do_request() -> Generator["Deferred[object]", object, object]:
|
||||
def do_request() -> Generator["Deferred[Any]", object, object]:
|
||||
with LoggingContext("one") as context:
|
||||
fetch_d = defer.ensureDeferred(
|
||||
self.cl.get_json("testserv:8008", "foo/bar")
|
||||
|
|
|
@ -30,6 +30,7 @@ from typing import (
|
|||
Generic,
|
||||
Iterable,
|
||||
List,
|
||||
Mapping,
|
||||
NoReturn,
|
||||
Optional,
|
||||
Tuple,
|
||||
|
@ -251,7 +252,7 @@ class TestCase(unittest.TestCase):
|
|||
except AssertionError as e:
|
||||
raise (type(e))(f"Assert error for '.{key}':") from e
|
||||
|
||||
def assert_dict(self, required: dict, actual: dict) -> None:
|
||||
def assert_dict(self, required: Mapping, actual: Mapping) -> None:
|
||||
"""Does a partial assert of a dict.
|
||||
|
||||
Args:
|
||||
|
|
Loading…
Reference in a new issue