Exceptions

Custom exceptions for the diwire dependency injection library.

exception diwire.exceptions.DIWireError[source]

Base exception for all diwire errors.

exception diwire.exceptions.DIWireServiceNotRegisteredError(service_key: ServiceKey)[source]

Service not registered and auto-registration disabled.

exception diwire.exceptions.DIWireMissingDependenciesError(service_key: ServiceKey, missing: list[ServiceKey])[source]

Service cannot be resolved due to missing dependencies.

exception diwire.exceptions.DIWireAutoRegistrationError[source]

Base for auto-registration failures.

exception diwire.exceptions.DIWireComponentSpecifiedError(service_key: ServiceKey)[source]

Cannot auto-register service key with a component.

exception diwire.exceptions.DIWireIgnoredServiceError(service_key: ServiceKey)[source]

Cannot auto-register service in ignore list.

exception diwire.exceptions.DIWireNotAClassError(service_key: ServiceKey)[source]

Cannot auto-register non-class value.

exception diwire.exceptions.DIWireUnionTypeError(service_key: ServiceKey)[source]

Cannot auto-register a union type.

exception diwire.exceptions.DIWireCircularDependencyError(service_key: ServiceKey, resolution_chain: list[ServiceKey])[source]

Circular dependency detected during resolution.

exception diwire.exceptions.DIWireScopeMismatchError(service_key: ServiceKey, registered_scope: str, current_scope: str | None)[source]

Service is being resolved outside its registered scope.

exception diwire.exceptions.DIWireScopedWithoutScopeError(service_key: ServiceKey)[source]

SCOPED registered without a scope.

exception diwire.exceptions.DIWireGeneratorFactoryWithoutScopeError(service_key: ServiceKey)[source]

Factory returned a generator without an active scope.

exception diwire.exceptions.DIWireGeneratorFactoryDidNotYieldError(service_key: ServiceKey)[source]

Factory returned a generator that yielded no value.

exception diwire.exceptions.DIWireGeneratorFactoryUnsupportedLifetimeError(service_key: ServiceKey)[source]

Factory returned a generator for an unsupported lifetime.

exception diwire.exceptions.DIWireAsyncDependencyInSyncContextError(service_key: ServiceKey, async_dep: ServiceKey)[source]

Attempted to resolve an async dependency using synchronous resolve().

exception diwire.exceptions.DIWireAsyncGeneratorFactoryWithoutScopeError(service_key: ServiceKey)[source]

Async generator factory used without an active scope.

exception diwire.exceptions.DIWireAsyncGeneratorFactoryDidNotYieldError(service_key: ServiceKey)[source]

Async generator factory did not yield a value.

exception diwire.exceptions.DIWireContainerNotSetError[source]

No container set in current context.

exception diwire.exceptions.DIWireDependencyExtractionError(service_key: ServiceKey, cause: Exception)[source]

Failed to extract dependencies from a type.

exception diwire.exceptions.DIWireConcreteClassRequiresClassError(concrete_class: object)[source]

The ‘concrete_class’ parameter requires a class type.

exception diwire.exceptions.DIWireAsyncCleanupWithoutEventLoopError(scope_name: str | None)[source]

Async cleanup required but no event loop is running.

exception diwire.exceptions.DIWireDecoratorFactoryMissingReturnAnnotationError(factory: object)[source]

Raised when factory decorator cannot determine service type.

This happens when: - No explicit key is given, AND - The function has no return type annotation (or returns None)

exception diwire.exceptions.DIWireOpenGenericRegistrationError(service_key: ServiceKey, reason: str)[source]

Open generic registration is invalid or unsupported.

exception diwire.exceptions.DIWireOpenGenericResolutionError(service_key: ServiceKey, reason: str)[source]

Cannot resolve an open or partially open generic.

exception diwire.exceptions.DIWireInvalidGenericTypeArgumentError(service_key: ServiceKey, typevar: Any, arg: Any, reason: str)[source]

Type argument does not satisfy TypeVar constraints or bounds.

exception diwire.exceptions.DIWireContainerClosedError[source]

Operation attempted on a closed container.