Drupal 11? Yes! Drupal 11 is going to release on August 2024 or December 2024. That's only a year and a half away when writing this blog post. So, when should we start preparing modules and sites for Drupal 11? Now! Preparing for the next major version of Drupal should not be a mad dash but a consistent process.
I'll be presenting at MidCamp tomorrow about lessons learned from this past Drupal 10 readiness effort. While strenuous, the Drupal 10 readiness work for contributed modules went well. It definitely went faster than Drupal 9. And that is because we have better tooling and processes. Those tools and processes need more refinement as we prepare for Drupal 11.
Making sure our tools are up to date with Drupal 10 changes
One problem is that phpstan-drupal and drupal-rector quickly become outdated with changes to Drupal core. This is improving for phpstan-drupal now that Drupal core uses PHPStan. But both projects need custom code written to detect and fix changes.
One solution is a more consistent review of change records for implications to phpstan-drupal and drupal-rector. Right now, it is a retroactive process. We must look at change records from a large period and verify if the tool supports those changes. Ideally, this would be a sign-off process before a change record is published.
In the meantime, I have built a GitHub repository that imports Drupal core change records as issues. These issues can then be triaged, and we can check if phpstan-drupal or drupal-check needs work to support them. You can find the repo here: https://github.com/mglaman/drupal-change-record-triage. The repository has a scheduled workflow to parse the change records RSS feed and import entries as issues.
Jump start on PHPUnit 10 deprecations
PHPUnit 10 has been released this year. I am assuming Drupal 11 will bump from PHPUnit 9.5 to PHPUnit 10. A lot of Drupal 10 compatibility work involved PHPUnit 8.5 to PHPUnit 9. So let's get that taken care of earlier than later! Check out this Drupal core issue for more information https://www.drupal.org/project/drupal/issues/3217904
Drupal uses the Symfony PHPUnit bridge for cross-version compatibilities. Drupal 11's adoption of PHPUnit 10 is blocked on the
symfony/phpunit-bridge component's ability to support PHPUnit 10. Follow this GitHub issue to learn more (or join in to help!) https://github.com/symfony/symfony/issues/49069.
What are the dependency changes for Drupal 11?
I don't know, they haven't been solidified. You can follow the following issue https://www.drupal.org/project/drupal/issues/3267879
Want more? Sign up for my weekly newsletter