Drupal 11 deep dive: what's new, how to prepare
June 27, 2024

Gábor Hojtsy

Slides are open source

(CC BY-NC-SA 2.5)

Created by @gaborhojtsy at @acquia

Review links, check out speaker notes and present your own from slides.com/gaborhojtsy/drupal-11-deep-dive-what-s-new-how-to-prepare-june-27-2024

Gábor Hojtsy

Acquia

Full Stack Community Organizer,
Drupal contributor since 2003, committer since 2007.

 

Contact me at @gaborhojtsy

You!

- New to Drupal?

- Drupal 11?

- Drupal 10?

- Drupal 9?

- Drupal 8?

- Drupal 7?

- Earlier Drupal?

 

1. Why Drupal 11
2. What's included
3. Tools

But Starshot!

Drupal Core

Automatic Updates /
Package Manager

Project Browser

Recipes capabiilty

CMS recipes (new baseline)

Add-on recipes

Drupal Starshot

Starshot capable Drupal Core

CMS recipes (new baseline)

Add-on recipes

Some Starshot features will become core, some will remain in recipes

Some core features will be removed* because Starshot provides them better

Starshot will likely be released based on Drupal 11

Is Drupal 11 too soon?

Drupal 11 is "early" so that users can avoid it longer

🫳🏻🎤

Drupal 10 will be supported until mid-late 2026!

Overlapping support

Drupal 10.0
Released:
Dec 2022

Drupal 11.0
Released:
week of July 29

Drupal 12.0
Released:
mid-late 2026

Drupal
10.4 LTS

late 2024

Drupal
11.4 LTS

mid 2026

EOL mid-late 2026

EOL mid-late 2028

For that to work out, we need Drupal 11 in 2024

Timelines

When is Drupal 11 released?

Alpha1 May 3, 2024.
Beta1 May 17, 2024.
Expected RC1 Week of July 1, 2024.
11.0.0 Week of July 29, 2024.
2024 2025 2026 2027 2028
Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
Q1 Q2 Q3 Q4
11.5 11.6
11.0 11.1 11.2 11.3 11.4
12.0 12.1 12.2 12.3 12.4
12.5
13.0 13.1
10.3 10.4 10.5

⭐️LTS

⭐️LTS

⭐️LTS

⭐️LTS

⭐️LTS

⭐️LTS

Drupal 7 EOL, January 5, 2025!

⭐️LTS

Drupal 7 (core) migrations
to Drupal 11 will
still be provided!

How is Drupal 11 built?

...

New solution
Deprecated
jQuery 3
Symfony 6
Deprecated

10.3 API

Deprecated
New solution
New solution

11.0 API

New solution
Symfony 7
jQuery 4
New solution
Deprecated
jQuery 3
Symfony 6
Deprecated

10.1 API

Action UI
Book
Forum

Modules moved to contributed projects

Tour
Tracker
Statistics

https://www.drupal.org/project/statistics/issues/3436823

Modules moved to contributed projects

What's in Drupal 11?

Same features as in Drupal 10.3,

with the deprecated parts removed,

system requirement updates made

Drupal core improvements

  • CKEditor Autoformat
  • Single-Directory Components
  • Decoupled menus with Linkset
  • Field UI revamp
  • Floating bulk operations
  • Easier block management
  • BigPipe interface previews
  • Performance improvements
  • Project announcements

 

Done by 10.2

Done by 10.3/11.0

11.1 or later

Project Browser
Automatic Updates
Experience Builder
Recipes improvements

  • New experimental
    navigation module
  • Experimental recipes APIs
  • Uninstall install profile
  • Workspaces is stable
  • New access policy API
  • Taxonomy term revisions and moderation support

Starshot

System requirements

MySQL/Percona 8
MariaDB 10.6

SQLite 3.45

PostgreSQL 16

PHP 8.3
Composer 2.7.7

(Drush 13)

PHP 8.3 is faster!

PHP 8.1

922 req/s

PHP 8.2

941 req/s

PHP 8.3

1432 req/s

Drupal 10.1 tested - Higher is better

https://kinsta.com/blog/php-benchmarks/

PHP 8.2

941 req/s

PHP 8.2

941 req/s

😍

Dependencies updated

Symfony 7
jQuery 4

jQuery UI 1.14
PHPUnit 10

Upgrade tools

Upgrade Status

drupal-rector

Project Update Bot now does MRs

7600+
issues opened

 

740+
fixed/closed (fixed)

Drupal 10.3.0 defined all deprecated APIs

1. Update to PHP 8.3 and

Drupal 10.3 now

2. Start updating projects to Drupal 11 compatibility

dev.acquia.com/drupal11

24% of all projects are in some form of compatibility!

Filtering to top 200 projects: 42%!

Bot can fix 72%+ of all remaining issues

What happens to modules that don't get updated?

Project Update Working Group

https://www.drupal.org/project/puwg

Norah Medlin (tekNorah) (provisional)

Vladimir Roudakov (vladimiraus)

Sven Decabooter (svendecabooter)

Naveen Valecha (naveenvalecha)

Kristen Pol (Kristen Pol)

Matt Glaman (mglaman)

Darren Oh (Darren Oh)

Mark Casias (markie)

Kim Pepper (kim.pepper)

Björn Brala (bbrala)

Lucas Hedding (heddn)

Pedro Cambra (pcambra)

Allan Chappell (generalredneck)

Jakob Perry (japerry)

Timo Huisman (Timo Huisman) (provisional)

Composer plugins for incompatible projects

Get incompatible projects with
https://packagist.org/packages/mglaman/composer-drupal-lenient

 

Apply fixes locally with

https://packagist.org/packages/cweagans/composer-patches

Drupal 12 will be even easier!

https://project.pages.drupalcode.org/gitlab_templates/jobs/upgrade-status/

Summary

Drupal 11.0.0 on week of July 29

Move to PHP 8.3 as soon as you can

 

No rush to adopt Drupal 11, but it is highly
automated and many people are doing it :)

 

Use Upgrade Status and drupal-rector

Drupal 11 meetings
every Monday in #d11readiness

Get the sticker!