magento-hackathon / magento-composer-installer

Composer installer for Magento modules
210 stars 156 forks source link

Todays commits broke our build system #160

Closed SchumacherFM closed 9 years ago

SchumacherFM commented 9 years ago
[ErrorException]
Argument 1 passed to MagentoHackathon\Composer\Magento\DeployManager::__construct() must be an instance of MagentoHackathon\Composer\Magento\Event\EventManager, instance of Composer\IO\ConsoleIO given, called in /Users/anUser/Sites/zk-relases/vendor/magento-hackathon/magento-composer-installer/src/MagentoHackathon/Composer/Magento/Command/DeployCommand.php on line 55 and defined

Root cause here: https://github.com/magento-hackathon/magento-composer-installer/blob/master/src%2FMagentoHackathon%2FComposer%2FMagento%2FCommand%2FDeployCommand.php#L55

Bug introduced here: https://github.com/magento-hackathon/magento-composer-installer/commit/2ff591e25436cba1509c8b543507520f5f5b60bf as IO has been removed.

I'm switching to a previous commit ...

Thank you in advance for fixing!

Flyingmana commented 9 years ago

does this only happen on update of the installer?

also, you should use tagged versions, not branches

SchumacherFM commented 9 years ago

Ah oh forgot something: the error occurs during: $ composerCommandIntegrator.php module-deploy

but it is still a bug in the code.

It is pretty rare that the master branch dies. You are doing a great job and that is also the reason why I'm stick with this project to the master branch :-)

AydinHassan commented 9 years ago

Sorry thats my fault. We will need to put a requires in the magento-hackathon/composer-command-integrator package as it's not compatible with dev-master. Or we can fix up that package.

davidverholen commented 9 years ago

don't put a require there, just change the DeployCommand to pass the EventManager to the DeployManager ;)

Maybe you can init the EventManager globally so you don't have the duplicate code for that

Flyingmana commented 9 years ago

@AydinHassan we should be able to fix this, the command integrator only calls the MagentoHackathon\Composer\Magento\Command\DeployCommand class, which has some copied code to imitate what happens during an install. Shouldnt be hard to fix.

Dont invest to much into refactoring for this now, newer composer versions offer a way for this without the composer command integrator package, but did not have the time to look a bit more into it.

AydinHassan commented 9 years ago

Ah I misunderstood, I thought that code was in the magento-hackathon/composer-command-integrator package. Fixing now.