Skip to content

4.0.0

Latest

Choose a tag to compare

@xelandernt xelandernt released this 10 Jun 08:40
· 9 commits to main since this release

4.0.0 Release

For information about all the new features and changes, please refer to the documentation.

If migrating, please refer to the migration guide.

What's Changed

  • Reworked injection internals for significantly better performance and typing compliance. The bundled benchmark improved from ~9s to ~4s at 10^6 iterations versus 3.9.2.
  • Collection providers now return read-only abstractions: providers.List(...) resolves to a tuple-backed Sequence, and providers.Dict(...) resolves to a mappingproxy-backed Mapping.
  • Tightened context-resource and scope handling, including cleaner sync and async context entry for containers and providers, stricter scope checks, and better None handling across provider resolution paths.
  • BaseContainer.context() now preserves the wrapped callable signature.
  • The package now ships with its own that-depends Agent skill.
  • Now type checked by both mypy and pyrefly

Pull Requests

Full Changelog: 3.9.2...4.0.0