Skip to content
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

1.6.0 contains breaking changes #58

Closed
fascinosum opened this issue May 15, 2024 · 5 comments
Closed

1.6.0 contains breaking changes #58

fascinosum opened this issue May 15, 2024 · 5 comments

Comments

@fascinosum
Copy link

fascinosum commented May 15, 2024

Hello,

A new minor release of the project contains a breaking change to the interface that, according to Semantic Versioning, should result in a new major release. This breaking change significantly affects other open-source projects, such as Magento OS, which has thousands of users
@colinmollenhour, could you kindly consider reverting the change to the interface and releasing a new patch version for 1.6.*?

Thank you, @colinmollenhour, and all contributors of the project for your hard work!

@hostep
Copy link

hostep commented May 16, 2024

Indeed, I agree

In M2, we now get this when running bin/magento setup:di:compile:

PHP Fatal error:  Class Magento\Framework\Session\SaveHandler\Redis\Config contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Cm\RedisSession\Handler\ConfigInterface::getRetries) in vendor/magento/framework/Session/SaveHandler/Redis/Config.php on line 16

Fatal error: Class Magento\Framework\Session\SaveHandler\Redis\Config contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Cm\RedisSession\Handler\ConfigInterface::getRetries) in vendor/magento/framework/Session/SaveHandler/Redis/Config.php on line 16

Because https://github.com/magento/magento2/blob/2.4-develop/lib/internal/Magento/Framework/Session/SaveHandler/Redis/Config.php implements the interface which was now changed in 1.6.0, so this breaks.

Preferable this change should be reverted, 1.6.1 should be tagged and the change should be included in a new major version 2.0.0 (or alternatively the change should be implemented differently without changing the interface if possible)

This only breaks in Magento 2.4.6 and 2.4.7 versions, because before 2.4.6 we had a composer constraint using ~1.4.5 and with 2.4.6, the constraint changed for some reason to ^1.4 (over here)

@cmuench
Copy link

cmuench commented May 17, 2024

It's breaking Magento 2.4.6-p5 as welll.
For reference: https://github.com/netz98/n98-magerun2/actions/runs/9119272478/job/25087515280

Maybe this change should be tagged as v2.0.0.

@colinmollenhour
Copy link
Owner

Yikes, sorry for the trouble, guys! I looked at the M2 composer.json and it had the version as "^1.5" and I thought that meant ">=1.5.0 <1.6.0" but apparently it means ">=1.5.0 <2.0.0".. I will move this change to 2.0

@colinmollenhour
Copy link
Owner

I released the latest master as v2.0.0 and the previous v1.5.5 as v1.7 so I believe that should effectively "roll back" the v1.6.0 release.

@hostep
Copy link

hostep commented May 21, 2024

Thank you very much for the quick fix Colin! And don't worry too much about the mistake, we're only human after all 🙂

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants