Skip to main content
Build Status Tests status Documentation Status

How to use

from py3njection import inject
from some_package import ClassToInject

class Demo:
    @inject
    def __init__(self, object_to_use: ClassToInject):
        self.dependency = object_to_use

demo = Demo()

How does it work ?

The decorator @inject looks for any annotated method/function parameters (return annotation excluded).

It creates a new object from the specified class if no object is already provided.

How to install

It’s available on PyPI !

pip install py3injection

Some Notes

  • Unit tests come easy to set up (unless you have too many dependencies, but that would be a code smell, right ?). Juste specify mock instances at your object creation. Examples will come later.

  • This also means the injected object could also have some of its members injected too at their initialization !

Metadata

Release files for py3njection 1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for py3njection 1.1
File Size Uploaded
py3njection-1.1.tar.gz 2.0 kB Details

Release files / py3njection-1.1.tar.gz

Download URL py3njection-1.1.tar.gz
Size 2.0 kB
Tags Source
SHA-256 checksum
How to use checksums
7a6d4b2e83c906c8a1499f3531004fe2360182a7d0c2f2db6e27b689b1007bfa
BLAKE2b-256 checksum
How to use checksums
79deb1dd73121dcd37a2328f59d04e15caf063eda05a441b841cf1f489ce9854
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

1.4.1

1 release file

1.4

1 release file

1.3

1 release file

1.2

1 release file

This release

1.1 This release

1 release file

1.0

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page