diff --git a/src/dependency_injector/_cwiring.pyx b/src/dependency_injector/_cwiring.pyx index 252ff77e..a21ae165 100644 --- a/src/dependency_injector/_cwiring.pyx +++ b/src/dependency_injector/_cwiring.pyx @@ -11,6 +11,7 @@ from .wiring import _Marker cimport cython +@cython.internal @cython.no_gc cdef class KWPair: cdef str name diff --git a/src/dependency_injector/wiring.py b/src/dependency_injector/wiring.py index 0df956b5..be17b8f8 100644 --- a/src/dependency_injector/wiring.py +++ b/src/dependency_injector/wiring.py @@ -1046,9 +1046,9 @@ from ._cwiring import DependencyResolver # noqa: E402 def _get_async_patched(fn: F, patched: PatchedCallable) -> F: @functools.wraps(fn) async def _patched(*args: Any, **raw_kwargs: Any) -> Any: - dr = DependencyResolver(raw_kwargs, patched.injections, patched.closing) + resolver = DependencyResolver(raw_kwargs, patched.injections, patched.closing) - async with dr as kwargs: + async with resolver as kwargs: return await fn(*args, **kwargs) return cast(F, _patched) @@ -1058,9 +1058,9 @@ def _get_async_patched(fn: F, patched: PatchedCallable) -> F: def _get_async_gen_patched(fn: F, patched: PatchedCallable) -> F: @functools.wraps(fn) async def _patched(*args: Any, **raw_kwargs: Any) -> AsyncIterator[Any]: - dr = DependencyResolver(raw_kwargs, patched.injections, patched.closing) + resolver = DependencyResolver(raw_kwargs, patched.injections, patched.closing) - async with dr as kwargs: + async with resolver as kwargs: async for obj in fn(*args, **kwargs): yield obj @@ -1070,9 +1070,9 @@ def _get_async_gen_patched(fn: F, patched: PatchedCallable) -> F: def _get_sync_patched(fn: F, patched: PatchedCallable) -> F: @functools.wraps(fn) def _patched(*args: Any, **raw_kwargs: Any) -> Any: - dr = DependencyResolver(raw_kwargs, patched.injections, patched.closing) + resolver = DependencyResolver(raw_kwargs, patched.injections, patched.closing) - with dr as kwargs: + with resolver as kwargs: return fn(*args, **kwargs) return cast(F, _patched)