Skip to content

Commit c6c2e9e

Browse files
committed
make type annotations compatible with older Python versions
1 parent f033409 commit c6c2e9e

File tree

3 files changed

+7
-5
lines changed

3 files changed

+7
-5
lines changed

enapter/async_/generator.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ def generator(
88
) -> Callable[..., AsyncContextManager[AsyncGenerator]]:
99
@functools.wraps(func)
1010
@contextlib.asynccontextmanager
11-
async def wrapper(*args, **kwargs) -> AsyncGenerator[AsyncGenerator]:
11+
async def wrapper(*args, **kwargs) -> AsyncGenerator[AsyncGenerator, None]:
1212
gen = func(*args, **kwargs)
1313
try:
1414
yield gen

enapter/mqtt/api/device_channel.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,9 @@ def _new_logger(hardware_id, channel_id) -> logging.LoggerAdapter:
3535
return logging.LoggerAdapter(LOGGER, extra=extra)
3636

3737
@enapter.async_.generator
38-
async def subscribe_to_command_requests(self) -> AsyncGenerator[CommandRequest]:
38+
async def subscribe_to_command_requests(
39+
self,
40+
) -> AsyncGenerator[CommandRequest, None]:
3941
async with self._subscribe("v1/command/requests") as messages:
4042
async for msg in messages:
4143
assert isinstance(msg.payload, str) or isinstance(msg.payload, bytes)
@@ -62,7 +64,7 @@ async def publish_logs(
6264

6365
def _subscribe(
6466
self, path: str
65-
) -> AsyncContextManager[AsyncGenerator[aiomqtt.Message]]:
67+
) -> AsyncContextManager[AsyncGenerator[aiomqtt.Message, None]]:
6668
topic = f"v1/to/{self._hardware_id}/{self._channel_id}/{path}"
6769
return self._client.subscribe(topic)
6870

enapter/mqtt/client.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ async def publish(self, *args, **kwargs) -> None:
3838
await self._publisher.publish(*args, **kwargs)
3939

4040
@enapter.async_.generator
41-
async def subscribe(self, *topics: str) -> AsyncGenerator[aiomqtt.Message]:
41+
async def subscribe(self, *topics: str) -> AsyncGenerator[aiomqtt.Message, None]:
4242
while True:
4343
try:
4444
async with self._connect() as subscriber:
@@ -75,7 +75,7 @@ async def _run(self) -> None:
7575
self._logger.info("publisher disconnected")
7676

7777
@contextlib.asynccontextmanager
78-
async def _connect(self) -> AsyncGenerator[aiomqtt.Client]:
78+
async def _connect(self) -> AsyncGenerator[aiomqtt.Client, None]:
7979
host = await self._maybe_resolve_mdns(self._config.host)
8080
async with aiomqtt.Client(
8181
hostname=host,

0 commit comments

Comments
 (0)