fxpio / composer-asset-plugin

NPM/Bower Dependency Manager for Composer
MIT License
893 stars 156 forks source link

Composer is crashing after fxp/composer-asset-plugin v1.3.0 installed #286

Closed nagyt234 closed 6 years ago

nagyt234 commented 7 years ago

I've installed a package and fxp/composer-asset-plugin v1.3.0 was installed automatically:

$ composer require --prefer-dist voskobovich/yii2-linker-behavior "4.0.2-rc"
You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)              
  - Installing fxp/composer-asset-plugin (v1.3.0)                
    Loading from cache

  - Installing voskobovich/yii2-linker-behavior (4.0.2-rc)
    Downloading: 100%         

Package yiisoft/yii2-codeception is abandoned, you should avoid using it. Use codeception/codeception instead.
Writing lock file
Generating autoload files

Everything seems to be OK, but if try to run the composer next time I get the following error:

$ composer install
You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug
PHP Error:  Call to undefined method Composer\Package\RootPackage::getConfig() in /var/www/html/dev/diet_health_yii2/vendor/fxp/composer-asset-plugin/Config/ConfigBuilder.php on line 111
PHP Stack trace:
PHP   1. {main}() /usr/bin/composer:0
PHP   2. Composer\Console\Application->run() /usr/bin/composer:44
PHP   3. Symfony\Component\Console\Application->run() /usr/share/php/Composer/Console/Application.php:99
PHP   4. Composer\Console\Application->doRun() /usr/share/php/Symfony/Component/Console/Application.php:120
PHP   5. Symfony\Component\Console\Application->doRun() /usr/share/php/Composer/Console/Application.php:166
PHP   6. Symfony\Component\Console\Application->doRunCommand() /usr/share/php/Symfony/Component/Console/Application.php:189
PHP   7. Symfony\Component\Console\Command\Command->run() /usr/share/php/Symfony/Component/Console/Application.php:841
PHP   8. Composer\Command\InstallCommand->execute() /usr/share/php/Symfony/Component/Console/Command/Command.php:256
PHP   9. Composer\Command\BaseCommand->getComposer() /usr/share/php/Composer/Command/InstallCommand.php:84
PHP  10. Composer\Console\Application->getComposer() /usr/share/php/Composer/Command/BaseCommand.php:53
PHP  11. Composer\Factory::create() /usr/share/php/Composer/Console/Application.php:244
PHP  12. Composer\Factory->createComposer() /usr/share/php/Composer/Factory.php:532
PHP  13. Composer\Plugin\PluginManager->loadInstalledPlugins() /usr/share/php/Composer/Factory.php:354
PHP  14. Composer\Plugin\PluginManager->loadRepository() /usr/share/php/Composer/Plugin/PluginManager.php:76
PHP  15. Composer\Plugin\PluginManager->registerPackage() /usr/share/php/Composer/Plugin/PluginManager.php:240
PHP  16. Composer\Plugin\PluginManager->addPlugin() /usr/share/php/Composer/Plugin/PluginManager.php:188
PHP  17. Fxp\Composer\AssetPlugin\FxpAssetPlugin->activate() /usr/share/php/Composer/Plugin/PluginManager.php:215
PHP  18. Fxp\Composer\AssetPlugin\Config\ConfigBuilder::build() /var/www/html/dev/diet_health_yii2/vendor/fxp/composer-asset-plugin/FxpAssetPlugin.php:82
PHP  19. Fxp\Composer\AssetPlugin\Config\ConfigBuilder::getConfigBase() /var/www/html/dev/diet_health_yii2/vendor/fxp/composer-asset-plugin/Config/ConfigBuilder.php:74
francoispluchino commented 7 years ago

What is your Composer version?

francoispluchino commented 7 years ago

PS. The plugin must be installed in global mode and not by project.

xoipdev commented 7 years ago

Same here - composer version is 1.2.0

PHP Fatal error:  Uncaught Error: Call to undefined method Composer\\Package\\RootPackage::getConfig() in /home/warnar/.composer/vendor/fxp/composer-asset-plugin/Config/ConfigBuilder.php:111\n
Stack trace:
#0 /home/warnar/.composer/vendor/fxp/composer-asset-plugin/Config/ConfigBuilder.php(74): Fxp\\Composer\\AssetPlugin\\Config\\ConfigBuilder::getConfigBase(Object(Composer\\Composer), Object(Composer\\IO\\ConsoleIO))
#1 /home/warnar/.composer/vendor/fxp/composer-asset-plugin/FxpAssetPlugin.php(82): Fxp\\Composer\\AssetPlugin\\Config\\ConfigBuilder::build(Object(Composer\\Composer), Object(Composer\\IO\\ConsoleIO))
#2 phar:///usr/local/bin/composer/src/Composer/Plugin/PluginManager.php(230): Fxp\\Composer\\AssetPlugin\\FxpAssetPlugin->activate(Object(Composer\\Composer), Object(Composer\\IO\\ConsoleIO))
#3 phar:///usr/local/bin/composer/src/Composer/Plugin/PluginManager.php(203): Composer\\Plugin\\PluginManager->addPlugin(Object(Fxp\\Composer\\AssetPlugin\\FxpAssetPlugin))
#4 phar:///usr/local/bin/composer/src/Composer/Plugin/PluginManager.php(255): Compos in /home/warnar/.composer/vendor/fxp/composer-asset-plugin/Config/ConfigBuilder.php on line 111
francoispluchino commented 7 years ago

The 1.3.x version of this plugin requires the ^1.4.0 version of Composer (you can see the release doc).