v0.7
New features
- new metadata provider for PHP 8 - Articus\PathHandler\MetadataProvider\PhpAttribute. It allows to declare metadata via PHP attributes.
Migration notes
Library configuration structure was slightly rearranged to simplify metadata provider switching. Nothing drastic:
- metadata provider and all plugin managers are now configured as separate services by default
- route injection factory was moved from
Articus\PathHandler\RouteInjection\Factory
toArticus\PathHandler\RouteInjectionFactory
So you have to adjust your application configuration from something like:
dependencies:
factories:
Mezzio\Router\RouterInterface: Articus\PathHandler\RouteInjection\Factory
Articus\PathHandler\RouteInjection\Factory:
paths:
'':
- My\Handler
handlers:
factories:
My\Handler: My\HandlerFactory
consumers:
factories:
My\Consumer: My\ConsumerFactory
attributes:
factories:
My\Attribute: My\AttributeFactory
producers:
factories:
My\Producer: My\ProducerFactory
to
dependencies:
factories:
Mezzio\Router\RouterInterface: Articus\PathHandler\RouteInjectionFactory
Articus\PathHandler\MetadataProviderInterface: Articus\PathHandler\MetadataProvider\Factory\Annotation
Articus\PathHandler\Handler\PluginManager: Articus\PathHandler\Handler\Factory\PluginManager
Articus\PathHandler\Consumer\PluginManager: Articus\PathHandler\Consumer\Factory\PluginManager
Articus\PathHandler\Attribute\PluginManager: Articus\PathHandler\Attribute\Factory\PluginManager
Articus\PathHandler\Producer\PluginManager: Articus\PathHandler\Producer\Factory\PluginManager
Articus\PathHandler\RouteInjectionFactory:
paths:
'':
- My\Handler
Articus\PathHandler\Handler\PluginManager:
factories:
My\Handler: My\HandlerFactory
Articus\PathHandler\Consumer\PluginManager:
factories:
My\Consumer: My\ConsumerFactory
Articus\PathHandler\Attribute\PluginManager:
factories:
My\Attribute: My\AttributeFactory
Articus\PathHandler\Producer\PluginManager:
factories:
My\Producer: My\ProducerFactory
Check updated documentation for details.