Home

>

Tools

>

Drupal

>

Releases

>

10.0.0-alpha4

Drupal Release: 10.0.0-alpha4

Pre Release

Tag Name: 10.0.0-alpha4

Release Date: 5/6/2022

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 10.0.0-alpha4 brings significant updates to the theming system with Claro becoming the default admin theme and Olivero becoming the default frontend theme. This release includes major improvements to CKEditor 5 integration, accessibility enhancements, and removal of deprecated code. Key changes include support for media view modes in CKEditor 5, improved error messages, and various security fixes. This alpha release continues to prepare Drupal for a stable 10.0.0 release with modernized defaults and improved developer and user experiences.

Highlight of the Release

    • Claro is now marked as stable and set as the default admin theme in Standard profile and Umami
    • Olivero is now the default frontend theme in Standard profile
    • CKEditor 5 now supports choosing view modes for media elements
    • Improved accessibility across Claro and Olivero themes, especially for high-contrast mode
    • Removal of several backward compatibility layers in preparation for Drupal 10
    • Security fixes addressing multiple vulnerabilities

Migration Guide

Backward Compatibility Breaks

Theme System Changes

  • Removed BC layers from the theme system
  • Removed deprecated theme key stylesheets-remove
  • Tests no longer rely on Classy theme (affects Locale, Link, Node, Taxonomy, Help, Help Topics, Block, Statistics, and Workspaces tests)

JavaScript Changes

  • Removed element_settings BC layer in ajax.js
  • Removed Shepherd shim code from Tour module
  • Removed reference to contextual_pre_render_placeholder() function

Other Deprecations and Removals

  • Removed Color module from the Standard profile
  • Removed core/drupal.date asset library
  • Deprecated FilterInterface::getHTMLRestrictions() forbidden_tags functionality

Migration Steps

For Theme Developers

  1. If your theme extends or relies on Classy, ensure you have updated your theme to not depend on it
  2. If using stylesheets-remove in your theme, update to use the modern approach with libraries-override
  3. Update any custom themes to use CSS variables for displacement values instead of directly accessing displacement values

For Module Developers

  1. If using element_settings in ajax.js, update your code to use the modern approach
  2. If relying on Tour module's Shepherd shim code, update to use the native Shepherd API
  3. If using FilterInterface::getHTMLRestrictions() forbidden_tags functionality, prepare for its removal
  4. Update any code referencing contextual_pre_render_placeholder() function

For Site Builders

  1. If you've customized the admin theme, be aware that Claro is now the default
  2. If you've customized the frontend theme, be aware that Olivero is now the default
  3. If using Color module in your site, prepare for its removal from core

Upgrade Recommendations

As Drupal 10.0.0-alpha4 is an alpha release, it is not recommended for production sites. This release is intended for testing and development purposes only.

For Developers and Site Builders

  • Install this alpha release in a development or testing environment to identify potential compatibility issues with your custom code or contributed modules
  • Test your site thoroughly with Claro as the admin theme and Olivero as the frontend theme
  • Review your custom themes and modules for compatibility with the removed BC layers
  • If you're maintaining modules that extend CKEditor, test them with the enhanced CKEditor 5 integration

For Module Maintainers

  • Update your tests to not rely on Classy theme
  • Test your modules with the new default themes (Claro and Olivero)
  • Ensure compatibility with the updated JavaScript libraries and removed BC layers

Timeline

  • This is the fourth alpha release of Drupal 10
  • Continue monitoring the Drupal 10 release schedule for beta releases, which will indicate more stability
  • Plan for a full production upgrade only when Drupal 10.0.0 stable is released

Bug Fixes

CKEditor 5 Fixes

  • Fixed issue where some configurations of allowed view modes caused CKEditor to fail to initialize
  • Fixed issue where media view modes didn't work if alignment was not enabled
  • Fixed incorrect handling of configurable CKEditor 5 plugins with filter conditions

Theme and UI Fixes

  • Fixed inconsistent classes for active trail between menu and book in Olivero
  • Fixed issue with dialog CSS referencing non-existent --color-whitesmoke CSS variable
  • Fixed Olivero's comment button label override
  • Fixed section titles in the preview section on views edit pages having too low contrast

Accessibility Fixes

  • Fixed Claro's radio buttons and checkboxes being unusable in high-contrast/forced colors mode
  • Fixed Olivero pager's next/prev icons not properly adapting in forced colors
  • Fixed active and hover state of "skip to main content" having too low color contrast
  • Updated placeholder styles to pass contrast ratio guidelines

Other Fixes

  • Fixed issue where queue items were only reserved by cron for 1 second
  • Fixed random test failure in EntityAutocompleteTest
  • Fixed Modernizr.touchevents usage that could break contextual links

New Features

Theme System Updates

  • Claro Theme: Now marked as stable and set as the default admin theme in both Standard and Umami profiles
  • Olivero Theme: Now the default frontend theme in the Standard profile
  • Theme Starterkit: Theme developers can now control how starterkit themes are generated

CKEditor 5 Enhancements

  • Media View Modes: Support for choosing view modes for <drupal-media> elements
  • Table Captions: Enhanced support for table captions, generating proper <table><caption></table> markup
  • List Support: Added native support for <ol start> and <ol reversed> attributes
  • Code Tag Plugin: Migrated "codetag" contrib CKEditor 4 plugin to built-in equivalent in CKEditor 5
  • Language Support: Added validation and support for global attributes like lang and dir="ltr rtl"

Developer Tools

  • CSS Variables for Displacement: Drupal.displace() now sets CSS variables indicating displacement values
  • Improved Error Messages: Better error messages for unrouted URLs
  • Documentation: Added subsystem maintainers for CKEditor 5 and improved documentation for various APIs

Modernization

  • Third-party Dependencies: Updated jsdom to latest major release
  • JavaScript Updates: Removed use of underscore from editor.admin.js and filter.filter_html.admin.js
  • Nightwatch: Updated to version 2.x

Security Updates

  • Implemented SA-CORE-2022-008 (specific details not provided in commit messages)
  • Implemented SA-CORE-2022-009 (specific details not provided in commit messages)
  • Added restrictions to allowed additional attributes in CKEditor 5 to prevent self XSS
  • Updated yarn dependencies to address latest security vulnerabilities
  • Updated Composer dependencies to the latest minor and patch versions for security

Performance Improvements

This release doesn't include significant performance improvements specifically called out in the commit messages. The focus appears to be on feature enhancements, bug fixes, accessibility improvements, and preparing for Drupal 10 by removing deprecated code and backward compatibility layers.

Impact Summary

Drupal 10.0.0-alpha4 represents a significant step toward the stable release of Drupal 10, with major changes to the default theme experience and continued improvements to the CKEditor 5 integration.

The most visible changes are the promotion of Claro to the default admin theme and Olivero to the default frontend theme in the Standard profile. This modernizes Drupal's out-of-the-box appearance and improves accessibility. Site administrators and content editors will immediately notice these changes when installing new Drupal sites.

For developers, this release continues the process of removing backward compatibility layers in preparation for Drupal 10. Several BC layers have been removed from the theme system and JavaScript code, requiring developers to update custom code that might rely on deprecated functionality.

The CKEditor 5 integration continues to mature with new features like media view mode selection, table caption support, and improved list handling. Content editors will benefit from these enhancements, which provide more flexibility and control over content creation.

Accessibility improvements are prominent throughout this release, with fixes for high-contrast mode, improved color contrast ratios, and better keyboard navigation. These changes benefit all users but are especially important for those using assistive technologies.

Security fixes address multiple vulnerabilities, making this alpha release more secure than previous versions. While specific details of the security advisories aren't provided in the commit messages, the implementation of SA-CORE-2022-008 and SA-CORE-2022-009 indicates that known security issues have been addressed.

As an alpha release, this version is not recommended for production sites but provides a valuable preview of what's coming in Drupal 10 and an opportunity for developers to test their code against the upcoming changes.

Statistics:

File Changed300
Line Additions5,522
Line Deletions3,722
Line Changes9,244
Total Commits86

User Affected:

  • Will experience Claro as the new default admin theme in Standard and Umami profiles
  • Will benefit from improved accessibility in admin interfaces, especially for high-contrast mode
  • Will see improved error messages for unrouted URLs

Contributors:

xjmbbenjaminalexpottlauriiiwebchickgobalarowlan