Conversation
9549ec7 to
9b3e53f
Compare
| datasource | package | from | to | | ---------- | ------------------------------- | ------ | ----- | | packagist | laminas/laminas-coding-standard | 2.5.0 | 3.0.0 | | packagist | laminas/laminas-servicemanager | 3.22.0 | 4.2.0 | Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
9b3e53f to
2a3f5ff
Compare
|
Signed-off-by: tux-rampage <tuxrampage@gmail.com>
Edited/Blocked NotificationRenovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR. You can manually request rebase by checking the rebase/retry box above. |
| * @return bool | ||
| */ | ||
| public function canCreate(ContainerInterface $container, $requestedName) | ||
| public function canCreate(ContainerInterface $container, $requestedName): bool |
There was a problem hiding this comment.
This class is not final, so adding these types is a BC break 🤔
There was a problem hiding this comment.
Right, in this case, laminas-service-manager 4.0 cannot be supported without a major release.
In fact we have to add a conflict to laminas-service-manager >= 4.0 for the 3.x branches, since this class is not interface compatible with that version.
Another question: Is this even done correctly by editing this branch or should the renovate Issues rather be addressed with a separate PR?
There was a problem hiding this comment.
I think we can open a new major version here: just needs to be against 4.0.x
There was a problem hiding this comment.
Already changed the milestone here. I have some suggestions for 4.0.x in #95 to be addressed with the TSC.
This component needs some cleanup 😬
This PR contains the following updates:
~2.5.0->~3.0.0^3.22->^4.0Release Notes
laminas/laminas-coding-standard (laminas/laminas-coding-standard)
v3.0.1Compare Source
Release Notes for 3.0.1
3.0.x bugfix release (patch)
3.0.1
Documentation,Enhancement
v3.0.0Compare Source
Release Notes for 3.0.0
Backwards incompatible release (major)
3.0.0
renovate
Enhancement
slevomat/coding-standard^8 thanks to @alexraputaBC Break,renovate
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
v3.23.0Compare Source
Release Notes for 3.23.0
3.23.0
Enhancement
v3.22.1Compare Source
Release Notes for 3.22.1
3.22.x bugfix release (patch)
3.22.1
Enhancement
servicesin ServiceManager configuration thanks to @rieschlConfiguration
📅 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.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
Read more information about the use of Renovate Bot within Laminas.