Added require-dev dependencies from mainline Magento 2.3.0#337
Added require-dev dependencies from mainline Magento 2.3.0#337ryantfowler wants to merge 1 commit intomagento:masterfrom
Conversation
|
This was already attempted before in #200 and not approved (but the reasoning is weird, they should really run Also, depending on the outcome of magento/magento2#21565 it might be that certain (or all) dev dependencies are being removed entirely from base Magento's composer.json file. |
|
@hostep yep, I agree that the Regarding Fooman's PR, yea that'll be interesting to see how it goes. Thanks |
Description
The Magento Cloud Template codebase does not include the same set of packages defined in the "on-prem" version of Magento 2
Action Taken
Added in the
require-devdependencies which are listed here in the same major/minor/patch versions of Magento2 on GitHub.composer require --dev friendsofphp/php-cs-fixer:~2.13.0 lusitanian/oauth:~0.8.10 magento/magento2-functional-testing-framework:2.3.9 --no-updateAttempted to update those specific dependencies.
composer update friendsofphp/php-cs-fixer lusitanian/oauth magento/magento2-functional-testing-framework pdepend/pdepend phpmd/phpmd phpunit/phpunit sebastian/phpcpd squizlabs/php_codesniffer( also tried appending--with-all-dependencies)A conflict notification was presented, which attempted to install every satisfiable version of
symfony/options-resolver, which Composer was unable to successfully do.symfony/options-resolver, with the version constraint required byfriendsofphp/php-cs-fixercould not be installed. I found that it is due tomsp/twofactorauthrequiringendroid/qr-code, which then led tosymfony/options-resolver:2.8.49being installed, as at the time ofmsp/twofactorauthbeing included,friendsofphp/php-cs-fixerwasn't present ( nor was anything else in the codebase present which requiredsymfony/options-resolver) and therefore Composer didn't pull in a version that satisfied the requirements for bothmsp/twofactorauthandfriendsofphp/php-cs-fixer.Final Solution
Deleted the existing
composer.lockfile in the codebase.rm -f composer.lockJust let Composer "figure it out" by resolving all the dependencies again, which now included
friendsofphp/php-cs-fixerand it's requirements, namelysymfony/options-resolver.composer installFeedback Loop
If there's a more desirable approach to solving this problem, please let me know and I'll take action on that, but by looking at this commit, I figured that making an update to the entire codebase's dependencies, based on the configured version constraints, wasn't going to be a problem.