
It’s time for a recap of our favorite Drupal blog posts from March. We hope you enjoy this month’s selection!
Getting Single Directory Components in Drupal Core
For starters, we have an article by Lullabot’s Mateu Aguiló Bosch detailing the work being done on Single Directory Components in Drupal. He begins with the goals of the project and an overview of UI Patterns, a predecessor of SDC, before moving on to the team’s core architectural decisions.
These six principles are: all component code is in one directory; components are YML plugins; auto-generated libraries; the component API needs to be descriptive; components are embedded with native Twig tools; and they are replaceable. Mateu also provides an example of working with SDC before concluding with some next steps, key here being the proposal to include SDC in Drupal Core.
Creating Your First Single Directory Component within Drupal
In the same line, we have another article on single directory components, this one coming from Mike Herchel and providing a step-by-step guide on how to create a single directory component in Drupal. Specifically, he shows how to migrate the “tabs” component in the new front-end theme Olivero to SDC.
In addition to the guide, Mike also includes a bit of background on the work done on single directory components, basically recapping the above post from Mateu and including links to the most relevant drupal.org issues for SDC. He finishes with a call on community members to help out and a few steps on how they can do so.
Read more about creating a SDC in Drupal
Why content management systems can outperform static site generators
The third article comes from Dries, who wrote about how content management systems can outperform static site generators and why he is sticking with Drupal for his blog (besides being the project founder and lead, of course).
His key reason for preferring Drupal is the slow and unoptimized publishing workflow of leading SSGs, whereas Drupal makes authoring very user friendly. He also busts the myth of SSGs offering faster website performance by comparing the page load times of websites built on different platforms. Still, he points out that he sees the value of static assets, but just prefers the superior authoring experience provided by a CMS.
Upgrading your site to Drupal 10
Next up, we have an article by Saul Willers of PreviousNext about upgrading from Drupal 9 to Drupal 10. The main changes to keep top of mind here are updated platform requirements (PHP 8.1+) and third-party dependencies (e.g. Symfony 6).
To prepare for the upgrade, make sure your website is running on the latest version of Drupal 9, namely 9.5, and update all contributed modules that have Drupal 10 ready versions available (for custom modules, you’ll need custom development – use Upgrade Status to catch deprecations). Lastly, you need to upgrade to CKEditor 5, and then you can smoothly upgrade to Drupal 10.
Read more about upgrading from Drupal 9 to 10
Exploring Decoupled/Headless Drupal distributions while building the Schema.org Blueprints demo
Moving on, we have an article from Jacob Rockowitz, the creator of the Schema.org Drupal module. In it, he shares his research on two popular headless/decoupled Drupal distributions and how it has helped him in the creation of the Schema.org Blueprints module.
The first distribution which Jacob looks at is Contenta, released in 2017 and focusing largely on content as its name suggests. The second one is Acquia CMS, an open-source Drupal based CMS optimized for the Acquia platform.
As Jacob highlights, both of these have been vital to developing the headless ecosystem of Drupal, and he is looking forward to seeing how it will progress.
Read more about two key headless Drupal distributions
Drupal Premium Features module now stable
In the next article from March, CKEditor’s Gökçe Tosun presents the CKEditor 5 Premium Features module for Drupal which is production ready as of last month. CKEditor 5 is already the default Drupal editor since Drupal 10, and this module provides exclusive additional functionality to the editor.
The module’s features are divided into two groups: the collaborative features include comment threads, tracking changes, revision history, real-time collaboration, and notifications, while the productive features cover two converter plugins – exporting to PDF & Word and importing from Word – and mentions.
Read more about the CKEditor 5 Premium Features module
High concurrency Composer
We continue with an interesting post by Acquia’s Wim Leers about a bug in the package_manager module, which is the basis for two of Drupal’s key strategic initiatives, Automatic Updates & Project Browser. Namely, the issue was a random test failure on DrupalCI, for which the failure was increasing over time.
The team was able to determine that the problem was with Composer, which led to the discovery of the root cause of the bug: using Composer in a high concurrency context can cause two different commands to be executed on the same millisecond. The solution ended up being a simple one-line fix which allows to avoid any such collisions.
Read more about high concurrency Composer
Drupal 10 - Don't Panic!
We’re concluding this month’s overview with another Drupal 10 article, written by Duncan Worrell of Cyber-Duck. The main focus of his article is Drupal 9's end of life, scheduled for November 2023, and how Drupal 9 site owners should best approach the upgrade.
While the core Drupal 10 platform has been available since December 2022, there are still a lot of contributed modules which are not yet Drupal 10 ready, and Duncan recommends waiting until they are.
He expects the upgrade to be at least as smooth as moving from Drupal 8 to 9. Some key preliminary things to do before going forward with the upgrade is making sure your website runs on the latest versions of PHP and Drupal 9.
Read more about the Drupal 9 EOL and upgrading to Drupal 10
This concludes our recap of the top articles from March. Make sure you don’t miss next month’s selection!