diff --git a/conftest.py b/conftest.py index ab279ca..85ed1c0 100644 --- a/conftest.py +++ b/conftest.py @@ -6,7 +6,7 @@ from injection import Module, mod from injection._core.module import Module as CoreModule -from injection.utils import PythonModuleLoader +from injection.loaders import PythonModuleLoader from tests.helpers import EventHistory logging.basicConfig(level=logging.DEBUG) diff --git a/documentation/utils.md b/documentation/utils.md index 6a33131..7fdb4e3 100644 --- a/documentation/utils.md +++ b/documentation/utils.md @@ -19,7 +19,7 @@ To load Injectable1 and Injectable2 into memory you can do the following: ```python # Imports -from injection.utils import PythonModuleLoader +from injection.loaders import PythonModuleLoader import package ``` @@ -64,7 +64,7 @@ PythonModuleLoader.endswith(f"_{profile}").load(package) `load_packages` is a simplified version of `PythonModuleLoader`. ```python -from injection.utils import load_packages +from injection.loaders import load_packages import package @@ -87,7 +87,7 @@ from abc import abstractmethod from typing import Protocol from injection import inject, mod, should_be_injectable, singleton -from injection.utils import load_profile +from injection.loaders import load_profile @should_be_injectable class SMSService(Protocol): diff --git a/injection/ext/fastapi.py b/injection/ext/fastapi.py index a96100f..3d2a1a8 100644 --- a/injection/ext/fastapi.py +++ b/injection/ext/fastapi.py @@ -1,5 +1,5 @@ from types import GenericAlias -from typing import TYPE_CHECKING, Annotated, Any, TypeAliasType +from typing import Annotated, Any, TypeAliasType from fastapi import Depends @@ -33,10 +33,6 @@ def __getitem__(self, params: Any, /) -> Any: return Annotated[cls, self(cls), *iter_params] -if TYPE_CHECKING: - type Inject[T, *Metadata] = Annotated[T, Depends(...), *Metadata] - -else: - Inject = FastAPIInject() +Inject = FastAPIInject() del FastAPIInject diff --git a/injection/ext/fastapi.pyi b/injection/ext/fastapi.pyi new file mode 100644 index 0000000..023368d --- /dev/null +++ b/injection/ext/fastapi.pyi @@ -0,0 +1,5 @@ +from typing import Annotated + +from fastapi import Depends + +type Inject[T, *Metadata] = Annotated[T, Depends(...), *Metadata] diff --git a/injection/utils.py b/injection/loaders.py similarity index 100% rename from injection/utils.py rename to injection/loaders.py diff --git a/injection/testing/__init__.py b/injection/testing/__init__.py index e8b7a81..01e22a6 100644 --- a/injection/testing/__init__.py +++ b/injection/testing/__init__.py @@ -1,7 +1,7 @@ from typing import ContextManager, Final from injection import Module, mod -from injection.utils import load_profile +from injection.loaders import load_profile __all__ = ( "load_test_profile", diff --git a/tests/utils/test_load_profile.py b/tests/utils/test_load_profile.py index 933f813..87a1b59 100644 --- a/tests/utils/test_load_profile.py +++ b/tests/utils/test_load_profile.py @@ -1,5 +1,5 @@ from injection import find_instance, injectable, mod -from injection.utils import load_profile +from injection.loaders import load_profile class TestLoadProfile: diff --git a/tests/utils/test_python_module_loader.py b/tests/utils/test_python_module_loader.py index 8d2d4fd..f9fac11 100644 --- a/tests/utils/test_python_module_loader.py +++ b/tests/utils/test_python_module_loader.py @@ -1,6 +1,6 @@ import pytest -from injection.utils import PythonModuleLoader, load_packages +from injection.loaders import PythonModuleLoader, load_packages class TestPythonModuleLoader: