Update Drupal core from 8.7 to 8.8 with Composer
Drupal 8.8 is stable! This release includes many improvements for things like the Media Library, workspaces, and migrations. Another change from previous versions to Drupal 8.8.0 with Composer is the change from using the community contributed composer template to the new official drupal/recommended-project template.
This blog will guide you through upgrading from Drupal core 8.7 to 8.8
1) Before we start
Make sure you have Pathauto 1.6 or greater. If you need to update, please run:
composer require drupal/pathauto:^1.6
2) Backup site database and files at sites/default/files
3) Remove/replace old dev packages
composer remove --dev webflo/drupal-core-require-dev
If you do not need the developer tools, you can stop here. If you would like to install them again using the official method, run:
composer require --dev drupal/core-dev
4) Update conflicting soft dependencies
Require new Drupal core and dependencies
composer require --update-with-dependencies \ drupal/core:^8.8 \ symfony/finder:^3.4 \ symfony/filesystem:^3.4
Require new core-dev package and dependencies
composer require --dev --update-with-dependencies \ drupal/core-dev:^8.8 \ symfony/debug:^3.4
Remove temporary required dependencies
composer remove -n \ symfony/finder \ symfony/filesystem \ symfony/debug
5) Refresh opcode cache
6) Update database config and schema
drush updb drush cr drush config-export
7) Update settings.php
In Drupal 8.8.0 the sync directory is defined in $settings and not $config_directories, and so the Settings.php file should be updated.
change from:
$config_directories['sync'] = 'foo/bar';
to
$settings['config_sync_directory'] = 'foo/bar';
8) Verify your website
Go to /admin/reports/status and check the general status of the website. Also, go to /admin/reports/dblog and look on the logs for errors or messages that are the result of the core update, make sure everything was updated properly.
9) That is all. Your Drupal is updated.
Known issues and workarounds
If you get any errors running composer update or composer require, try running composer prohibits {name of the package} this command should help you understand what are the dependency problems.
Other related issues and blog posts with further help:
Thanks! Your advice works like a charm! A few points:-
1) I don’t think “Require new core-dev package and dependencies” is required if dev isn’t required in step 4)
2) update.php can be used for step 6) instead of drush
3) Is it possible to also transit to the new drupal template you refer to drupal/recommended-project?