drupalwxt / wxt

Drupal variant of the Web Experience Toolkit (WxT).
https://drupalwxt.github.io
GNU General Public License v2.0
27 stars 27 forks source link

Composer update from 2.2.19 to current fails no matter what #224

Closed kevinabruner closed 4 years ago

kevinabruner commented 4 years ago

I'm working on our subsidiary's website and I'm stumped. I've tried a number of workarounds and all of them fail. Maybe this is user error, but I believe that it should be as simple as running "composer update"?

Please help. I've been at this for weeks and I'm stumped. I'm the only web employee with any technical experience in our small Agency.

- Conclusion: remove drupalwxt/wxt 2.2.19
- drupal/core 9.0.0-rc1 requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
- drupal/core 9.0.0-beta3 requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
- drupal/core 9.0.0-beta2 requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
- drupal/core 9.0.0-beta1 requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
- drupal/core 9.0.0-alpha2 requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
- drupal/core 9.0.0-alpha1 requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
- drupal/core 9.0.0 requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
- drupal/core 9.1.x-dev requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
- drupal/core 9.0.x-dev requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
- drupal/core 9.0.3 requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
- drupal/core 9.0.2 requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
- drupal/core 9.0.1 requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
- drupalwxt/wxt 2.2.19 requires drupal/blog dev-2.x#43a2171 -> satisfiable by drupal/blog[dev-2.x].
- Conclusion: remove drupal/blog dev-2.x
- Installation request for drupalwxt/wxt 2.2.19 -> satisfiable by drupalwxt/wxt[2.2.19].
- drupal/blog dev-2.x requires drupal/core ^8.8 || ^9 -> satisfiable by drupal/core[8.8.0, 8.8.0-alpha1, 8.8.0-beta1, 8.8.0-rc1, 8.8.1, 8.8.2, 8.8.3, 8.8.4, 8.8.5, 8.8.6, 8.8.7, 8.8.8, 8.8.x-dev, 8.9.0, 8.9.0-beta1, 8.9.0-beta2, 8.9.0-beta3, 8.9.0-rc1, 8.9.1, 8.9.2, 8.9.3, 8.9.x-dev, 9.0.0, 9.0.0-alpha1, 9.0.0-alpha2, 9.0.0-beta1, 9.0.0-beta2, 9.0.0-beta3, 9.0.0-rc1, 9.0.1, 9.0.2, 9.0.3, 9.0.x-dev, 9.1.x-dev].
- Can only install one of: drupal/core[8.8.8, 8.7.5].
- Can only install one of: drupal/core[8.8.x-dev, 8.7.5].
- Can only install one of: drupal/core[8.9.0, 8.7.5].
- Can only install one of: drupal/core[8.9.0-beta1, 8.7.5].
- Can only install one of: drupal/core[8.9.0-beta2, 8.7.5].
- Can only install one of: drupal/core[8.9.0-beta3, 8.7.5].
- Can only install one of: drupal/core[8.9.0-rc1, 8.7.5].
- Can only install one of: drupal/core[8.9.1, 8.7.5].
- Can only install one of: drupal/core[8.9.2, 8.7.5].
- Can only install one of: drupal/core[8.9.3, 8.7.5].
- Can only install one of: drupal/core[8.9.x-dev, 8.7.5].
- Can only install one of: drupal/core[8.8.0, 8.7.5].
- Can only install one of: drupal/core[8.8.0-alpha1, 8.7.5].
- Can only install one of: drupal/core[8.8.0-beta1, 8.7.5].
- Can only install one of: drupal/core[8.8.0-rc1, 8.7.5].
- Can only install one of: drupal/core[8.8.1, 8.7.5].
- Can only install one of: drupal/core[8.8.2, 8.7.5].
- Can only install one of: drupal/core[8.8.3, 8.7.5].
- Can only install one of: drupal/core[8.8.4, 8.7.5].
- Can only install one of: drupal/core[8.8.5, 8.7.5].
- Can only install one of: drupal/core[8.8.6, 8.7.5].
- Can only install one of: drupal/core[8.8.7, 8.7.5].
- drupalwxt/wxt 2.2.19 requires drupal/core 8.7.5 -> satisfiable by drupal/core[8.7.5].
- Conclusion: remove drupal/core 8.7.5
rgalipeau commented 4 years ago

Hi Kevin,

I always like to try a fresh new DrupalWxT install first (separate to see if it work cleanly). Also, I take it you’re trying to do an update to a modified site? (Was it originally installed cleanly via composer also?).

sylus commented 4 years ago

a) Does it run with the default install and nothing to do with your code base? (assume so since CI passes) b) Is there a link to where I can see your composer.json?

There are likely differences in your composer.json file.

kevinabruner commented 4 years ago

Hi Kevin,

I always like to try a fresh new DrupalWxT install first (separate to see if it work cleanly). Also, I take it you’re trying to do an update to a modified site? (Was it originally installed cleanly via composer also?).

I don't think a clean install would be helpful here as it's a production website. Yes, it was installed from composer originally, though I'm told that version 2.2.19 had issues in the composer.json that required manual modification of the json file to run a successful install (I'm not the original installer, I'm just brought in to help, so this is second hand information). The site has been modified, there are created subthemes and modules added through the Drupal web interface. The subthemes are pretty basic. I don't believe any other modifications have been created.

a) Does it run with the default install and nothing to do with your code base? (assume so since CI passes) b) Is there a link to where I can see your composer.json?

There are likely differences in your composer.json file.

a) Just successfully installed 3.0.13 with no errors in a cloned instance of the VM. Seems fine b) composer.json below:

{ "name": "sbs-wxt", "description": "Project template for Drupal 8 sites built with the WxT distribution.", "type": "project", "license": "GPL-2.0+", "minimum-stability": "dev", "prefer-stable": true, "require-dev": { "jcalderonzumba/gastonjs": "~1.0.2", "jcalderonzumba/mink-phantomjs-driver": "~0.3.1", "mikey179/vfsstream": "~1.2", "symfony/css-selector": "~2.8|~3.0", "behat/behat": "^3.0", "behat/mink": "~1.7", "behat/mink-extension": "", "behat/mink-goutte-driver": "", "behat/mink-selenium2-driver": "", "composer/composer": "^1.4", "drupal/drupal-extension": "~3.4.0", "squizlabs/php_codesniffer": "2.", "drupal/coder": "~8.2.0", "phpmd/phpmd": "@stable", "pdepend/pdepend": "2.1.0", "sebastian/phpcpd": "*", "phpunit/phpunit": "^4.8.35 || ^6.1", "symfony/phpunit-bridge": "^3.4.3", "deployer/deployer": "^4.0", "deployer/recipes": "^4.0" }, "config": { "secure-http": false, "prestissimo": { "maxConnections": 10, "minConnections": 5 } }, "repositories": [ { "type": "composer", "url": "https://packages.drupal.org/8" }, { "type": "composer", "url": "https://asset-packagist.org" }, { "type": "composer", "url": "https://drupalwxt.github.io/composer-extdeps/" } ], "scripts": { "drupal-scaffold": "DrupalComposer\DrupalScaffold\Plugin::scaffold", "post-root-package-install": [ "DrupalWxT\WxT\ScriptHandler::postCreateProject" ], "pre-install-cmd": [ "DrupalWxT\WxT\ScriptHandler::checkComposerVersion" ], "pre-update-cmd": [ "DrupalWxT\WxT\ScriptHandler::checkComposerVersion" ], "post-install-cmd": [ "@composer drupal-scaffold", "DrupalWxT\WxT\ScriptHandler::deployLibraries" ], "post-update-cmd": [ "@composer drupal-scaffold", "DrupalWxT\WxT\ScriptHandler::deployLibraries" ] }, "extra": { "installer-types": [ "bower-asset", "npm-asset" ], "installer-paths": { "html/core": [ "type:drupal-core" ], "html/libraries/{$name}" : [ "type:drupal-library", "type:bower-asset", "type:npm-asset", "type:drupal-console-library" ], "html/modules/custom/{$name}": [ "drupal/wxt_library" ], "html/modules/contrib/{$name}": [ "type:drupal-module" ], "html/profiles/{$name}": [ "type:drupal-profile" ], "html/themes/custom/{$name}": [ "drupal/wxt_bootstrap" ], "html/themes/contrib/{$name}": [ "type:drupal-theme" ], "drush/contrib/{$name}": [ "type:drupal-drush" ] }, "enable-patching": true, "patches": { "deployer/recipes": { "Enter deployer/recipes patch #80 description here": "https://patch-diff.githubusercontent.com/raw/deployphp/recipes/pull/80.patch" } } }, "require": { "composer/installers": "^1.2", "cweagans/composer-patches": "^1.6.0", "oomphinc/composer-installers-extender": "^1.1", "drupal-composer/drupal-scaffold": "^2.0.0", "drush/drush": "^9.7", "drupalwxt/wxt": "2.2.19", "drupal/svg_image": "^1.9", "drupal/console": "~1.0", "drupal/address": "~1.0", "drupal/broken_link": "^3.0" }, "autoload": { "classmap": [ "scripts/ScriptHandler.php" ] } }

rgalipeau commented 4 years ago

Ensuring a clean install functions is always a good troubleshooting step. Hence, if that doesn’t work, very unlikely your update will. Still recommend you try a fresh instance. (We don’t know how old your build it, and what’s changed. If you’ve been at this for weeks, it’s a start point to start validating things), and might help show the variances in your composer file.

kevinabruner commented 4 years ago

Ensuring a clean install functions is always a good troubleshooting step. Hence, if that doesn’t work, very unlikely your update will. Still recommend you try a fresh instance. (We don’t know how old your build it, and what’s changed. If you’ve been at this for weeks, it’s a start point to start validating things), and might help show the variances in your composer file.

I did it anyway. To quote myself:

a) Just successfully installed 3.0.13 with no errors in a cloned instance of the VM. Seems fine

sylus commented 4 years ago

I took a look at your composer and it seems you don't have the ignore section?

https://github.com/drupalwxt/wxt/blob/8.x-3.x/composer.json#L227

kevinabruner commented 4 years ago

Adding in the ignore section results in similar errors:

Gathering patches for root package. Removing package drupal/core so that it can be re-installed and re-patched. Removing drupal/core (8.7.5) Deleting html/core - deleted DrupalWxT\WxT\ScriptHandler::checkComposerVersion Loading composer repositories with package information Updating dependencies (including require-dev) Your requirements could not be resolved to an installable set of packages. Problem 1

  • Conclusion: remove drupalwxt/wxt 2.2.19
  • drupal/core 9.0.0-rc1 requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
  • drupal/core 9.0.0-beta3 requires php >=7.3 -> your PHP version (7.2.24) does no t satisfy that requirement.
  • drupal/core 9.0.0-beta2 requires php >=7.3 -> your PHP version (7.2.24) does no t satisfy that requirement.
  • drupal/core 9.0.0-beta1 requires php >=7.3 -> your PHP version (7.2.24) does no t satisfy that requirement.
  • drupal/core 9.0.0-alpha2 requires php >=7.3 -> your PHP version (7.2.24) does n ot satisfy that requirement.
  • drupal/core 9.0.0-alpha1 requires php >=7.3 -> your PHP version (7.2.24) does n ot satisfy that requirement.
  • drupal/core 9.0.0 requires php >=7.3 -> your PHP version (7.2.24) does not sati sfy that requirement.
  • drupal/core 9.1.x-dev requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
  • drupal/core 9.0.x-dev requires php >=7.3 -> your PHP version (7.2.24) does not satisfy that requirement.
  • drupal/core 9.0.3 requires php >=7.3 -> your PHP version (7.2.24) does not sati sfy that requirement.
  • drupal/core 9.0.2 requires php >=7.3 -> your PHP version (7.2.24) does not sati sfy that requirement.
  • drupal/core 9.0.1 requires php >=7.3 -> your PHP version (7.2.24) does not sati sfy that requirement.
  • drupalwxt/wxt 2.2.19 requires drupal/blog dev-2.x#43a2171 -> satisfiable by dru pal/blog[dev-2.x].
  • drupal/blog dev-2.x requires drupal/core ^8.8 || ^9 -> satisfiable by drupal/co re[8.8.0, 8.8.0-alpha1, 8.8.0-beta1, 8.8.0-rc1, 8.8.1, 8.8.2, 8.8.3, 8.8.4, 8.8.5, 8. 8.6, 8.8.7, 8.8.8, 8.8.x-dev, 8.9.0, 8.9.0-beta1, 8.9.0-beta2, 8.9.0-beta3, 8.9.0-rc1 , 8.9.1, 8.9.2, 8.9.3, 8.9.x-dev, 9.0.0, 9.0.0-alpha1, 9.0.0-alpha2, 9.0.0-beta1, 9.0 .0-beta2, 9.0.0-beta3, 9.0.0-rc1, 9.0.1, 9.0.2, 9.0.3, 9.0.x-dev, 9.1.x-dev].
  • drupal/blog dev-2.x requires drupal/core ^8.8 || ^9 -> satisfiable by drupal/co re[8.8.0, 8.8.0-alpha1, 8.8.0-beta1, 8.8.0-rc1, 8.8.1, 8.8.2, 8.8.3, 8.8.4, 8.8.5, 8. 8.6, 8.8.7, 8.8.8, 8.8.x-dev, 8.9.0, 8.9.0-beta1, 8.9.0-beta2, 8.9.0-beta3, 8.9.0-rc1 , 8.9.1, 8.9.2, 8.9.3, 8.9.x-dev, 9.0.0, 9.0.0-alpha1, 9.0.0-alpha2, 9.0.0-beta1, 9.0 .0-beta2, 9.0.0-beta3, 9.0.0-rc1, 9.0.1, 9.0.2, 9.0.3, 9.0.x-dev, 9.1.x-dev].
  • Can only install one of: drupal/core[8.8.8, 8.7.5].
  • Can only install one of: drupal/core[8.8.x-dev, 8.7.5].
  • Can only install one of: drupal/core[8.9.0, 8.7.5].
  • Can only install one of: drupal/core[8.9.0-beta1, 8.7.5].
  • Can only install one of: drupal/core[8.9.0-beta2, 8.7.5].
  • Can only install one of: drupal/core[8.9.0-beta3, 8.7.5].
  • Can only install one of: drupal/core[8.9.0-rc1, 8.7.5].
  • Can only install one of: drupal/core[8.9.1, 8.7.5].
  • Can only install one of: drupal/core[8.9.2, 8.7.5].
  • Can only install one of: drupal/core[8.9.3, 8.7.5].
  • Can only install one of: drupal/core[8.9.x-dev, 8.7.5].
  • Can only install one of: drupal/core[8.8.0, 8.7.5].
  • Can only install one of: drupal/core[8.8.0-alpha1, 8.7.5].
  • Can only install one of: drupal/core[8.8.0-beta1, 8.7.5].
  • Can only install one of: drupal/core[8.8.0-rc1, 8.7.5].
  • Can only install one of: drupal/core[8.8.1, 8.7.5].
  • Can only install one of: drupal/core[8.8.2, 8.7.5].
  • Can only install one of: drupal/core[8.8.3, 8.7.5].
  • Can only install one of: drupal/core[8.8.4, 8.7.5].
  • Can only install one of: drupal/core[8.8.5, 8.7.5].
  • Can only install one of: drupal/core[8.8.6, 8.7.5].
  • Can only install one of: drupal/core[8.8.7, 8.7.5].
  • drupalwxt/wxt 2.2.19 requires drupal/core 8.7.5 -> satisfiable by drupal/core[8 .7.5].
  • Installation request for drupalwxt/wxt 2.2.19 -> satisfiable by drupalwxt/wxt[2 .2.19].
kevinabruner commented 4 years ago

Okay, removing composer.lock and the vendor folder and modifying composer.json with the ignore section mentioned above and then manually changing the drupalwxt version in the composer.json file to 3.0.12 (not 3.0.13 - that still failed) and then using composer install, I was able to update.

Hopefully it will be simpler going forward.

sylus commented 4 years ago

Thanks for going through this and yeah there were a few bigger changes going from the 2.x to 3.x line mostly around layout builder. It will be simpler and less changes going forward.