From 1f3ea167b2460cfa10a529b2d32666f0cc08190f Mon Sep 17 00:00:00 2001 From: remimd Date: Sun, 28 Dec 2025 11:39:56 +0100 Subject: [PATCH] Minor renames --- injection/_core/asfunction.py | 13 ++++++------- injection/_core/module.py | 23 ++++++++++++----------- injection/testing/__init__.pyi | 16 ++++++++-------- uv.lock | 6 +++--- 4 files changed, 29 insertions(+), 29 deletions(-) diff --git a/injection/_core/asfunction.py b/injection/_core/asfunction.py index 2d15b20..226214e 100644 --- a/injection/_core/asfunction.py +++ b/injection/_core/asfunction.py @@ -4,7 +4,7 @@ from typing import Any, Protocol from injection._core.common.asynchronous import Caller -from injection._core.module import Module, mod +from injection._core.module import InjectMetadata, Module, mod class _AsFunctionCallable[**P, T](Protocol): @@ -23,15 +23,14 @@ def asfunction[**P, T]( ) -> Any: def decorator(wp: AsFunctionWrappedType[P, T]) -> Callable[P, T]: fake_method = wp.__call__.__get__(NotImplemented, wp) - factory: Caller[..., Callable[P, T]] = (module or mod())._metadata( - wp, - threadsafe, - ) + metadata: InjectMetadata[..., Callable[P, T]] = ( + module or mod() + ).create_metadata(wp, threadsafe) wrapper: Callable[P, T] = ( - _wrap_async(factory) # type: ignore[arg-type, assignment] + _wrap_async(metadata) # type: ignore[arg-type, assignment] if iscoroutinefunction(fake_method) - else _wrap_sync(factory) + else _wrap_sync(metadata) ) wrapper = update_wrapper(wrapper, fake_method) diff --git a/injection/_core/module.py b/injection/_core/module.py index 36d84f1..4ae2954 100644 --- a/injection/_core/module.py +++ b/injection/_core/module.py @@ -363,6 +363,14 @@ def decorator(wp: Callable[P, T]) -> Callable[P, T]: return decorator(wrapped) if wrapped else decorator + def create_metadata[**P, T]( + self, + wrapped: Callable[P, T], + /, + threadsafe: bool | None = None, + ) -> InjectMetadata[P, T]: + return InjectMetadata(wrapped, threadsafe).listen(self) + if TYPE_CHECKING: # pragma: no cover @overload @@ -387,7 +395,7 @@ def make_injected_function[**P, T]( /, threadsafe: bool | None = None, ) -> InjectedFunction[P, T]: - metadata = self._metadata(wrapped, threadsafe) + metadata = self.create_metadata(wrapped, threadsafe) if iscoroutinefunction(wrapped): return AsyncInjectedFunction(metadata) # type: ignore[arg-type, return-value] @@ -400,7 +408,7 @@ def make_async_factory[T]( /, threadsafe: bool | None = None, ) -> Callable[..., Awaitable[T]]: - return self._metadata(wrapped, threadsafe).acall + return self.create_metadata(wrapped, threadsafe).acall async def afind_instance[T]( self, @@ -514,7 +522,7 @@ def aget_lazy_instance[T, Default]( threadsafe: bool | None = None, ) -> Awaitable[T | Default]: return SimpleAwaitable( - self._metadata( + self.create_metadata( lambda instance=default: instance, threadsafe=threadsafe, ) @@ -550,7 +558,7 @@ def get_lazy_instance[T, Default]( threadsafe: bool | None = None, ) -> Invertible[T | Default]: return SimpleInvertible( - self._metadata( + self.create_metadata( lambda instance=default: instance, threadsafe=threadsafe, ) @@ -681,13 +689,6 @@ def dispatch(self, event: Event) -> Iterator[None]: finally: self.__debug(event) - def _metadata[**P, T]( - self, - wrapped: Callable[P, T], - threadsafe: bool | None = None, - ) -> InjectMetadata[P, T]: - return InjectMetadata(wrapped, threadsafe).listen(self) - def _iter_locators(self) -> Iterator[Locator]: for module in self.__modules: yield from module._iter_locators() diff --git a/injection/testing/__init__.pyi b/injection/testing/__init__.pyi index d237047..945f901 100644 --- a/injection/testing/__init__.pyi +++ b/injection/testing/__init__.pyi @@ -5,15 +5,15 @@ from injection.loaders import LoadedProfile, ProfileLoader TEST_PROFILE_NAME: Final[str] = ... -__MODULE: Final[Module] = ... +_test_module: Final[Module] = ... -reserve_scoped_test_slot = __MODULE.reserve_scoped_slot -set_test_constant = __MODULE.set_constant -should_be_test_injectable = __MODULE.should_be_injectable -test_constant = __MODULE.constant -test_injectable = __MODULE.injectable -test_scoped = __MODULE.scoped -test_singleton = __MODULE.singleton +reserve_scoped_test_slot = _test_module.reserve_scoped_slot +set_test_constant = _test_module.set_constant +should_be_test_injectable = _test_module.should_be_injectable +test_constant = _test_module.constant +test_injectable = _test_module.injectable +test_scoped = _test_module.scoped +test_singleton = _test_module.singleton def load_test_profile(loader: ProfileLoader = ...) -> LoadedProfile: """ diff --git a/uv.lock b/uv.lock index 2e04731..14c0883 100644 --- a/uv.lock +++ b/uv.lock @@ -368,7 +368,7 @@ wheels = [ [[package]] name = "fastapi" -version = "0.127.0" +version = "0.128.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "annotated-doc" }, @@ -376,9 +376,9 @@ dependencies = [ { name = "starlette" }, { name = "typing-extensions" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/0c/02/2cbbecf6551e0c1a06f9b9765eb8f7ae126362fbba43babbb11b0e3b7db3/fastapi-0.127.0.tar.gz", hash = "sha256:5a9246e03dcd1fdb19f1396db30894867c1d630f5107dc167dcbc5ed1ea7d259", size = 369269, upload-time = "2025-12-21T16:47:16.393Z" } +sdist = { url = "https://files.pythonhosted.org/packages/52/08/8c8508db6c7b9aae8f7175046af41baad690771c9bcde676419965e338c7/fastapi-0.128.0.tar.gz", hash = "sha256:1cc179e1cef10a6be60ffe429f79b829dce99d8de32d7acb7e6c8dfdf7f2645a", size = 365682, upload-time = "2025-12-27T15:21:13.714Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/8a/fa/6a27e2ef789eb03060abb43b952a7f0bd39e6feaa3805362b48785bcedc5/fastapi-0.127.0-py3-none-any.whl", hash = "sha256:725aa2bb904e2eff8031557cf4b9b77459bfedd63cae8427634744fd199f6a49", size = 112055, upload-time = "2025-12-21T16:47:14.757Z" }, + { url = "https://files.pythonhosted.org/packages/5c/05/5cbb59154b093548acd0f4c7c474a118eda06da25aa75c616b72d8fcd92a/fastapi-0.128.0-py3-none-any.whl", hash = "sha256:aebd93f9716ee3b4f4fcfe13ffb7cf308d99c9f3ab5622d8877441072561582d", size = 103094, upload-time = "2025-12-27T15:21:12.154Z" }, ] [[package]]