Rodi

Latest version: v2.0.6

Safety actively analyzes 641872 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 2

2.0.6

- Fixes import for Protocols support regardless of Python version (partially
broken for Python 3.9), by fennel-akunesh

2.0.5

- Adds support for resolving `Protocol` classes even when they don't define an
`__init__` method, by lucas-labs
- Fixes bug in service provider build logic causing singletons to be instantiated
n times when they are registered after its dependant, by lucas-labs
- Changes the "ignore attributes" logic so that if a class variable has already
been initialized externally, rodi doesn't attempt to reinitialize it (and to
also prevent overriding it if the initialized class variable is also a
registered object), by lucas-labs

2.0.4

- Fixes bug in Singleton implementation: stop singleton provider from recreating
objects implementing `__len__`, by [Klavionik](https://github.com/Klavionik).
- Add Python 3.12 and remove Python 3.7 from the build matrix.

2.0.3

- Checks `scoped_services` before resolving from map when in a scope, by [StummeJ](https://github.com/StummeJ).
- Allow getting from scope context without needing to provide scope, by [StummeJ](https://github.com/StummeJ).

2.0.2

- Ignores `ClassVar` properties when resolving dependencies by class notations.
- Marks `rodi` 2 as stable.

2.0.1

- Removes the strict requirement for resolved classes to have `__init__`
methods defined, to add support for `Protocol`s that do not define an
`__init__` method (thus using `*args`, `**kwargs`),
[akhundMurad](https://github.com/akhundMurad)'s contribution.
- Corrects a code smell, replacing an `i` counter with `enumerate`,
[GLEF1X](https://github.com/GLEF1X)'s contribution.

Page 1 of 2

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.