diff --git a/modern_di_starlette/main.py b/modern_di_starlette/main.py index f74ada4..23b23b4 100644 --- a/modern_di_starlette/main.py +++ b/modern_di_starlette/main.py @@ -1,5 +1,6 @@ """modern-di integration for Starlette.""" +import collections.abc import contextlib import functools import typing @@ -40,7 +41,7 @@ def _compose_lifespan(original: Lifespan[Starlette]) -> Lifespan[Starlette]: """ @contextlib.asynccontextmanager - async def composed(app: Starlette) -> typing.AsyncIterator[typing.Mapping[str, typing.Any] | None]: + async def composed(app: Starlette) -> collections.abc.AsyncGenerator[typing.Mapping[str, typing.Any] | None]: async with original(app) as state, fetch_di_container(app): yield state diff --git a/tests/test_lifespan.py b/tests/test_lifespan.py index 3a79f92..f037bae 100644 --- a/tests/test_lifespan.py +++ b/tests/test_lifespan.py @@ -1,5 +1,5 @@ +import collections.abc import contextlib -import typing import modern_di from starlette import status @@ -33,7 +33,7 @@ def test_setup_di_composes_with_existing_lifespan() -> None: events: list[str] = [] @contextlib.asynccontextmanager - async def user_lifespan(app_: Starlette) -> typing.AsyncIterator[dict[str, str]]: + async def user_lifespan(app_: Starlette) -> collections.abc.AsyncGenerator[dict[str, str]]: assert isinstance(app_, Starlette) events.append("startup") yield {"marker": "from-user-lifespan"}