Skip to content

Issues when running the prepare scripts more than once

Reported by Moshe on Slack:

curl -s https://gitlab.lakedrops.com/composer/plugin/drupal-spoons/-/raw/master/bin/prepareLocally.sh | bash



Installing DrupalSpoons plugin
composer.spoons.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 1 install, 18 updates, 35 removals
  - Removing webmozart/path-util (dev-master)
  - Removing symfony/var-dumper (4.4.x-dev)
  - Removing symfony/polyfill-php80 (dev-master)
  - Removing symfony/phpunit-bridge (3.4.x-dev)
  - Removing symfony/lock (3.4.x-dev)
  - Removing squizlabs/php_codesniffer (dev-master)
  - Removing psy/psysh (dev-master)
  - Removing phpstan/phpstan-deprecation-rules (dev-master)
  - Removing phpstan/phpstan (dev-master)
  - Removing nette/utils (dev-master)
  - Removing nette/finder (v2.5.x-dev)
  - Removing mikey179/vfsstream (v1.x-dev)
  - Removing mglaman/phpstan-drupal (dev-master)
  - Removing league/container (2.x-dev)
  - Removing instaclick/php-webdriver (1.x-dev)
  - Removing grasmash/yaml-expander (1.x-dev)
  - Removing grasmash/expander (dev-master)
  - Removing drush/drush (dev-master)
  - Removing drupal/core-dev (8.9.x-dev 36370b3)
  - Removing drupal/core-composer-scaffold (8.9.x-dev)
  - Removing drupal/coder (8.3.x-dev)
  - Removing cweagans/composer-patches (1.x-dev)
  - Removing consolidation/site-process (2.x-dev)
  - Removing consolidation/site-alias (dev-master)
  - Removing consolidation/self-update (dev-master)
  - Removing consolidation/robo (2.0.0-alpha3)
  - Removing consolidation/output-formatters (dev-improved-wrap)
  - Removing consolidation/log (1.x-dev)
  - Removing consolidation/config (1.x-dev)
  - Removing consolidation/annotated-command (2.x-dev)
  - Removing chi-teck/drupal-code-generator (1.x-dev)
  - Removing behat/mink-selenium2-driver (dev-master)
  - Removing behat/mink-goutte-driver (dev-master)
  - Removing behat/mink-browserkit-driver (dev-master)
  - Removing drupal/core-recommended (8.9.x-dev 8caf712)
  - Downgrading justinrainbow/json-schema (5.x-dev 2ba9c8c => 5.2.10):  Checking out 2ba9c8c862
  - Downgrading composer/ca-bundle (dev-master 95c63ab => 1.2.7):  Checking out 95c63ab211
  - Downgrading composer/spdx-licenses (dev-master 5a22999 => 1.5.3):  Checking out 0c3e51e188
  - Downgrading seld/phar-utils (dev-master 8800503 => 1.1.0):  Checking out 8800503d56
  - Updating symfony/filesystem (3.4.x-dev 0f625d0 => v5.1.2):  Checking out 6e4320f06d
  - Updating symfony/finder (3.4.x-dev 5ec813c => v5.1.2):  Checking out 4298870062
  - Downgrading composer/composer (1.10.x-dev 6630519 => 1.10.8):  Checking out 56e0e09447
  - Installing lakedrops/drupal-spoons (dev-master bb69290): Cloning bb69290016 from cache
PHP Fatal error:  Uncaught Error: Class 'Drupal\Composer\Plugin\Scaffold\Handler' not found in phar:///Users/moshe.weitzman/bin/composer.phar/src/Composer/Plugin/PluginManager.php(196) : eval()'d code:137
Stack trace:
#0 phar:///Users/moshe.weitzman/bin/composer.phar/src/Composer/Plugin/PluginManager.php(196) : eval()'d code(112): Drupal\Composer\Plugin\Scaffold\Plugin_composer_tmp1->handler()
#1 [internal function]: Drupal\Composer\Plugin\Scaffold\Plugin_composer_tmp1->postPackage(Object(Composer\Installer\PackageEvent))
#2 phar:///Users/moshe.weitzman/bin/composer.phar/src/Composer/EventDispatcher/EventDispatcher.php(164): call_user_func(Array, Object(Composer\Installer\PackageEvent))
#3 phar:///Users/moshe.weitzman/bin/composer.phar/src/Composer/EventDispatcher/EventDispatcher.php(116): Composer\EventDispatcher\EventDispatcher->doDispatch(Object(Composer\Installer\PackageEvent))
#4 phar:///Users/moshe.weitzman/bin/composer.phar/src/Composer/Installer.php(636): Composer\EventDispatcher\EventDispatcher->dispatchPackageEvent(' in phar:///Users/moshe.weitzman/bin/composer.phar/src/Composer/Plugin/PluginManager.php(196) : eval()'d code on line 137

Fatal error: Uncaught Error: Class 'Drupal\Composer\Plugin\Scaffold\Handler' not found in phar:///Users/moshe.weitzman/bin/composer.phar/src/Composer/Plugin/PluginManager.php(196) : eval()'d code:137
Stack trace:
#0 phar:///Users/moshe.weitzman/bin/composer.phar/src/Composer/Plugin/PluginManager.php(196) : eval()'d code(112): Drupal\Composer\Plugin\Scaffold\Plugin_composer_tmp1->handler()
#1 [internal function]: Drupal\Composer\Plugin\Scaffold\Plugin_composer_tmp1->postPackage(Object(Composer\Installer\PackageEvent))
#2 phar:///Users/moshe.weitzman/bin/composer.phar/src/Composer/EventDispatcher/EventDispatcher.php(164): call_user_func(Array, Object(Composer\Installer\PackageEvent))
#3 phar:///Users/moshe.weitzman/bin/composer.phar/src/Composer/EventDispatcher/EventDispatcher.php(116): Composer\EventDispatcher\EventDispatcher->doDispatch(Object(Composer\Installer\PackageEvent))
#4 phar:///Users/moshe.weitzman/bin/composer.phar/src/Composer/Installer.php(636): Composer\EventDispatcher\EventDispatcher->dispatchPackageEvent(' in phar:///Users/moshe.weitzman/bin/composer.phar/src/Composer/Plugin/PluginManager.php(196) : eval()'d code on line 137



Preparing composer.spoons.json
git: 'ignore' is not a git command. See 'git --help'.
git: 'ignore' is not a git command. See 'git --help'.
git: 'ignore' is not a git command. See 'git --help'.
git: 'ignore' is not a git command. See 'git --help'.
git: 'ignore' is not a git command. See 'git --help'.

Configuring project for local tests


  [Composer\Json\JsonValidationException]
  "composer.spoons.json" does not match the expected JSON schema:
   - suggest : Array value found, but an object is required
   - support : Array value found, but an object is required



Installing dependencies


  [Composer\Json\JsonValidationException]
  "composer.spoons.json" does not match the expected JSON schema:
   - suggest : Array value found, but an object is required
   - support : Array value found, but an object is required





====================================================
Successfully installed DrupalSpoons for local usage!


Usage:
     vendor/bin/spoon [script]


where [script] should be replaced by one of the
available scripts for testing.
====================================================