You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Updating dependency-injector from dependency-injector==4.45.0 to dependency-injector==4.46.0 makes the application crash with multiple values for argument.
Expected Behavior
Same behavior as in v4.45.0.
Current Behavior
Steps to Reproduce
containers/application.py:
from dependency_injector.containers import DeclarativeContainer
from dependency_injector.providers import Container, ThreadLocalSingleton
from config import Configuration
from .services import Services
class Application(DeclarativeContainer):
...
configuration = ThreadLocalSingleton[Configuration](Configuration)
services: Container[Services] = Container[Services](Services, configuration=configuration)
containers/repositories.py:
from dependency_injector.containers import DeclarativeContainer, WiringConfiguration
from dependency_injector.providers import Factory, ThreadLocalSingleton
from config import Configuration
from repositories import TranslationValueRepository
from .gateways import Gateways
class Repositories(DeclarativeContainer):
wiring_config = WiringConfiguration(
packages=[
"services",
"abstracts.services",
]
)
...
configuration = ThreadLocalSingleton[Configuration](Configuration)
translation_value_repository = Factory(lambda: TranslationValueRepository(...))
....
from abc import ABC, ABCMeta
from uuid import UUID
from dependency_injector.wiring import Provide, inject
from containers.repositories import Repositories
from models.api import SchemaNameTranslation
from repositories import TranslationValueRepository
class TranslationSchemeValuesServiceAbstract(ABC, metaclass=ABCMeta):
@staticmethod
@inject
def get_translation_scheme_values(
translation_id: UUID,
translation_value_repository: TranslationValueRepository = Provide[Repositories.translation_value_repository],
) -> list[SchemaNameTranslation]:
translation_values = translation_value_repository.get_by_translation_id(translation_id)
return TranslationSchemeValuesServiceAbstract.transform_translation_scheme_values(translation_values)
Then we have a service which inherits this Abstract class and using the function get_translation_scheme_values which again throws the exception which is detailed below.
Updating
dependency-injector
fromdependency-injector==4.45.0
todependency-injector==4.46.0
makes the application crash with multiple values for argument.Expected Behavior
Same behavior as in v4.45.0.
Current Behavior
Steps to Reproduce
containers/application.py
:containers/repositories.py
:abstracts/services/translation_scheme_values_service.py
:Then we have a service which inherits this Abstract class and using the function
get_translation_scheme_values
which again throws the exception which is detailed below.Context (Environment)
Python 3.13.1
Packages list:
Detailed Description
Possible Implementation
Expected behaviour: Since it works with
dependency-injector==4.45.0
, I'd expect it to work the same.Actual behaviour: Crashes.
The text was updated successfully, but these errors were encountered: