All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Class
Ghostwriter\Container\Attribute\Extension
added - Class
Ghostwriter\Container\Attribute\Factory
added - Class
Ghostwriter\Container\Attribute\Inject
added - Class
Ghostwriter\Container\List\Aliases
added - Class
Ghostwriter\Container\List\Bindings
added - Class
Ghostwriter\Container\List\Builders
added - Class
Ghostwriter\Container\List\Dependencies
added - Class
Ghostwriter\Container\List\Extensions
added - Class
Ghostwriter\Container\List\Factories
added - Class
Ghostwriter\Container\List\Instances
added - Class
Ghostwriter\Container\List\Providers
added - Class
Ghostwriter\Container\List\Tags
added - Method
purge()
added toGhostwriter\Container\Interface\ContainerInterface
interface
- Removed the return type from
Ghostwriter\Container\Container#__clone()
method - Changed the name of parameter 0 of
Ghostwriter\Container\Interface\ContainerInterface#alias()
fromname
toservice
- Changed the name of parameter 1 of
Ghostwriter\Container\Interface\ContainerInterface#alias()
fromservice
toalias
- Changed the name of parameter 1 of
Ghostwriter\Container\Interface\ContainerInterface#bind()
fromabstract
toservice
- Changed the name of parameter 1 of
Ghostwriter\Container\Interface\ContainerInterface#factory()
fromserviceFactory
tofactory
- Class
Ghostwriter\Container\Instantiator
deleted - Class
Ghostwriter\Container\ParameterBuilder
deleted - Class
Ghostwriter\Container\Reflector
deleted - Class
Ghostwriter\Container\Exception\ReflectorException
deleted - Class
Ghostwriter\Container\Exception\ServiceExtensionAlreadyRegisteredException
deleted
- Method
invoke()
was added to interfaceGhostwriter\Container\Interface\ContainerInterface
- The number of required arguments for
Ghostwriter\Container\Instantiator#__construct()
increased from 0 to 2 - Parameter
$reflector
ofGhostwriter\Container\Instantiator#construct()
was added - Parameter
$parameterBuilder
ofGhostwriter\Container\Instantiator#construct()
was added - Parameter
$container
ofGhostwriter\Container\ParameterBuilder#construct()
was added
ParameterBuilder
resolves positional arguments
- Method
Ghostwriter\Container\Instantiator#buildParameters()
was removed - Parameter
$container
ofGhostwriter\Container\Instantiator#instantiate()
was removed - Parameter
$container
ofGhostwriter\Container\ParameterBuilder#build()
was removed
2.0.1 - 2023-11-15
- Add
factory
to register aservice factory
Build
resolves aliasesParameterBuilder
resolves default/nullable values from the containerExtend
supports service name and service type
2.0.0 - 2023-11-12
- Rename
bind
method name toregister
- Rename
register
method name toprovide
- Rename
provide
method name tobind
- Change
call
method parameter type tocallable
- Change
extend
method 2nd parameter type tostring
(MUST be aclass-string
that implementsExtensionInterface
) - Change
invoke
method parameter type tostring
(MUST becallable-string
, class with__invoke
method or string function namestrim
) - Change
set
method 2nd parameter type tocallable|object
. (Thecallable
MUST return anobject
)