-
-
Notifications
You must be signed in to change notification settings - Fork 55
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
ContainerInterface
reference was changed in a minor release
#59
Comments
@fabiang hmm, no, a BC break was not expected. I did a release due to As for the BC break, since it was released minutes ago, I'd go with |
Indeed, |
Ok, so here's what happened:
The problem is that the diff (https://github.com/laminas/laminas-servicemanager/compare/3.4.1..3.5.0) does not match the milestone (https://github.com/laminas/laminas-servicemanager/milestone/1?closed=1) |
Ok, after evaluating the entire diff, a full revert of 3.5.0 is needed: I will push |
ContainerInterface
reference was changed in a minor release
Marking this as closed and starting |
I will publish |
Thanks a lot. I can confirm that it's working with 3.5.1 again. Would you accept an PR with an unit tests for this interface? I would do it with Prophecy, so we can make sure that such an fundamental interface is always correct for that version? |
@fabiang the tests are already in place: the diffs changed all related tests too, hence why it looked like everything was ready for a release (and wasn't). What should probably be built in is something like Can you perhaps send a patch with that? See https://github.com/Roave/BackwardCompatibilityCheck/blob/20c0e653865822ecf836bd249810dea8f677a864/.github/workflows/backwards-compatibility.yml for an example of how this works there. |
Btw I think 3.5.0 should be removed from Packagist.org. If someone does |
Packagist does scrub versions after some time: happens overnight though. Alternatively, @weierophinney can "press zeh button" when online. |
Done! |
Thanks for the fast reaction! I've hit the 3.5.0, but it's all good now! |
I've tried. But I can't install any version without needing to update other requie-devs and then loosing PHP support for <7.x. |
The tool can be installed independently in a job that runs 7.4 |
According to #51, the 3.5.0 version should have brought support for PHP 8.0. But with the cancellation of 3.5.0 and complete revert in 3.5.1, we lost that PHP 8.0 support. I see there is already a 3.5.2 milestone. Is it planned to (re-)release the non-breaking parts from 3.5.0 as a 3.5.2 ? should we open pull requests for that ? or what should we do ? |
@PowerKiKi |
Thanks ! so I will wait for 3.6.0 for PHP 8 |
FYI: IMHO: This problem with BC Break can be resolve just like this: use interop\container\containerinterface as OldContainerInterface;
use Psr\Container\ContainerInterface;
class_alias(ContainerInterface::class, OldContainerInterface::class); And add this file to composer autoload... P.S. It's ugly but it worked for 3.5.0 version for me.) |
@shandyDev We reverted 3.5.0 and thus you should upgrade to 3.6.X if you are still using 3.5.0. |
BC Break Report
Summary
I waited for this day since two years or so, but did not expect this to happen on a minor release. Is it intentional that the
Laminas\ServiceManager\Factory\FactoryInterface
now usesPsr\Container\ContainerInterface
instead ofInterop\Container\ContainerInterface
and all my factories are broken now, while I've only updated to minor version 3.5.0? Not even a single word in the changelogs. Shouldn't such a small change with huge impact be done in the 4.0 release?Can we have an upgrade guide please?
The text was updated successfully, but these errors were encountered: