-
-
Notifications
You must be signed in to change notification settings - Fork 59
Update dependency laminas/laminas-servicemanager to v4 #164
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: 3.9.x
Are you sure you want to change the base?
Conversation
⚠ Artifact update problemRenovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is. ♻ Renovate will retry this branch, including artifacts, only when one of the following happens:
The artifact failure details are included below: File name: composer.lock |
c4fbf00 to
1c74184
Compare
|
1c74184 to
73dc118
Compare
73dc118 to
a913473
Compare
|
Is there a schedule for when the Laminas modules will support Servicemanager 4.0? |
|
@FabianKoestring laminas-cache, almost all cache adapters, laminas-serializer and laminas-validator are completed and laminas-filter will be next. Please note, that this is not really necessary, as laminas-mvc itself must also support version 4 of laminas-servicemanager. |
a913473 to
a9c246f
Compare
a9c246f to
fd0aaba
Compare
10dc196 to
d9fa1dd
Compare
d9fa1dd to
401da7e
Compare
5d28c78 to
dec96a8
Compare
2c7ecda to
5a257b1
Compare
5a257b1 to
24333b0
Compare
24333b0 to
ad7d39e
Compare
| datasource | package | from | to | | ---------- | ------------------------------ | ------ | ----- | | packagist | laminas/laminas-servicemanager | 3.23.0 | 4.3.0 | Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
ad7d39e to
838c556
Compare
This PR contains the following updates:
^3.20.0->^3.20.0 || ^4.0.0Release Notes
laminas/laminas-servicemanager (laminas/laminas-servicemanager)
v4.3.0Compare Source
Release Notes for 4.3.0
Feature release (minor)
Introduces PHP 8.4 Support
4.3.0
Enhancement
Documentation,Enhancement
renovate
v4.2.1Compare Source
Release Notes for 4.2.1
4.2.x bugfix release (patch)
4.2.1
Documentation,Enhancement
v4.2.0Compare Source
Release Notes for 4.2.0
Feature release (minor)
4.2.0
Enhancement
v4.1.0Compare Source
Release Notes for 4.1.0
Feature release (minor)
4.1.0
Documentation
Documentation,Enhancement
ServiceLocatorInterface#get()generic thanks to @InvisibleSmileyv4.0.2Compare Source
Release Notes for 4.0.2
4.0.x bugfix release (patch)
4.0.2
Bug,Documentation
v4.0.1Compare Source
Release Notes for 4.0.1
4.0.x bugfix release (patch)
4.0.1
Bug,Documentation
v4.0.0Compare Source
Release Notes for 4.0.0
Release Notes for 4.0.0
laminas-servicemanager4.0.0 is here and finally enables projects to consumepsr/containerv2.0.0 after 2 years along with several type-additions and plugin manager decoupling.The migration guide is not written yet but will be at some point (once we added support for SM v4 to other components) later.
Added
ServiceManager#get,PluginManagerInterface#getandServiceLocatorInterface#buildnow explicitly implementmixedas return-type to synchronize types withContainerInterface#getpsr/containerv1.1 and v2.0ReflectionBasedAbstractFactoryvialaminas-cliRemoved
Laminas\ServiceManager\AbstractFactoryInterfaceLaminas\ServiceManager\FactoryInterfaceLaminas\ServiceManager\InitializerInterfaceLaminas\ServiceManager\DelegatorFactoryInterfacevendor/binare removed in favor of thelaminas-cliintegration. All CLI commands of v3.x are accessible viavendor/bin/laminas servicemanager:<v3.x command name>oncelaminas/laminas-cliis required in the projects dependenciesConfigInterfaceandConfig-class since these files did not provide any validation logic and were just used to proxy the configuration array structureAbstractPluginManager#validateandAbstractPluginManager::$instanceOfproperty as in v3.x, implementing plugin managers were able to implicitlyvalidatemixed. In case an implementing plugin manager is providing a single$instanceOfsuch aslaminas-cache, there is a new classAbstractSingleInstancePluginManageravailable which requires the$instanceOfproperty to be configuredBreaking Changes
AbstractPluginManagerdoes not extendServiceManageranymore and instead uses an ownServiceManagerinstance under the hood to manage plugin manager related services which can be configured the same way as in v3.xvendor/binare now integrated vialaminas-cliand can be called viavendor/bin/laminasoncelaminas/laminas-cliis part of the projects requirements. Read more about how to consume these commands here.AbstractPluginManagerdoes not provide thevalidate-Method anymore and requires migration action such as:AbstractSingleInstancePluginManagerin case the plugin manager only provides instances of a specific interface- or class-string (please be aware that the$instanceOfproperty now requires nativestringproperty type)validatemethod and verify whatever type has to be returned and/or just allowmixedas v3.x did when omitting$instanceOfpropertyConfigInterfaceandConfig-class since these files did not provide any validation logic and were just used to proxy the configuration array structureServiceManagernorAbstractPluginManagerdo validate the provided configuration at runtime anymore. due to the psalm-types provided toServiceManager#__construct,ServiceManager#configure,AbstractPluginManager#__constructandAbstractPluginManager#configure, the configuration schema is strictly typed and thus, a miss-configuration can be mitigated on static-analysis level prior actual runtimeAbstractPluginManager#getdoes not accept options anymore, in case an instance with options needs to be created,AbstractPluginManager#buildhas to be used4.0.0
Enhancement
$thistoselfthanks to @boesingReflectionBasedAbstractFactorymapped factories thanks to @boesingBC Break,Enhancement
psr/containerv2 thanks to @boesing and @danielspkServiceManager#getServiceLocatormethod thanks to @boesingServiceManagerinheritance forAbstractPluginManagerthanks to @boesingRFC
AbstractPluginManager#validatethanks to @boesingServiceManagerasfinaland changeAbstractPluginManagerto use composition over inheritance thanks to @boesingBC Break
container-interop/container-interoppolyfill thanks to @boesingrenovate
Bug
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
Read more information about the use of Renovate Bot within Laminas.