diff --git a/modern_di_faststream/main.py b/modern_di_faststream/main.py index 5fa3a2e..0148e98 100644 --- a/modern_di_faststream/main.py +++ b/modern_di_faststream/main.py @@ -68,7 +68,7 @@ def setup_di( msg = "Broker must be defined to setup DI" raise RuntimeError(msg) - container.providers_registry.add_providers(faststream_message_provider) + container.add_providers(faststream_message_provider) app.context.set_global(_ROOT_CONTAINER_KEY, container) # FastStream's lifecycle is callback-based, so the root container can't be # wrapped in ``async with``. Reopen it on startup (before the broker consumes) @@ -87,9 +87,7 @@ class Dependency(typing.Generic[T_co]): async def __call__(self, context: faststream.ContextRepo) -> T_co: request_container: Container = context.get(_REQUEST_CONTAINER_KEY) - if isinstance(self.dependency, providers.AbstractProvider): - return request_container.resolve_provider(self.dependency) - return request_container.resolve(dependency_type=self.dependency) + return request_container.resolve_dependency(self.dependency) def FromDI( # noqa: N802 diff --git a/pyproject.toml b/pyproject.toml index 7278736..81e619d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -17,7 +17,7 @@ classifiers = [ "Typing :: Typed", "Topic :: Software Development :: Libraries", ] -dependencies = ["faststream>=0.7,<0.8", "modern-di>=2.19.0,<3"] +dependencies = ["faststream>=0.7,<0.8", "modern-di>=2.25,<3"] version = "0" [project.urls]