Skip to content

2.23.0

Latest

Choose a tag to compare

@koriym koriym released this 10 Aug 20:12
· 1 commit to 2.x since this release

2.23.0

Added

  • Write bindings.md at composition time: the injector records how the container was composed — every binding with its provenance — via BindingLog, BindingEvent, and the core Ray\Di\BindingsMarkdown renderer (#336).
  • Add Ray\Di\ModuleVisitorInterface as the stable route for tools to visit a module's composed container via AbstractModule::accept() (#336).

Removed

  • Move rich binding visualization out of core: Ray\Bindings\Bindings, Ray\Bindings\BindingsHtml, Ray\Bindings\BindingsMarkdown, and the bin/bindings-html command now live in the standalone ray/bindings package (composer require --dev ray/bindings). These APIs were introduced in 2.22.1; the composition-time bindings.md above remains in core (#336).

Fixed

  • Fix multibindings being lost from all but the first installed module (#340).
  • Distinguish an empty multibinding set from an undeclared one (#341).
  • Keep the first install's entry on a same-key multibinding collision (#348).
  • Exclude the MultiBindings index from the BindingLog (#347).
  • Roll back the singleton cache when @PostConstruct throws (#346).
  • Fix exception messages to follow the value-only convention (#339).

Full Changelog: https://github.com/ray-di/Ray.Di/blob/2.x/CHANGELOG.md