How does Drupal 9.3.0 strengthen website performance? Skip to main content

Search

2nd Nov, 2022
4 min read

How New Drupal 9.3.0 Version Will Impact Website Performance

Image
How New Drupal 9.3.0 Version Will Impact Website Performance - Banner

There has been an increased focus on data security and integrity, and all the frameworks are proactive in this regard. Drupal is a robust CMS that allows big brands to have an elegant website with the latest features to increase visitor footfall. In line with the constant endeavor to make life easier for developers, Drupal brings up several minor releases at specific intervals. For example, Drupal 9.3.0 was released in December 2021 to prepare the stage for Drupal 10 and make several enhancements to Drupal.

Around October end 2021, Drupal announced the upcoming release of version 9.3.0. This new release has several feature changes, additions, and new APIs. However, it is critical for developers to know how the release would affect them. Therefore, this article will discuss what is new in the Drupal 9.3.0 version.
 

What's New in Drupal 9.3.0 Version

The new version of Drupal 9.3.0 was released in December 2021. The release ensures Drupal users have the best features and plug any vulnerabilities. In addition, all the releases cover adequate data security measures. The update from an earlier version would be without too many hassles. We will discuss some highlights of the Drupal 9.3.0 version that has taken place.

Role Dependencies of the User

The user roles will now depend on the module that will provide the permission for the role now. Uninstalling the module will remove the underlying permissions. The existing functions will get updated, and remove the permissions that no longer exist. An update in the UID column in the user's table will affect this change.

Changes in Form Field Data

The field labels are allowed to be 255 characters in length. The admin themes should pay heed due to the longer label length. The block plugin forms will no longer get the 'block_theme' key in the form state as an error. Developers may need to change the form code interacting with the key. Several file URLs will use relative links now instead of absolute links.

Theme Template and System Changes

There is a modification in field--node--created.html.twig, field--node--title.html.twig, and field--node--uid.html.twig for rendering the fields. The site builder configures them for the sites that permit the configuring display of the mentioned fields.

The Submit buttons with the theme as <button type="submit"> elements will trigger AJAX within the Views exposed forms. It is similar to what happens when themed as <input type="submit"> elements.

The version has removed the Drupal-specific <link> tags from the taxonomy term pages and node. It helps to improve performance. The <link rel="shortlink"> and <link rel="canonical"> tags are still there and have now been extended to cover all types of entities.

Deprecations in the Core Modules

Drupal 10 may remove the Quick Edit module. Hence, this release has removed the module from the Standard profile. Only the new sites installing the Standard profile for the first time will be affected. It will not impact the existing sites as of now.

CKEditor 5 as a Trial Alternative

CKEditor 4 will reach the end of life by 2023. The trial new version of CKEditor is present in this new Drupal minor update. It is significantly different from CKEditor 4. The module is still in trial and not intended for use in production. Before you start the testing for CKEditor 5, you must have a backup of the site data and configuration.

You can use CKEditor 5 for updating the modules that will extend CKEditor 4 to be compatible with version 5. However, as there are several differences, the developers must work it whenever they find the time.

Automate Testing Changes

The FunctionalJavascript tests can automatically assess if JavaScript errors were there during the execution of the test. In Drupal 9.3.0, there is a deprecation warning for tests that still pass, even if there are JavaScript errors. In Drupal 10, such tests will fail.

The Drupal core was using the cspell automatic spell-checking utility. It has now been updated from version 4.2.8 to version 5.6.6. As a result, it will influence the testing workflows and patch development.

Deprecated and Removed Dependencies

The dependencies of the Drupal core on behat/mink-goutte-driver and fabpot/goutte are absent in this release. This is because they hindered forward compatibility with PHP 8.1 and Guzzle 7.

The jquery.once has been deprecated, and contributed modules must update using the once.js core JavaScript library. The Doctrine/ reflection package is not there too. The portions that the Drupal core relies on are copied to Drupal\Component\Annotation\Doctrine. Drupal 10 will not have this package. 

JavaScript's Dependency Updates

CKEditor 4 has been updated from version 4.16.2 to version 4.17.1. It helps to address a security vulnerability. 

  • tabbable updated from version 5.2.0 to version 5.2.1.
  • popperjs updated from version 2.9.2 to version 2.10.2.
  • js-cookie updated from version 3.0.0-rc0 to version 3.0.1.
  • sortable updated from version 1.13.0 to version 1.14.0.

Other Changes in Drupal 9.3.0

The websites working on PostgreSQL without any pg_trm extension will start seeing warnings in the status report when not installed. The drupal_internal__target_id has been added to the JSON:API responses. 

The removal of GuzzleMiddlewarePass accommodates the TaggedHandlersPass in turn. However, some developers whose code interacts with GuzzleMiddlewarePass must now use TaggedHandlersPass.
 

Conclusion

Drupal has taken the initiative to improve the features offered by it. Developers will find these features useful as they prepare to transition to Drupal 10. We felt it necessary to collate what is new in the Drupal 9.3.0 version. Drupal is trying to develop a better experience for the users of its websites. There is reduced dependence on libraries not required by developers.