Skip to main content

Dependency injection framework for Python

Project description

https://raw.githubusercontent.com/wiki/ets-labs/python-dependency-injector/img/logo.svg

Latest Version License Supported Python versions Supported Python implementations Downloads Downloads Downloads Wheel Build Status Coverage Status

What is Dependency Injector?

Dependency Injector is a dependency injection framework for Python.

It helps implement the dependency injection principle.

Key features of the Dependency Injector:

  • Providers. Provides Factory, Singleton, Callable, Coroutine, Object, List, Dict, Configuration, Resource, Dependency, and Selector providers that help assemble your objects. See Providers.

  • Overriding. Can override any provider by another provider on the fly. This helps in testing and configuring dev/stage environment to replace API clients with stubs etc. See Provider overriding.

  • Configuration. Reads configuration from yaml, ini, and json files, pydantic settings, environment variables, and dictionaries. See Configuration provider.

  • Resources. Helps with initialization and configuring of logging, event loop, thread or process pool, etc. Can be used for per-function execution scope in tandem with wiring. See Resource provider.

  • Containers. Provides declarative and dynamic containers. See Containers.

  • Wiring. Injects dependencies into functions and methods. Helps integrate with other frameworks: Django, Flask, Aiohttp, Sanic, FastAPI, etc. See Wiring.

  • Asynchronous. Supports asynchronous injections. See Asynchronous injections.

  • Typing. Provides typing stubs, mypy-friendly. See Typing and mypy.

  • Performance. Fast. Written in Cython.

  • Maturity. Mature and production-ready. Well-tested, documented, and supported.

from dependency_injector import containers, providers
from dependency_injector.wiring import Provide, inject


class Container(containers.DeclarativeContainer):

    config = providers.Configuration()

    api_client = providers.Singleton(
        ApiClient,
        api_key=config.api_key,
        timeout=config.timeout,
    )

    service = providers.Factory(
        Service,
        api_client=api_client,
    )


@inject
def main(service: Service = Provide[Container.service]) -> None:
    ...


if __name__ == "__main__":
    container = Container()
    container.config.api_key.from_env("API_KEY", required=True)
    container.config.timeout.from_env("TIMEOUT", as_=int, default=5)
    container.wire(modules=[__name__])

    main()  # <-- dependency is injected automatically

    with container.api_client.override(mock.Mock()):
        main()  # <-- overridden dependency is injected automatically

When you call the main() function the Service dependency is assembled and injected automatically.

When you do testing, you call the container.api_client.override() method to replace the real API client with a mock. When you call main(), the mock is injected.

You can override any provider with another provider.

It also helps you in a re-configuring project for different environments: replace an API client with a stub on the dev or stage.

With the Dependency Injector, object assembling is consolidated in a container. Dependency injections are defined explicitly. This makes it easier to understand and change how an application works.

https://raw.githubusercontent.com/wiki/ets-labs/python-dependency-injector/img/di-readme.svg

Visit the docs to know more about the Dependency injection and inversion of control in Python.

Installation

The package is available on the PyPi:

pip install dependency-injector

Documentation

The documentation is available here.

Examples

Choose one of the following:

Tutorials

Choose one of the following:

Concept

The framework stands on the PEP20 (The Zen of Python) principle:

Explicit is better than implicit

You need to specify how to assemble and where to inject the dependencies explicitly.

The power of the framework is in its simplicity. Dependency Injector is a simple tool for the powerful concept.

Frequently asked questions

What is dependency injection?
  • dependency injection is a principle that decreases coupling and increases cohesion

Why should I do the dependency injection?
  • your code becomes more flexible, testable, and clear 😎

How do I start applying the dependency injection?
  • you start writing the code following the dependency injection principle

  • you register all of your application components and their dependencies in the container

  • when you need a component, you specify where to inject it or get it from the container

What price do I pay and what do I get?
  • you need to explicitly specify the dependencies

  • it will be extra work in the beginning

  • it will payoff as project grows

Have a question?
Found a bug?
Want to help?
  • ⭐️ Star the Dependency Injector on the Github

  • 🆕 Start a new project with the Dependency Injector

  • 💬 Tell your friend about the Dependency Injector

Want to contribute?
  • 🔀 Fork the project

  • ⬅️ Open a pull request to the develop branch

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dependency_injector-4.49.0.tar.gz (1.2 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

dependency_injector-4.49.0-pp311-pypy311_pp73-win_amd64.whl (1.7 MB view details)

Uploaded PyPyWindows x86-64

dependency_injector-4.49.0-pp311-pypy311_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.7 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

dependency_injector-4.49.0-pp311-pypy311_pp73-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (1.8 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

dependency_injector-4.49.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl (1.7 MB view details)

Uploaded PyPymacOS 11.0+ ARM64

dependency_injector-4.49.0-cp310-abi3-win_amd64.whl (1.7 MB view details)

Uploaded CPython 3.10+Windows x86-64

dependency_injector-4.49.0-cp310-abi3-win32.whl (1.5 MB view details)

Uploaded CPython 3.10+Windows x86

dependency_injector-4.49.0-cp310-abi3-musllinux_1_2_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ x86-64

dependency_injector-4.49.0-cp310-abi3-musllinux_1_2_aarch64.whl (1.7 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARM64

dependency_injector-4.49.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

dependency_injector-4.49.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

dependency_injector-4.49.0-cp310-abi3-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

dependency_injector-4.49.0-cp39-cp39-win_amd64.whl (1.8 MB view details)

Uploaded CPython 3.9Windows x86-64

dependency_injector-4.49.0-cp39-cp39-win32.whl (1.6 MB view details)

Uploaded CPython 3.9Windows x86

dependency_injector-4.49.0-cp39-cp39-musllinux_1_2_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

dependency_injector-4.49.0-cp39-cp39-musllinux_1_2_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

dependency_injector-4.49.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

dependency_injector-4.49.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

dependency_injector-4.49.0-cp39-cp39-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

dependency_injector-4.49.0-cp38-cp38-win_amd64.whl (1.8 MB view details)

Uploaded CPython 3.8Windows x86-64

dependency_injector-4.49.0-cp38-cp38-win32.whl (1.6 MB view details)

Uploaded CPython 3.8Windows x86

dependency_injector-4.49.0-cp38-cp38-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.8musllinux: musl 1.2+ x86-64

dependency_injector-4.49.0-cp38-cp38-musllinux_1_2_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.8musllinux: musl 1.2+ ARM64

dependency_injector-4.49.0-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

dependency_injector-4.49.0-cp38-cp38-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

dependency_injector-4.49.0-cp38-cp38-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

File details

Details for the file dependency_injector-4.49.0.tar.gz.

File metadata

  • Download URL: dependency_injector-4.49.0.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dependency_injector-4.49.0.tar.gz
Algorithm Hash digest
SHA256 17a04dbfaa8159f1dc068fc26bc2fa0af9774cdd87f99e3b61bd74c9e7171589
MD5 0c03a0974b7f8815762f6ef6cf7772f1
BLAKE2b-256 f3be26bb530d06618fb0bb34244d46b0d0ccc53d0974e680d8653f1b1b313a0e

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0.tar.gz:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-pp311-pypy311_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-pp311-pypy311_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 8ffa2ac9297446f73bd28ada81aadf4494a52d869159d58923435bcd88b5ef60
MD5 3c094c833e0ce7b65a037f151ba7f156
BLAKE2b-256 b952a1957d4ef87a52c13f2b790c1cc5fae17eb385fbe2e978c7fd8c1ebb4ea9

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-pp311-pypy311_pp73-win_amd64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-pp311-pypy311_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-pp311-pypy311_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a5857b2672512654110dd0371fa965b98255e2f0507dd4732a066767b72e23c4
MD5 f03769ba98de8ff6d653bb7879a0778d
BLAKE2b-256 35326243ef32c384dda156b053c3df5c8b6c3ac42250ec089a09915f015d38a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-pp311-pypy311_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-pp311-pypy311_pp73-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-pp311-pypy311_pp73-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 4b0c637ba230e390631da13bb80c955a9f85487f78c9772c0f6a3b50bfbff3a6
MD5 7590ad739d48ff619877414d0d212fc6
BLAKE2b-256 2544d108aeee8f2edd3e725ac0e32d16e4339a034a07da9ddaf07f772f425140

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-pp311-pypy311_pp73-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6c4b49df30f13f5e4361719b21c79445db11869a7a00d80a0486c03fd764ba8f
MD5 b9053e1139cf38600f651f3b76613ac1
BLAKE2b-256 9235ca21ab897fc193dcdbad1f856361e7614b8e2b69f9f9351e9a87a3c58e51

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 fa4b587158b0d65a1f9681ca648da3f9bf90f312f68c2f2e73cc58296ec2bf45
MD5 216a3d9bbbd22f119feb8ca15f18797c
BLAKE2b-256 e2b51d8e5627137cb9a6812ecaa468eaf39154f6605c5088da4749e5a8579483

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp310-abi3-win_amd64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp310-abi3-win32.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 0593c8aaade651a5a88ff8ba1271a8364773e76d3aa2efbeacc3be4969cafd1c
MD5 f1d4feccb03c0ee4a013e6f197ee9cf3
BLAKE2b-256 c5f045948c7c933f063039a44afb4bd61747a7bafd50693e6ccdc972fac0839c

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp310-abi3-win32.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3b5d2f1be2dc971db47b1305a83b5a8c24d0eba7fb4cea7845679f9c9f24a0a9
MD5 3e7c83e2ba30c40709b6966b41dc2786
BLAKE2b-256 026ff74fee9629528f0879295b9f89a5c751d3ad931eca0c78407f715e5472a6

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp310-abi3-musllinux_1_2_x86_64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp310-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp310-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 45720b30a2a3df6e5e2320e242f6dd94540ba27c3da57cafdc37fdeec59d5ce3
MD5 e3eb40bc7a6e6b78edb0004bff7bc135
BLAKE2b-256 1e4d2751a6c055de4a200d65af297ecd926d6b6107f66f3849e8122928abf461

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp310-abi3-musllinux_1_2_aarch64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 733c0d88b26be17a48e5741cc3e3956080112e40c07a38ff38e99dfa772f9772
MD5 b7d287119153a2f0b508768c730e3a67
BLAKE2b-256 4ce733061f427bcb56c8936d5db464d757d926bf752a874683fb64b2ee225463

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 f91f2a191bdb17bd3068f32fe65f04128bc162c6237ea554c117b303c22aaabb
MD5 61506cb33b80b3f61220c181834a86d0
BLAKE2b-256 7f97b3b144c96e1f7fff0a7e2e83eb0767bd23b6bacffd0ac8cff397d350e94d

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9690192fd5aed07f21dfdfae07696fef12c68bf98e4c0e1af8f8128b255a74a7
MD5 434abf0acb849da08a706287399086a9
BLAKE2b-256 5c5dcc49fb34e0c03aa56d7583de00e2f8f5aa1b8a878b695e970dcdb751a477

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp310-abi3-macosx_11_0_arm64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 4dc45582eb78ee22f1fde78ad427b20091c50308217fef6435c26d718a8465bd
MD5 9372e88e4291a24817d506c2c3d7c755
BLAKE2b-256 cdb3e4485c2578be5a1b0fbfc90cfd2f2c42641bc4e43bb9ea5912f81ebb1fb3

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp39-cp39-win_amd64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp39-cp39-win32.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 3944974b874bd10cb56d1d1aafb3841cb6d178ff01258cbdf068c4a48c2704aa
MD5 f3255be47b343f40a19f660487e5cfb1
BLAKE2b-256 e8dd99439f0b5827db88a13d4da3d8966f87638010798b2bb0201f199a543314

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp39-cp39-win32.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7b67b73cc371c93ce803c2289ddd2c714adae5f047ef16d1f37daa7eab50df55
MD5 377aac2b65b9699d412ead37485f5b1e
BLAKE2b-256 a5a256873a143c58e3603299525c7ba3b1a40257ba251ef8af8f6aeed14a24be

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp39-cp39-musllinux_1_2_x86_64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6996f7426613834e819310ae9c4d43b1bf2d94a4147739490be8d5136a7b76f6
MD5 3810a948d27703d740bf4c0614610dd3
BLAKE2b-256 e8ca281474c706213b60635401511e9cd8681d6d430d6f5aa07fefbbc43dc6f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp39-cp39-musllinux_1_2_aarch64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9614af9f76408a7458152cb3fc05940aa3627108063b6f65bae019aeeb2ec4e8
MD5 8f1ef31c6a664a872a53f3521fc03996
BLAKE2b-256 34d9dc5bbb040df8f6323e02a0d5a1ae393ffb61c6863b6a779ebe56ab2f5bfb

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0905879d5d0eaf63c8ff9d9d8f76d112f38422692d3c0c36bed3587030f5516f
MD5 c0abd24eb5ba6f7f159b733a96f83e47
BLAKE2b-256 b179cb6053157e829ad60f7c7b2c38a31c5aad31982c4d133b7d8dbab2204c20

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f66671f2c3dd24d2fc42710605bcfa977b8880b2ba3151b19f9a44d7ca5b653d
MD5 ce0ab850b6663d58b0e6a995a5476705
BLAKE2b-256 fe6e9c224873e6b8db44332b479828f4821932a197aea98f6e9babb1e9dc2919

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 9ec225e478ee0f2de1bbfe611a3db00936ab0c4f888c87f7925f1e8ad928835a
MD5 5c26110a319bcd2c89c562e9c183530d
BLAKE2b-256 bb0c15984c39f616caf15470ba48311f0f2c29fefb4780479cc14624a0354c67

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp38-cp38-win_amd64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp38-cp38-win32.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 11268031da29595ffa00ac0603b1f676914b29f9f66fc00485864ad2da8a53c2
MD5 6e4a049e43ec97040bc7fe1e13b99c10
BLAKE2b-256 80a38157723e4345f87a75bfc0836172a84547680017534504b2347282b8c9ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp38-cp38-win32.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp38-cp38-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp38-cp38-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 59d3b162b3d4f7bbd69e06fc991098428b86015cb93949ef3f003d0c86a6c8fa
MD5 ce3f01409ae3631a657e9035643c2dda
BLAKE2b-256 dd6d2d867224b2575cff7b308d6698674f33d52f19dcbf3b2d1173edee1a4712

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp38-cp38-musllinux_1_2_x86_64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp38-cp38-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp38-cp38-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 7d3960ea367183204745a1dc23a6b96434c12976906dc6e44e20470c47fcdcc4
MD5 84d3a49d62bd4b95440bd985d100bb22
BLAKE2b-256 5441645c07cd5ad71b7843d0cfb83c0907f48b016b8d4b4d28a38f3392f53ae8

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp38-cp38-musllinux_1_2_aarch64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bf5dd63033b4d8373df7936ad2c7d4b6c9c1e11c20eb79c9066091b1314065b4
MD5 cde7b43a1234cd26242e048df753ccd3
BLAKE2b-256 3152daaa80159cdbff2a28caf5483d341f2df591d86abc4322a0f76f9510b706

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp38-cp38-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp38-cp38-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6dc7462a6005089ff134420053215f67e749a5f9f8e66c1bb7b08e274f1db581
MD5 916d5fcfb5e773e67b6e2cb27fc5dcee
BLAKE2b-256 34f3733fcda923b3266cb92fdfcd212168ca2bd5e0d685a9f5d464a623373e7d

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp38-cp38-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dependency_injector-4.49.0-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dependency_injector-4.49.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 72a658a60debd891562ef713049bf5161d9b9cd2b1ac024c7437506300825b0e
MD5 3f0a41da803f7a5b8765d48e9c67d665
BLAKE2b-256 59a74f06f1406d34346581b90d1bd0f74c7f3f036028c6b7fe5c9a932ee58c94

See more details on using hashes here.

Provenance

The following attestation bundles were made for dependency_injector-4.49.0-cp38-cp38-macosx_11_0_arm64.whl:

Publisher: publishing.yml on ets-labs/python-dependency-injector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page