1.4.0 without Composer 1 support should be a major release
Closed this issue · 8 comments
Hi,
That release should be rather a major release: https://github.com/Jean85/pretty-package-versions/releases/tag/1.4.0
Packages such as sentry/sentry-symfony include "jean85/pretty-package-versions": "^1.0" which finally forces the installation of Jean85/pretty-package-versions 1.4.0 with dropped support for Composer 1.
We still need and have to use Composer 1.
Adding "jean85/pretty-package-versions": "1.3.0" explicitly to composer.json require section it solves issues meanwhile:
Package operations: 0 installs, 2 updates, 0 removals
- Updating composer/package-versions-deprecated (1.8.0 => 1.8.0): Loading from cache
- Downgrading jean85/pretty-package-versions (1.4.0 => 1.3.0): Loading from cache
Thanks
Rico
No, that's not the case. Semantic Versioning says the opposite, and this has been reported in the same form (but for different dependencies) in Ocramius/PackageVersions#105 (comment)
A bump in dependencies is not a BC break if the API signature and behavior of the library does not change due to those dependency upgrades.
You can continue to use Composer 1 without any issues. Only a minor issue in dependency resolve was fixed in Composer 1.10.6, see composer/composer#8846
Yes, you are correct!
Nevertheless, I could solve the problem with my temp solution.
My problem is right now that https://github.com/heroku/heroku-buildpack-php only comes with Composer version 1.10.5 in the latest release. I will try to do a composer self-update during build.
@RicoFactset And if you want to restrict package to both Composer 1.x and 2.x compatibility, avoid to hard-code with version 1.3.0, but use the tilde character as "jean85/pretty-package-versions": "~1.3"
to limit versions less than equal 1.4
My Tip: I just did the same on one of my package today
Thank you!
Glad to help
Actually, "jean85/pretty-package-versions": "~1.3"
did not work for me. I had to do it this way: "jean85/pretty-package-versions": "1.3.0"
If subpackages constraint jean85/pretty-package-versions
(like you said ^1.0
) then the only solution to fix it is to add in your root compose.json (file you have ability to change yourself) the constraint "~1.3", before the subpackage.
TIP: use this command composer why jean85/pretty-package-versions
to learn who used this package, in your project
TIP: use this command composer why jean85/pretty-package-versions to learn who used this package, in your project
That is unfortunately broken up until Composer 1.10.6 due to the issue I referenced above (composer/composer#8846), since jean85/pretty-package-versions
1.4 relies on a meta-package that declares the Composer API version.
Closing as it's fixed on Composer's side.