Closed
Description
Symfony version(s) affected: 5.3
Description
Installed together, specific versions of 5.2 and 5.3 packages do not allow container to be compiled.
How to reproduce
- Have the following packages installed:
"symfony/messenger": "~5.2.0",
"symfony/dependency-injection": "^5.3",
"symfony/framework-bundle": "~5.2.0",
"symfony/console": "^5.3"
Run bin/console c:c
, result is:
In CheckDefinitionValidityPass.php line 59:
The definition for "messenger.receiver_locator" has no class. If you intend to inject this service dynamically at runtime, please mark it as synthetic=true. If this is an abstract definition solely used by child definitions, please add abstract=true
, otherwise specify a class to get rid of this error.
Possible Solution
I think this was caused by changing order of compiler passes here: 91fbc90#diff-b75bcd1c8a876c4e6f189c298e7c7133d1d3bc87e2a2876c40ab92a51df1093aL65
I guess it is fine if 5.2 packages are incompatible with 5.3, but their usage together should be denied via composer dependencies (e.g. via conflicts settings or via requiring 5.3 as a minimum version).