A) Packages are installed/updated and Flex::recordOperations() is called.
B) Composer sees that symfony/flex is updated and unloads the plugin and reloads it under a new Symfony\Flex\Flex_composer_tmp0 class. This results in the Flex::$operations property being lost.
C) And so, no recipes are installed.
This PR "stashes" the operations directly on Symfony/Flex/Flex where we then read them later. Tested locally. Amazing, it seems to work perfectly.
Also, backports #976 to 1.x - my fault for making the PR on the wrong branch.
Fixes #977
Here's the lifecycle:
A) Packages are installed/updated and
Flex::recordOperations()
is called. B) Composer sees thatsymfony/flex
is updated and unloads the plugin and reloads it under a newSymfony\Flex\Flex_composer_tmp0
class. This results in theFlex::$operations
property being lost. C) And so, no recipes are installed.This PR "stashes" the operations directly on
Symfony/Flex/Flex
where we then read them later. Tested locally. Amazing, it seems to work perfectly.Also, backports #976 to 1.x - my fault for making the PR on the wrong branch.
Cheers!