Drupal 10.2 Release Notes
Drupal has a special gift for the holiday season – version 10.2. Packed with exciting features, this release marks the beginning of a user experience revolution within Drupal. While version 10.1 hinted at some improvements, 10.2 introduces more significant changes.
User-Facing Innovations
Experimental Modules
Let’s start by highlighting changes to experimental modules. The “Announcements” module is now considered stable and is active by default. This module keeps users informed about the latest Drupal updates. Another notable change is the deprecation of the “Help Topics” module in favor of integrating its features into the “Help” module. This move signals the intention to phase out the well-known hook_help()
in the future.
Field Creation Enhancements
The field creation process has undergone a significant makeover. The dropdown list has been replaced with a user-friendly form that groups fields and provides descriptions. This improvement simplifies the experience for beginners, allowing them to easily view available fields and understand their functions.
New Media Revisions Interface
Drupal 10.1 introduced a generic interface for revisions in content blocks, and now a similar interface is available for managing revisions in Media entities. While seemingly minor, this standardization of interfaces is crucial for a seamless user experience.
File Name Sanitization
A new configuration section has been added to manage how file names are treated upon upload. This feature allows users to sanitize file names, reducing potential issues. Accessible through Administration -> Configuration -> Media -> File System, this setting applies to all uploaded files on the site.
Minor Improvements
Several minor enhancements have been made, including new permissions, changes to existing permissions for specific areas, and the addition of advanced pages, although these may be used infrequently.
Code-Level Changes
PHP 8.3 Support
Drupal 10.2 provides core support for PHP 8.3, allowing access to the latest features and improvements introduced in the new PHP version. Contributed modules may take some time to catch up with individual release schedules.
Symfony Updates
Drupal 10.2 has upgraded to Symfony 6.4, incorporating the latest Symfony features and functionalities. Notably, some components like FileSystem and Finder have shifted from development dependencies to required components for Drupal execution. A new Mailer component has been introduced, replacing the outdated mailing system, although it is currently experimental.
Attributes Support
After years of using Doctrine annotations, Drupal now officially supports attributes. This major change, particularly impactful for plugins, requires migrating all plugins to attributes for Drupal 11.
Fibers Support in BigPipe
The introduction of Fibers support in BigPipe enhances Drupal’s performance significantly when using BigPipe. While developers can’t fully leverage this improvement beyond BigPipe usage, it marks a notable enhancement in rendering speed.
Autowiring Core Services
Improved autowire support now extends to core services created by modules. This enhancement enhances the overall development experience.
Autowiring for Controllers
In a noteworthy development, autowiring for controllers has been introduced, eliminating the need for the static “create” method for service injection. Developers can now use attributes directly in the constructor.
Configuration Validation
Drupal 10.2 introduces the ability to validate configuration settings, a crucial step toward achieving 100% validation for core configuration in Drupal 11.
What to Expect in Drupal 10.3
User Experience Improvements
For users, Drupal 10.3 promises a significant change in the field management process. The goal is to streamline field addition and configuration through modals, enhancing efficiency. Additionally, ongoing work in the administrative section, particularly the toolbar, aims to improve the overall administrative experience.
Future Developer Enhancements
On the development front, Drupal 10.3 anticipates replacing certain interfaces, like TrustedCallbackInterface, with attributes. Efforts will continue to modernize the email system using Symfony Mailer. Expect substantial progress in configuration validation, essential for tasks like modifying configuration via REST API.
A performance-oriented addition is a new database driver with Mysqli, potentially faster than PDO and Fibers-enabled, aligning with BigPipe support for parallel rendering.
Long-term plans include replacing hooks with a more modern system and proposing the adoption of Symfony’s Messenger and Scheduler components to replace the current queue and cron system. Finally, Drupal 10.3 introduces a new API for managing security policies, a much-needed feature.