Skip to content

Bump nette/di from 3.2.6 to 3.2.7 - #60

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/composer/nette/di-3.2.7
Open

Bump nette/di from 3.2.6 to 3.2.7#60
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/composer/nette/di-3.2.7

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 2, 2026

Copy link
Copy Markdown
Contributor

Bumps nette/di from 3.2.6 to 3.2.7.

Release notes

Sourced from nette/di's releases.

Released version 3.2.7

The container stops being a black box. This release adds a first-class introspection API, a PSR-11 bridge, and – finally – containers that actually reload themselves in long-running processes instead of silently serving a stale build forever. A handful of quiet misconfigurations were also promoted to loud errors.

✨ New Features

  • Containers now reload themselves in long-running processes. Until now, auto-rebuild only ever helped the next request: PHP cannot redeclare a class that is already loaded, so a queue worker, a dev server, a CLI tool or an MCP server kept serving the very first compiled container for the rest of its life, no matter how many times the configs changed and the file on disk was regenerated. With auto-rebuild on, ContainerLoader now gives every build a fresh class name (Container_<key>_<hash>) and, on every load(), checks the compiled file's content rather than merely whether it has just been regenerated, so a rebuild done by another process over the same cache (a web request while your worker runs) is picked up as well. A process simply gets a new container instance whenever its configuration changed, with no restart. Without auto-rebuild nothing changes: production still compiles once and never looks back.
  • New Container::getServiceDescriptors() – a read-only snapshot of every registered service (name, type, autowiring, tags, aliases, and the instance if it exists), in definition order, without instantiating anything. Tools that until now read the container's private properties through Closure::bind() and scanned createService* methods by reflection can drop the tricks; the Tracy panel already has.
  • New Nette\Bridges\DIPsr\PsrContainer – wrap your container and hand it to any library that speaks PSR-11. get() resolves both service names and autowired types, with ambiguity reported rather than guessed.
  • A service produced by a factory can autowire itself in its own setup, so @self and self-typed arguments work there like anywhere else.

🐛 Bug Fixes

  • Windows users: writing the compiled container no longer fails intermittently with "Access is denied" when antivirus or an opcache handle holds the target file for a moment – the rename is briefly retried, and the opcache handle is dropped first. Other platforms behave exactly as before.
  • addService() refuses a name already taken by a factory, matching the existing behavior for instances. The counterpart: removeService() now removes factories too, so a name freed by removeService() is genuinely free.

⚡ Performance

  • Registering a definition no longer scans every existing definition to check for a case-insensitive name clash; an index does it in constant time. Containers with thousands of services notice.
Commits
  • 7b00ce1 added Bridges\DIPsr\PsrContainer exposing the DI container as PSR-11
  • 187ae0e added preferredOnly parameter to Container::findAutowired() for side-effect-f...
  • ee27e39 Container: introspection API (getServiceDescriptors() + ServiceDescriptor)
  • e12db4e ContainerBuilder: service name 'self' is reserved for references to the curre...
  • 669e50a DefinitionSchema: 'tagged' combined with other arguments is an error instead ...
  • 852b5b2 ContainerBuilder: case-insensitive name check uses an index instead of scanni...
  • 8613a67 Container: removeService() removes factories added via addService()
  • b278d7a Resolver: services produced by factories can autowire themselves in setup
  • d5c018d added AGENTS.md & DOCS
  • f43c07a ContainerLoader: live reload of regenerated containers in long-running processes
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [nette/di](https://github.com/nette/di) from 3.2.6 to 3.2.7.
- [Release notes](https://github.com/nette/di/releases)
- [Commits](nette/di@v3.2.6...v3.2.7)

---
updated-dependencies:
- dependency-name: nette/di
  dependency-version: 3.2.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot @github

dependabot Bot commented on behalf of github Sep 2, 2026

Copy link
Copy Markdown
Contributor Author

Labels

The following labels could not be found: dependencies. Please create it before Dependabot can add it to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants