All notable changes to this project will be documented in this file, in reverse chronological order by release.
psr/container
container-interop/container-interop
This release contains no BC break.
\Iterator objectsdefaultOptions()
defaultOptions() method return type is iterable but array is still validTo upgrade from version 1.x to version 2.x you have to add the PHP scalar types of the interfaces to your implemented factory methods.
dimensions() method return type is iterable
canRetrieveOptions() method return type is bool
mandatoryOptions() method return type is iterable
defaultOptions() method return type is array
This release contains BC breaks, but upgrade path is simple.
dimensions() method to RequiresConfig to make configuration depth flexible#26: vendorName() and packageName() method from RequiresConfig, replaced by dimensions() method
dimensions() to increase performancepublic function dimensions()
{
    return [$this->vendorName(), $this->packageName()];
}
#26: RequiresContainerId interface is renamed to RequiresConfigId
options() method.canRetrieveOptions() to ConfigurationTrait to perform the options check without throwing an exceptionoptionsWithFallback() to ConfigurationTrait which uses default options if config can not be retrievedHasConfig interface, was renamed to RequiresConfig
HasContainer interface, was renamed to RequiresContainerId
HasMandatoryOptions interface, was renamed to RequiresMandatoryOptions
HasDefaultOptions interface, was renamed to ProvidesDefaultOptions
ObtainsOptions interface, was merged in RequiresConfig
OptionalOptions interface, can be achieved via ProvidesDefaultOptions
componentName function with packageName (PSR-4 standard)componentName function from HasConfig interface (BC break)