Problem/Motivation
In
#3067645: Add core scaffold assets to drupal/core's composer.json extra field →
, duplicate copies of the Drupal scaffold files were created to support
#2982680: Add composer-ready project templates to Drupal core →
. The original copy of each scaffold file was also kept in its original location in order to support backwards compatibility for Drupal sites built with drupal-composer/drupal-project
The redundant scaffold files should be removed.
Proposed resolution
Remove the original copy of each scaffold file, and instead place each one using the drupal/core-composer-scaffold plugin.
Remaining tasks
- Remove original scaffold files.
- Include scaffold component as a path repository from drupal/drupal.
- Remove test
testExpectedScaffoldFiles()
in core/tests/Drupal/Tests/ComposerIntegrationTest.php that ensure the contents of the duplicate scaffold files are identical.
- Provide documentation on converting from drupal-composer/drupal-scaffold to drupal/core-composer-scaffold.
- Ensure that the Drupal Infrastructure tarball/zip archive generating scripts are ready for these files to be removed.
Follow-on Tasks
None.
User interface changes
None.
API changes
None.
Data model changes
None.
Release notes snippet
The Drupal "scaffold" files have been removed from their original (pre-Drupal 10.1.0) locations in the git repo.
These files are placed by the drupal/core-composer-scaffold plugin now, based on configuration from the drupal/core package.
Note that this change only affects the drupal/drupal core development package. Other packages, such as drupal/recommended-project and drupal/core-legacy project already use the scaffold plugin in this way.
Drupal core developers must now always run composer install
and/or composer scaffold
in order to get an installable Drupal codebase for development with the latest scaffold files.
The Drupal git repo is structured for use by core developers, and not for deployment to production environments. For production environments, you should use the Recommended or Legacy project Composer template. Documentation:
https://www.drupal.org/docs/develop/using-composer/starting-a-site-using... →
Drupal sites based on drupal-composer/drupal-scaffold must update to use drupal/core-composer-scaffold instead. Documentation:
https://www.drupal.org/docs/develop/using-composer/using-drupals-compose... →
Sites based on the Composer-ready project templates or tarball/zip archive downloads provided on Drupal.org are not affected.