Skip to content

Commit dc4af1b

Browse files
committed
#617 removed compatibility with ocramius/package-versions:1.10.0 and newer
Due to a change in `ocramius/package-versions` internals, and my own mistake in not detecting that `PackageVersions\Versions::VERSIONS` was marked as `@internal` (note: annotations on constants are not really picked up by reflection, and therefore not by static analysis tools either), we had a pretty abrupt crash when upgrading to `ocramius/package-versions:1.10.0`. In practice, `PackageVersions\Versions::VERSIONS` is hashed in order to prefix the name of generated proxy classes, therefore ensuring that no proxy classes would be re-used when underlying dependency versions change: while this design worked really well, it relied on accessing the `PackageVersions\Versions::VERSIONS` constant, which was never part of the `ocramius/package-versions` API, and which was removed in an internal refactoring of `ocramius/package-versions:1.10.0`. This change is only in place to prevent installation of `ocramius/package-versions:1.10.0`, while a subsequent patch will be made to phase out said package, to be replaced with direct usage of `composer-runtime-api:^2`, which comes with composer 2.x.
1 parent ac1dd41 commit dc4af1b

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
"require": {
2222
"php": "~7.4.1",
2323
"laminas/laminas-code": "^3.4.1",
24-
"ocramius/package-versions": "^1.8.0",
24+
"ocramius/package-versions": "^1.8.0,<1.10.0",
2525
"webimpress/safe-writer": "^2.0.1"
2626
},
2727
"conflict": {

0 commit comments

Comments
 (0)