Skip to content

4.0.0

Latest

Choose a tag to compare

@jrabausch jrabausch released this 25 Sep 23:21
  • PHP 8.2+ is required.
  • Autowiring is disabled by default. Call withAutowiring(true) to restore the previous behavior.
  • Factory params are no longer resolved by name. Replace static fn (string $mail) => ... with static fn (ContainerInterface $c) => ... $c->get('mail'), or pass the value to create().
  • Containers returned by withEntry(), withAutowiring() and withDelegate() no longer share resolved instances with the original container. Services are rebuilt with the new configuration.
  • get(Container::class) on such a container returns the new container, not the original one.
  • has() returns false for classes that cannot be instantiated (abstract classes, private constructors).
  • Exception classes are final.
  • NotInstantiableException implements NotFoundExceptionInterface.
  • A missing dependency inside a factory throws a DependencyException instead of letting the inner NotFoundException bubble up.
  • Variadic params are no longer autowired. Pass them explicitly as an array.