Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions planning/releases/2.2.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# modern-di-typer 2.2.0 — adopt modern-di's blessed `resolve_dependency` seam

No API change. `_resolve_di_params` now dispatches through modern-di's
`Container.resolve_dependency(...)` instead of the local
`isinstance`-on-`AbstractProvider` check, and the `modern-di` floor moves to
`>=2.25.0,<3` to require it. Backward compatible — no action required to
upgrade.

## Internals

- **`resolve_dependency(...)` replaces the local dispatch.** modern-di 2.25
([modern-python/modern-di#283](https://github.com/modern-python/modern-di/pull/283))
blessed a single provider-or-type resolve entry point for integrations;
`_resolve_di_params` now calls it directly instead of branching on
`isinstance(marker.provider, providers.AbstractProvider)` and choosing
between `resolve_provider`/`resolve` itself. Same behavior — overrides,
caching, scope checks, and "did you mean" suggestions are inherited
unchanged from the underlying paths.
- `modern-di` floor bumped from `>=2.19.0,<3` to `>=2.25.0,<3` to require the
new method.
- `architecture/injection.md` updated to describe the call-time resolution
step in terms of `resolve_dependency(...)`.

## Downstream

No action required. `FromDI(provider)` still accepts either a provider
instance or a bare type; resolution behaves identically.