-
Notifications
You must be signed in to change notification settings - Fork 27
Description
When I am installing Drupal 7 alongside a number of modules from a freshly cloned repo it appears that the modules folder seems to get backed up in a partially completed state, and then later on restored. This overwrites part of the modules. The modules folder ends up with a bunch of empty folders and missing modules.
The console output indicates that some folders are being overwritten:
[...]
- Installing drush/drush (8.4.8): Extracting archive
- Installing symfony/filesystem (v3.4.47): Extracting archive
Files of installed package were overwritten with preserved path web/sites/all/modules/contrib!
Files of installed package were overwritten with preserved path web/sites/all/modules/contrib!
This happens only with Composer 2, so possibly this is caused by the parallel installation of the packages. Possibly some modules get installed before Drupal core itself is installed? I tried setting the COMPOSER_MAX_PARALLEL_HTTP=1
environment variable but this doesn't help. It only throttles the downloading of the packages, not the installation.
I am not using composer-patches. It happens with the latest version of Composer (2.0.12).
Here are the relevant parts of the composer.json
file that is causing the problem:
{
"repositories": [
{
"type": "composer",
"url": "https://packages.drupal.org/7"
}
],
"require": {
"php": "^7.4",
"ext-curl": "*",
"ext-gd": "*",
"ext-json": "*",
"ext-openssl": "*",
"ext-pdo": "*",
"ext-xml": "*",
"composer/installers": "^1.2",
"composer/semver": "^1.4",
"drupal-composer/preserve-paths": "^0.1",
"drupal/admin_menu": "3.0-rc6",
"drupal/bootstrap": "^3.26",
"drupal/composer_autoloader": "^1.0",
"drupal/ctools": "1.15",
"drupal/drupal": "^7.80",
"drupal/ds": "2.16",
"drupal/email": "1.3",
"drupal/entity": "1.9",
"drupal/entity_token": "1.9",
"drupal/features": "2.11",
"drupal/field_collection": "1.0-beta13",
"drupal/field_group": "1.6",
"drupal/googleanalytics": "2.6",
"drupal/isotope": "2.0",
"drupal/jquery_update": "2.7",
"drupal/l10n_update": "1.2",
"drupal/libraries": "2.5",
"drupal/link": "1.7",
"drupal/menu_block": "2.8",
"drupal/module_filter": "2.2",
"drupal/nodeblock": "1.7",
"drupal/pathauto": "1.0-rc1",
"drupal/strongarm": "2.0",
"drupal/token": "1.7",
"drupal/transliteration": "3.2",
"drupal/video_embed_field": "2.0-beta11",
"drupal/views": "3.22",
"drupal/webform": "4.22",
"drupal/weight": "3.1",
"drupal/wysiwyg": "2.0",
"drupal/xmlsitemap": "2.6",
"drupal/youtube": "1.7",
"drush/drush": "^8.0",
"symfony/filesystem": "~2.7|^3",
"webflo/drupal-finder": "^1.0.0"
},
"conflict": {
"drupal/core": "8.*"
},
"config": {
"sort-packages": true
},
"autoload": {
"classmap": [
"scripts/composer/ScriptHandler.php"
]
},
"scripts": {
"pre-install-cmd": [
"DrupalProject\\composer\\ScriptHandler::checkComposerVersion"
],
"pre-update-cmd": [
"DrupalProject\\composer\\ScriptHandler::checkComposerVersion"
],
"post-install-cmd": [
"DrupalProject\\composer\\ScriptHandler::createRequiredFiles"
],
"post-update-cmd": [
"DrupalProject\\composer\\ScriptHandler::createRequiredFiles"
],
"post-create-project-cmd": [
"DrupalProject\\composer\\ScriptHandler::removeInternalFiles"
]
},
"extra": {
"installer-paths": {
"web/": ["type:drupal-core"],
"web/profiles/{$name}/": ["type:drupal-profile"],
"web/sites/all/drush/{$name}/": ["type:drupal-drush"],
"web/sites/all/libraries/{$name}/": ["type:drupal-library"],
"web/sites/all/modules/contrib/{$name}/": ["type:drupal-module"],
"web/sites/all/themes/{$name}/": ["type:drupal-theme"]
},
"preserve-paths": [
"web/sites/all/modules/contrib",
"web/sites/all/modules/features",
"web/sites/all/themes/contrib",
"web/sites/default/drushrc.php",
"web/sites/default/files",
"web/sites/default/settings.php"
]
}
}