Home

>

Tools

>

Drupal

>

Releases

>

9.3.0-beta1

Drupal Release: 9.3.0-beta1

Pre Release

Tag Name: 9.3.0-beta1

Release Date: 11/12/2021

Drupal LogoDrupal

Highly flexible, open-source content management system known for complex, scalable web applications. Preferred by government, educational, and large enterprise websites requiring advanced customization and security features. Robust module ecosystem.

TL;DR

Drupal 9.3.0-beta1: CKEditor 5 Integration and Olivero Theme Stabilization

This beta release introduces significant enhancements to Drupal 9.3.x with the addition of CKEditor 5 as a core module and the promotion of the Olivero theme to stable status. It also includes important bug fixes for navigation menus, layout builder, SVG handling, and migration tools. Performance improvements for sites with many entities using Views and JsonAPI have been implemented, along with better PostgreSQL support through pg_trgm extension warnings.

Highlight of the Release

    • CKEditor 5 module added to Drupal core, providing a modern rich text editing experience
    • Olivero theme promoted to stable status, ready for production use
    • Performance improvements for sites with many entities using Views and JsonAPI
    • Fixed navigation menu overflow issues in various themes
    • Added PostgreSQL pg_trgm extension warning system for better database compatibility

Migration Guide

Deprecated APIs

Several APIs have been deprecated in this release and will be removed in future versions:

  1. hook_init for theme engines: Developers should update their theme engines to use alternative hooks.

  2. d6_url_alias_language migration process plugin: This plugin has been deprecated. Migrate implementations should be updated to use alternative approaches for handling URL alias languages.

Removed Node Publish Actions

References to removed node publish actions have been removed. If your code relies on these actions, you'll need to update it to use the current action system.

Symfony 6 Compatibility

Methods of the class Drupal\Core\TypedData\Validation\ExecutionContext that are considered internal in Symfony 6 have been updated to ensure future compatibility. If you've extended this class, review your implementations.

Upgrade Recommendations

For Production Sites

This is a beta release and is not recommended for production sites. Wait for the stable 9.3.0 release before upgrading production environments.

For Development and Testing

This beta release is suitable for testing and development environments. Site builders and developers should test their custom modules and themes with this release to identify any compatibility issues, particularly if they:

  1. Use the rich text editing capabilities and will want to test with CKEditor 5
  2. Use the Olivero theme or plan to migrate to it
  3. Have PostgreSQL databases without the pg_trgm extension
  4. Have complex sites with many entities using Views and JsonAPI
  5. Use migration tools for content migration

Preparation Steps

  1. Test in a non-production environment first
  2. Review the deprecated APIs if your site uses custom theme engines or migration plugins
  3. If using PostgreSQL, ensure the pg_trgm extension is installed
  4. Test content editing workflows with the new CKEditor 5 integration

Bug Fixes

UI and Theme Fixes

  • Fixed navigation menu items overflowing outside their container
  • Corrected center alignment of cancel buttons in Layout Builder
  • Resolved JavaScript errors in Olivero theme when secondary tabs are present
  • Fixed broken SVG elements when using the "Auto convert linebreaks" (autop) filter

Migration System Improvements

  • Fixed "Too many open files" issue when migrating multiple files using the "download" process plugin
  • Corrected query string conversion to array for Drupal 6 menu_link migration
  • Fixed incorrect type declaration in docblock for class property in migration system
  • Removed references to removed node publish actions

Other Fixes

  • Removed unnecessary XSS::adminFilter() in Drupal\views\Plugin\views\area\Result
  • Made StatementWrapperLegacyTest::testClientStatementMethod() less specific for better testing
  • Fixed ContentTranslationUITestBase to not rely on Classy theme

New Features

CKEditor 5 Integration

The most significant addition in this release is the integration of CKEditor 5 as a core module. This modern rich text editor provides an improved editing experience with a streamlined interface and better content creation capabilities.

Olivero Theme Stabilization

The Olivero theme has been promoted from experimental to stable status, making it production-ready. This modern, accessible theme is now fully supported for use on Drupal sites.

PostgreSQL Extension Warning

A new warning system has been added for Drupal 9 installations using PostgreSQL without the pg_trgm extension. This helps administrators identify potential compatibility issues before they cause problems.

Security Updates

No specific security fixes were mentioned in the release notes. However, the dependency updates included in this release may contain security improvements as part of the regular maintenance of Drupal's dependencies.

Performance Improvements

Views and JsonAPI Performance

A significant performance improvement has been implemented in \Drupal\views\Plugin\views\display\PathPluginBase::alterRoutes(), which could become very slow on sites with many entities and JsonAPI enabled. This change will improve route generation performance on complex sites.

File Migration Optimization

The "Too many open files" issue with migrating multiple files using the "download" process plugin has been fixed, which improves performance and reliability when migrating large numbers of files.

Impact Summary

Drupal 9.3.0-beta1 represents a significant step forward with the introduction of CKEditor 5 and the stabilization of the Olivero theme. These changes improve the content editing experience and provide a modern, accessible default theme option.

The performance improvements for Views with many entities and JsonAPI will benefit complex sites, while the various bug fixes address issues across navigation, layout, SVG handling, and migration tools. The addition of PostgreSQL pg_trgm extension warnings helps administrators identify potential database compatibility issues early.

For developers, the polyfill for String.includes improves compatibility with older browsers like IE11 and Opera Mini, while the deprecation notices for hook_init in theme engines and the d6_url_alias_language migration process plugin help prepare for future changes.

Overall, this beta release provides a solid foundation for testing and preparing for the upcoming stable 9.3.0 release, with improvements that benefit content editors, site builders, developers, and system administrators alike.

Statistics:

File Changed300
Line Additions278
Line Deletions117
Line Changes395
Total Commits26

User Affected:

  • Access to the new CKEditor 5 rich text editor with modern editing capabilities
  • Fixed SVG handling when using the 'Auto convert linebreaks' filter
  • Improved navigation menu behavior preventing overflow issues

Contributors:

alexpottlauriiilarowlaneffulgentsiaxjm