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

Use composer/package-versions-deprecated instead of ocramius/package-versions #3846

Merged

Conversation

weirdan
Copy link
Collaborator

@weirdan weirdan commented Jul 19, 2020

It allows wider range of PHP versions in addition to supporting both Composer v1 and v2

Fixes #3844

…versions

It allows wider range of PHP versions in addition to supporting both
Composer v1 and v2

Fixes vimeo#3844
@weirdan
Copy link
Collaborator Author

weirdan commented Jul 19, 2020

test-with-real-projects can be fixed by suppressing the error in https://github.com/muglug/ProxyManager/blob/master/psalm.xml, similar to changes in this PR.

@weirdan weirdan requested a review from muglug July 19, 2020 17:05
@muglug muglug merged commit 56047dd into vimeo:master Jul 20, 2020
@muglug
Copy link
Collaborator

muglug commented Jul 20, 2020

Thanks!

@Majkl578
Copy link

FWIW this change has caused dependency hell in real-world projects:

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for vimeo/psalm 3.13.1 -> satisfiable by vimeo/psalm[3.13.1].
    - Conclusion: remove ocramius/package-versions 1.9.0
    - Conclusion: don't install ocramius/package-versions 1.9.0
    - vimeo/psalm 3.13.1 requires composer/package-versions-deprecated ^1.8.0 -> satisfiable by composer/package-versions-deprecated[1.10.99, 1.10.99.1, 1.8.0, 1.8.1, 1.8.2].
    - don't install composer/package-versions-deprecated 1.10.99|don't install ocramius/package-versions 1.9.0
    - don't install composer/package-versions-deprecated 1.10.99.1|don't install ocramius/package-versions 1.9.0
    - don't install composer/package-versions-deprecated 1.8.0|don't install ocramius/package-versions 1.9.0
    - don't install composer/package-versions-deprecated 1.8.1|don't install ocramius/package-versions 1.9.0
    - don't install composer/package-versions-deprecated 1.8.2|don't install ocramius/package-versions 1.9.0
    - Installation request for ocramius/package-versions 1.9.0 -> satisfiable by ocramius/package-versions[1.9.0].

@weirdan
Copy link
Collaborator Author

weirdan commented Aug 15, 2020

I believe the break is caused by composer/package-versions-deprecated#3. Can you track down what is requiring ocramius/package-versions and what's the specific require string is used?

@Majkl578
Copy link

Majkl578 commented Aug 15, 2020

ocramius/package-versions is actually our root requirement in version 1.9.0.
But composer/package-versions-deprecated has no 1.9.0 release, I don't know why but that's probably the reason.

@weirdan
Copy link
Collaborator Author

weirdan commented Aug 15, 2020

Can you provide the link to the project, if it's public?

I suppose the motivation behind that change in package-versions-deprecated was that most people would have the requirement specified as ^1.9.0, and that should have allowed Composer to consider 1.9.99 as acceptable and install composer/package-version-deprecated

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

Successfully merging this pull request may close these issues.

psalm dependencies incompatible with composer2 and php < 7.4
3 participants