wikimedia / composer-merge-plugin

Merge one or more additional composer.json files at Composer runtime
MIT License
926 stars 160 forks source link

Update throws php-error #205

Closed barlambe closed 3 years ago

barlambe commented 3 years ago

I Have 2 drupal sites using composer2.0 and in thee require I have wikimedia/composer-merge plugin. Today, on uodating the sites with composer update, composer merge plugin causes following errors:

PHP Fatal error: Uncaught Error: Call to undefined method Wikimedia\Composer\Merge\ExtraPackage::getMergedRequirements() in phar:///usr/bin/composer/src/Composer/Plugin/PluginManager.php(213) : eval()'d code:287 Stack trace:

0 phar:///usr/bin/composer/src/Composer/Plugin/PluginManager.php(213) : eval()'d code(254): Wikimedia\Composer\MergePlugin_composer_tmp0->mergeFile(Object(Composer\Package\RootPackage), 'modules/contrib...')

1 phar:///usr/bin/composer/src/Composer/Plugin/PluginManager.php(213) : eval()'d code(215): Wikimedia\Composer\MergePlugin_composer_tmp0->mergeFiles(Array, false)

2 [internal function]: Wikimedia\Composer\MergePlugin_composer_tmp0->onInstallUpdateOrDump(Object(Composer\Script\Event))

3 phar:///usr/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php(173): call_user_func(Array, Object(Composer\Script\Event))

4 phar:///usr/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php(101): Composer\EventDispatcher\EventDispatcher->doDispatch(Object(Composer\Script\Event))

5 phar:///usr/bi in phar:///usr/bin/composer/src/Composer/Plugin/PluginManager.php(213) : eval()'d code on line 287

Fatal error: Uncaught Error: Call to undefined method Wikimedia\Composer\Merge\ExtraPackage::getMergedRequirements() in phar:///usr/bin/composer/src/Composer/Plugin/PluginManager.php(213) : eval()'d code:287 Stack trace:

0 phar:///usr/bin/composer/src/Composer/Plugin/PluginManager.php(213) : eval()'d code(254): Wikimedia\Composer\MergePlugin_composer_tmp0->mergeFile(Object(Composer\Package\RootPackage), 'modules/contrib...')

1 phar:///usr/bin/composer/src/Composer/Plugin/PluginManager.php(213) : eval()'d code(215): Wikimedia\Composer\MergePlugin_composer_tmp0->mergeFiles(Array, false)

2 [internal function]: Wikimedia\Composer\MergePlugin_composer_tmp0->onInstallUpdateOrDump(Object(Composer\Script\Event))

3 phar:///usr/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php(173): call_user_func(Array, Object(Composer\Script\Event))

4 phar:///usr/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php(101): Composer\EventDispatcher\EventDispatcher->doDispatch(Object(Composer\Script\Event))

5 phar:///usr/bi in phar:///usr/bin/composer/src/Composer/Plugin/PluginManager.php(213) : eval()'d code on line 287

I must say that everything is still working fine but somewhere there must be something wrong.

gtz, bart

mcaskill commented 3 years ago

We are aware of the issue in #189, see https://github.com/wikimedia/composer-merge-plugin/pull/189#issuecomment-776736958 for an explainer.

We do not have a solution as of yet.