Drupal Release: 9.3.10
Tag Name: 9.3.10
Release Date: 4/13/2022
DrupalHighly 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.10 is a maintenance release that brings significant improvements to the CKEditor 5 integration, fixes PHP 8.1 compatibility issues, and addresses various bugs across the system. Key updates include enhanced accessibility for CKEditor 5, improved media handling, and fixes for random test failures. This release is important for sites using CKEditor 5 and those planning to upgrade to PHP 8.1.
Highlight of the Release
- Updated CKEditor 5 to v34.0.0 with numerous accessibility improvements
- Fixed PHP 8.1 compatibility issues in DbLog and other components
- Improved media handling in CKEditor 5, including better support for image alignment and captions
- Enhanced accessibility with better screen reader support and Windows High Contrast Mode compatibility
- Fixed Composer 2 compatibility issues
- Improved upgrade path from CKEditor 4 to CKEditor 5
Migration Guide
CKEditor 4 to CKEditor 5 Migration
- Fixed issue with upgrading from CKEditor 4 for text formats that have FilterInterface::TYPE_MARKUP_LANGUAGE filters enabled
- Corrected upgrade path that never configures the ckeditor5_heading plugin to allow
<h1> - Resolved bug in CKE 4 → 5 upgrade path where "format" does not always map to "heading" (could map to "codeBlock" too, or both, or neither)
- Improved SmartDefaultSettings to select the CKE5 plugin that minimizes creation of HTML restriction supersets
PHP Version Compatibility
- Fixed PHP 8.1 compatibility issues in DbLog and other components
- Addressed deprecation notices when running on PHP 8.1 from CLI
Composer 2 Compatibility
- Fixed fatal error related to undefined method
Composer\DependencyResolver\Operation\UpdateOperation::getJobType()
Upgrade Recommendations
This is a maintenance release that includes important bug fixes and enhancements, particularly for sites using CKEditor 5 and those planning to upgrade to PHP 8.1.
Priority: Medium
- Sites using CKEditor 5 should upgrade to benefit from numerous fixes and accessibility improvements
- Sites running on PHP 8.1 or planning to upgrade to PHP 8.1 should apply this update to avoid deprecation notices
- Sites using Composer 2 should upgrade to fix potential fatal errors during dependency resolution
The upgrade process follows the standard Drupal minor version update procedure and should be straightforward for most sites. As always, test the update in a development environment before applying to production.
Bug Fixes
CKEditor 5 Bug Fixes
- Fixed issue where elements wrapping
<drupal-media>were not retained - Fixed bug where changes to "Manually editable HTML tags" were lost if form submitted without triggering AJAX
- Resolved issue where some image attributes were lost in edge cases
- Fixed problem where merging cells in tables was possible in UI but lost upon saving
- Corrected issue where
<a>with GHS allowed attributes downcast wraps data-caption with<a> - Fixed toolbar visibility when elements inside
<drupalMedia>are focused
PHP and System Bug Fixes
- Fixed PHP 8.1 deprecation notices in DbLog when running from CLI
- Resolved Composer 2 fatal error related to undefined method
getJobType() - Fixed array to string conversion in CacheContextsManager due to 'cookies' cache context
- Corrected issue where checkboxes element forgot selected yet disabled individual options
- Fixed Media library widget forgetting ordering when adding or removing items
- Resolved issue where system_site migrates default 403, 404 and front page paths as forward slash (/)
UI and Testing Bug Fixes
- Fixed Claro theme issue with vertical scrollbar display when many results are returned by linkit
- Resolved multiple random test failures in Layout Builder tests
- Fixed issue where CKEditor does not load when using Edge + Windows High Contrast Mode
New Features
CKEditor 5 Improvements
- Updated CKEditor 5 to v34.0.0 with numerous enhancements
- Added CodeBlock plugin for better code formatting options
- Added support for functionality equivalent to ckeditor_stylesheets
- Improved image handling with ability to remove alignment in the UI
- Enhanced media library integration with better toolbar visibility
- Made image alt text required or strongly encouraged for better accessibility
Other Enhancements
- Added a new recipe to Umami demo profile - Borscht with pork ribs
- Improved documentation for form elements including checkboxes and radios
- Enhanced support for table cell merging in CKEditor 5
Security Updates
No specific security fixes were mentioned in this release. For security-related updates, always refer to the official Drupal Security Advisories.
Performance Improvements
- Improved CKEditor 5 initialization process
- Enhanced cache handling with fixed array to string conversion in cache contexts
- Optimized AJAX callbacks in block add form implementation
- Reduced unnecessary JavaScript loading by fixing CKEditor 5 IE11 warnings library that was being added to every page
Impact Summary
Drupal 9.3.10 delivers significant improvements to the CKEditor 5 integration, focusing on accessibility, media handling, and fixing various edge cases. The release addresses PHP 8.1 compatibility issues, making it an important update for sites planning to upgrade their PHP version.
Content editors will benefit from enhanced media handling in CKEditor 5, including better support for image alignment, captions, and table cell merging. Accessibility improvements make the editor more usable for screen reader users and those using Windows High Contrast Mode.
Developers will appreciate the PHP 8.1 compatibility fixes, improved documentation, and resolved Composer 2 issues. The enhanced upgrade path from CKEditor 4 to 5 will help site administrators manage their text format configurations more effectively.
This release represents Drupal's ongoing commitment to accessibility, with numerous improvements to ARIA attributes, screen reader support, and keyboard navigation in the CKEditor 5 integration. The fixes for random test failures also contribute to a more stable development experience.
Statistics:
User Affected:
- Improved CKEditor 5 experience with better media handling and image management
- Fixed issues with image alignment and caption handling
- Enhanced accessibility for screen reader users in the editor
- Better support for tables including cell merging
