Drupal 11 dependencies

2 minutes read

Drupal 11 has just been released, and its dependencies lead us to review some components of our development and deployment processes.

More details on Drupal 11 dependencies here.

PHP 8.3

It is now required to use PHP 8.3 to run the web server, but also to run Composer.

Development

Fortunately, MAMP 7.0 arrived just in time with the right versions, despite some necessary corrections to the default values ​​delivered with the application.

It is also required to update the version of PHP that composer uses. For my part, I use the PHP binary delivered with MAMP, by adding these lines to my ~/.zshenv file:

# PHP
export MAMP_PHP=/Applications/MAMP/bin/php/php8.3.8/bin
export PATH=$PATH:$MAMP_PHP

Production

Plesk 18 has allowed us to install and select PHP 8.3 for quite a while now, so no worries there. On the other hand, you also need to update the version of PHP which is used with Composer in the Deploy actions of the Git repositories.

/opt/plesk/php/8.3/bin/php /usr/lib64/plesk-9.0/composer.phar install -v > composer.log 2>&1

MySQL 8 (or MariaDB 10.6)

MySQL version is also increased.

Development

Again, MAMP 7.0 comes with a suitable version and allows us to move between versions of MySQL. Be careful though, the databases will not be migrated automatically and they will have to be re-imported into the MySQL 8 server. The databases will therefore be duplicated in the two servers (and will not be synchronized).

Production

The MariaDB server that we use on Plesk will also need to be updated. This is an update with some risk, and Plesk is currently working on finalizing a tool that will allow us to update without problems. In all cases, you will need to make an adequate backup before proceeding.

The update tool is not enabled by default at this time. I had the opportunity to test it on a server with CentOS 7 and the update was successful. I'm postponing doing this on our main server to allow Plesk to fix any issues they might find in the meantime.

So this is the only systems dependency that is not yet completely resolved on our side.

Here are more details about the Plesk update tool.

How to update from Drupal 10 to Drupal 11

Once all installed modules are compatible with Drupal 11, run the following commands:

composer require 'drupal/core-recommended:^11'  'drupal/core-composer-scaffold:^11' 'drupal/core-project-message:^11' --no-update
composer require 'drupal/core-dev:^11' --dev --no-update
composer remove drupal/core --no-update
composer update