There is a lot of anticipation and some confusion in the Drupal world with the announcement of Drupal 7 End of Life (EOL). Because of this, migrating your site to Drupal 8 and ensuring the corresponding upgrades have your site ready for Drupal 9 - is an important step to take. While Drupal 8 has been around since 2015, we're stressing the importance of following through with the transition as Drupal 9 is on the horizon. In this article, we’ll outline what these announcements mean, how it will affect your site, and aim to provide clarity around Drupal 8 so you can make the best decision moving forward.
The Future of Drupal
Below is an infographic showing the calendar of releases, and EOL’s. As you can see, Drupal.org's official support for both Drupal 7 and Drupal 8 will end around Q4 of 2021. However, continued support will be available for both through about 2024 from third parties.
The first release of Drupal 9 should be around mid-2020. This should be a minor in-place upgrade for organizations that have kept their Drupal 8 installations up to date. Let's dig into that further.
The Bottom Line
Moving your site from Drupal 7 to Drupal 8 is not an in-place upgrade, it is a rebuild. Once your site has been rebuilt, there is still a migration process to consider in Drupal 8.
Moving from Drupal 7 to either Drupal 8 or Drupal 9, will in almost all cases require a total rebuild of your site on the new platform. Due to a significant architectural change in Drupal with the release of Drupal 8, it is almost impossible to do an ‘in-place upgrade’ of a Drupal 7 site.
Some of these architectural changes that require a full rebuild to move to Drupal 8 include:
The way code is structured for contrib and custom modules is completely different.
There is an entirely new theming system that uses a different syntax and structure from Drupal 7.
Many contrib modules have been partially or fully merged into core and the way they work is now different.
To Migrate your Drupal 7 site you’ll have to start setting up your migration environment, rewrite the modules, and prepare the upgrade path. Enabling your module will ensure nodes, terms, users, and other entities are then migrated to the new website. From there, your site and themes rebuild will be underway.
With the release of Drupal 8, Drupal as a platform is now based on a number of industry standard libraries that have wide support. This is the driving factor of the architectural changes mentioned above. It is the reason that Drupal switched from primarily procedural based code structures to majority object oriented.
The benefit of this? Drupal can now do multiple incremental enhancements in each minor release while marking old code as deprecated. This allows new functionality to be added to the platform while maintaining compatibility with older code in the Drupal 8.x ecosystem. Drupal 8 is mature enough to have a wide variety of modules available and it will ensure every core and contributed module, security patch, and improvement is supported and compatible for your site longer. This rebuild is also much quicker than all previous versions. Caching comes as a solution and modules like BigPipe help separate a site page into static and non-static components and stacks in a prioritized manner, resulting in dramatically quicker load times.
Moving to Drupal 8, and availing of all the benefits mentioned above, will also mean you are set up for future success. With small multiple incremental enhancements in each minor release, when the time comes to upgrade to Drupal 9, it will be only slightly more effort as going from Drupal 8.5 to Drupal 8.6, for example.
The switch from Drupal 8.x to Drupal 9.x just means that all of that old code that was marked as deprecated is now removed. The upgrade from 8 to 9 should be comparatively painless as long as there is an incremental removal of references to deprecated code in your custom modules/themes with each 8.x point release. However, It’s important to note, regularly updating your Drupal 8 site as new releases become available is very much correlated to the ease of transitioning fully to Drupal 9. If you are actively keeping up with your twice a year incremental updates, the transformation should be seamless.
This is a long-term investment. This site rebuild and added features will keep you from having to do so again in the future.
Based on the complexity of your site, and the nature of moving to Drupal 8, this is often a big lift for teams to undertake. Achieve have been heavily involved in each Drupal upgrade since Drupal 4, and we’ll be here well after Drupal 9.
Feel free to reach out and we can discuss what your roadmap for what this success might look like. We’d love to help.