The wheels of Drupal development are turning faster and faster - Back in June, we marked the 1st anniversary of Drupal 9, and we're already talking about the upcoming Drupal 10. Yes, Drupal 10 is coming closer, while Drupal 8 hits its end of life on November 2, 2021, and Drupal 7 “retires” a year later, in November of 2022. Although we do not know all the details just yet, we're sharing what we do know about when to expect Drupal 10, why it is coming so soon, the new features it is likely to include, and what you need to consider with Drupal 8 and Drupal 7 websites in relation to their end of life.
When will Drupal 10 be released?
Drupal 10 is planned for release either in June of 2022 or by the end of the year 2022. According to Dries, the preferred date is to release it in June of 2022. The backup option is to release version 10 at the end of the year 2022. The final decision will probably be made in the next couple of months or so based on the progress.
Only a couple of Drupal 9 minor releases separate us from Drupal 10. We have one release left this year (9.3) and one or two releases next year (9.4 and 9.5). The release of Drupal 9.5 may be canceled if Drupal 10 does come in June.
Why is Drupal 10 coming so fast?
As Drupal initiative coordinator Gábor Hojtsy wrote in his recent blog post, with 10 planned to be released in the middle of 2022 and Drupal 9 end of life by end of 2023, Drupal 9 is expected to have the shortest lifetime among Drupal major releases in recent history.
If you feel you want to ask “Why so fast?”, you are not alone. In his keynote, Dries mentioned that a lot of people asked him why we couldn’t just stay on D9 for a little longer.
The reason is very simple, says Dries. It’s because of the third-party components that Drupal depends on. These components have their own life cycle. When a component that Drupal relies on goes end-of-life and gets a new major version that breaks backward compatibility, the Drupal team usually has to change their version number as well. The key dependencies include Symfony, CKEditor, PHP, and Composer.
What will be new in Drupal 10?
Similar to the way Drupal 9 is built on Drupal 8, it looks like Drupal 10 will be built on Drupal 9 with no major overhaul or reinvention. When Drupal 10.0 arrives, it will be identical to the latest version of Drupal 9 but with deprecations removed and dependencies updated.
In the DrupalCon North America 2021’s keynote speech, Gábor Hojtsy shared that Drupal 10 would be a refined version of Drupal 9 including “all the goodies from all initiatives” — it will include all of the results of all the work that the community has put in. Let’s take a closer look at some of the goodies right now!
Updated third-party components
Drupal 10 is going to have the latest third-party component versions — this is the key goal of the Drupal 10 Readiness Initiative. This means Drupal 10 websites will have all the innovations and improvements from these components and be more secure, better supported, faster, more powerful, and more user-friendly both to non-technical users and developers. Here are the key component changes planned:
- the update of CKEditor 4 to CKEditor 5
- the update of Symfony 4 to Symfony 5 or 6
- the update of Composer 1 to Composer 2
- the update of PHP 7 to PHP 8
In addition, here is what is planned:
- the drop of support for Internet Explorer 11
Even easier website upgrades
It’s awesome to know that upgrades are also getting easier. According to Dries, the team keeps getting better at managing major versions and improving automation tools. In upgrades from 8 to 9 and from 9 to 10, most of the work on that upgrade is removing deprecated code. It’s now possible to automate 96% of the work, while with Drupal 9, this figure was only 30%. This means the upgrades from 9 to 10 will be 3 times more automated, says Dries.
The big news here is that the upgrade to Drupal 9 was already easy, but the upgrade to Drupal 10 will be even easier. — Dries Buytaert
In Drupal 10, site builders will be able to find and install modules directly from their Drupal site admin dashboard. Dries compares this feature to the App Store on smartphones. This is the newest initiative but the progress on it is amazing.
The functionality will be added to the Drupal core and made available out-of-the-box, but for now, there is the Project Browser contributed module in the early stages of development. Its page is equipped with the “Try it now” button that enables you to test the Project Browser on a fresh install of Drupal, explains software engineer Martin Anderson-Clutz for Dries’ presentation.
The tool uses a new technology called DrupalPod that creates a cloud-hosted Drupal development environment on the fly. You will see the Extend tab from where you will be able to browse projects. In addition to “All projects,” there is the “Recommended projects” option that is meant to help site builders be more confident about using vetted projects. It’s also possible to narrow the results down by category. In the future, the tool will install the modules by itself, but currently, it gives instructions to use Composer or Drush for that.
Currently, there is the Decoupled Menus Initiative contributed module that is headed towards being included in the core. It provides an additional HTTP endpoint for Drupal-managed menus to be shared, explains Brian Perry, one of the coordinators for the Decoupled Menus Initiative, for Dries’ presentation.
Easy Out of the Box
The Layout Builder, the Media Library, and the Claro theme are expected to be available out of the box in every new Drupal installation by D10. Moreover, there is ongoing work on improving their functionality.
These tools are in great demand based on surveys held with Drupal users. They make it significantly easier for editors, website admins, and site builders to use the administrative interface, manage content and media, and create visually appealing page layouts.
One of the dream-come-true features for all Drupal users is to have their website able to update itself automatically so they can be sure it is up-to-date and secure. The Automatic Updates Initiative has exactly this goal, and impressive work has been done about it. Package signing for better security, UX improvements, and testing with different hosting providers are major points for work yet to be done.
The feature is currently in the form of a contributed module but is planned for inclusion with the core. Ted Bowman demonstrates for Dries’ presentation that the module has both the on-demand core update option (which is otherwise not possible via the UI) and the option for performing available core updates on every Cron run. This may include security updates only or all updates.
New Default Front-end Theme
The new, super accessible, and modern Olivero theme is going to finally replace Bartik as the default front-end theme for Drupal websites. The theme even was appreciated by the National Federation of the Blind (United States). While helping the Drupal team do the accessibility testing, they admitted that Olivero was very well done and low-vision accessible. They could not find any issues with contrast, focus, or scaling, the forms were very well done and the content was easy to find and navigate. Dries emphasizes that the Drupal team has put great effort into making Olivero accessible in every detail and the result something to be proud of.
New Starterkit Theme Tool
For over a decade now, it’s been possible to create a subtheme in Drupal based on the main theme that provides the necessary CSS classes and markup. In Drupal 8 or 9, developers often use the core Classy theme for subtheming. Classy has been frozen since 8.0.0 because plenty of subthemes depend on it, and changes could break backward compatibility.
The Drupal creators are now working on a new workflow for creating custom themes and a new starterkit theme tool in Drupal 10. It will give front-end developers a good starting point for their themes. At the same time, it will be easy to maintain because making changes to the starterkit will not influence any production themes directly.
The reason is that, instead of inheriting changes at runtime, the generated themes will be forked from the starterkit theme at the creation time, explains Lauri Escola at DrupalCon North America 2021’s Drupal 10 Readiness Initiative Keynote. With the new tool ready, Classy will become deprecated, but the support for it will not be removed.
What the Drupal 10 release means for Drupal 8 and Drupal 7 websites
As mentioned above, Drupal 8 reached end-of-life on November 2, 2021, and Drupal 7 follows it a year later, on November 28, 2022. End of life means the stop for official support and updates. Unsupported websites are more vulnerable to security breaches and are missing out on performance improvements and new functionality. That’s why it is recommended that both Drupal 7 and Drupal 8 websites upgrade to the latest version of Drupal 9 and then when Drupal 10 does come out, move effortlessly to it.
Why is Drupal 7 supported longer than Drupal 8? Whilst this may seem strange, Drupal 8 is reliant on Symfony 3 which has reached its end of life at the same time. Drupal 7 isn't using Symfony, so a decision was made to extend the support for the older version due to the pandemic challenges. Drupal’s creators are giving extra time to those organizations who are on Drupal 7 to migrate to a later version.
When it comes to Drupal 8, the upgrade to Drupal 9 is straightforward and basically comes down to removing deprecated code and using the latest version of the core. No special efforts are needed, especially considering numerous helpful tools to automate the deprecated code removal. The scope of work will depend on the state of your website — when your core, modules, and themes were last updated and how much custom code you have that needs to be cleaned up.
Upgrade with experts!
Drupal keeps continuously improving for your benefit. To keep your hand on the pulse of this forward movement, upgrade your website and enjoy its security, stability, performance, and new features. Our Drupal team is ready to answer any questions you may have about your website’s upgrade. Let's chat.