diff --git a/modern_di_fastapi/main.py b/modern_di_fastapi/main.py index d2d51ac..04d467e 100644 --- a/modern_di_fastapi/main.py +++ b/modern_di_fastapi/main.py @@ -1,3 +1,4 @@ +import collections.abc import contextlib import dataclasses import typing @@ -42,7 +43,7 @@ def _compose_lifespan(original: Lifespan[fastapi.FastAPI]) -> Lifespan[fastapi.F """ @contextlib.asynccontextmanager - async def composed(app_: fastapi.FastAPI) -> typing.AsyncIterator[typing.Mapping[str, typing.Any] | None]: + async def composed(app_: fastapi.FastAPI) -> 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 d24f1a8..e9102da 100644 --- a/tests/test_lifespan.py +++ b/tests/test_lifespan.py @@ -1,3 +1,4 @@ +import collections.abc import contextlib import typing @@ -32,7 +33,7 @@ def test_setup_di_composes_with_existing_lifespan() -> None: events: list[str] = [] @contextlib.asynccontextmanager - async def user_lifespan(app_: fastapi.FastAPI) -> typing.AsyncIterator[dict[str, str]]: + async def user_lifespan(app_: fastapi.FastAPI) -> collections.abc.AsyncGenerator[dict[str, str]]: assert isinstance(app_, fastapi.FastAPI) events.append("startup") yield {"marker": "from-user-lifespan"}