Drupal 8 To 9

Posted onby admin

“Drupal 9 is Drupal 8 “stripped off” all deprecated functionality, with all its dependencies upgraded.” “It's actually no bigger deal than a new Drupal 8 minor release.” Or: 'Drupal 9. While the upgrade path for Drupal 8 to Drupal 9 is smooth, it's not bulletproof. Heavily customized sites, or older Drupal 8 sites will need a little bit of love before being 100% ready to upgrade. We recommend a Drupal 9 readiness tune-up that can help get sites ready that includes: Core media updates and next-gen responsive images. Drupal 9 will ship with all of the features of Drupal 8 that the community has been updating and adding to since 2015. There will be a few changes, primarily with system requirements and third-party dependencies, in order to ensure platform security: Drupal 9. Ideally, Drupal 9 comes with Symphony 4 or Symphony 5. This will further reduce your time and effort when you upgrade from Drupal 8 to Drupal 9. The only check with Drupal 8 to Drupal 9 upgrade would be the removal of Deprecated codes. Codes which has a better alternative and cannot be used further are marked as deprecated by Drupal. Drupal 8.9, the final version of Drupal 8, will receive bug fixes and security coverage only until November 2021. Whereas the development and security updates of Drupal 9 will go much beyond that timeline. This means you can be content with updating your site with Drupal 8.9 until the end of 2021.

We work on a variety of platforms, including Drupal, and we’ve built a number of large Drupal sites over the years. Nearly all of those were on Drupal 7, such as our work for the Duke Tisch Brain Tumor Center, but now the time has come where our existing clients and new clients are needing to start on the migration path to upgrade to Drupal 8, or preferably Drupal 9.

Drupal 7 originally had an end of life in November 2021, but that has been extended to November 2022. That being said, the focus of Acquia’s future development will be on Drupal 9 and the migration process is rather laborious, so if you have the time and resources, it would be best to get started on your Drupal upgrade sooner rather than later.

For those of you who passed Kindergarten and are wondering why the previous paragraph skips the number 8, that’s a good question! There is a Drupal 8, and we even did a large Drupal 7 to Drupal 8 upgrade and migration before Drupal 9 was ready, but now with Drupal 9 out and ready for primetime we recommend skipping Drupal 8 and going straight to Drupal 9. To migrate from Drupal 7 to Drupal 8 or Drupal 9 are are similar amounts of work, and skipping straight to 9 gets you on the latest, stable version of Drupal. Additionally (and importantly!), Drupal 8 is already scheduled to lose official support in November 2021 due to Symfony 3’s end of life.

So, if you’ve lasted this long, we would recommend going straight to Drupal 9 and not worrying about Drupal 8, saving money, time, and effort. If you upgraded early and are on Drupal 8, the good news is that the upgrade process to 9 won’t be nearly as substantial as it was from 7, and it should go pretty smoothly for you. And in the event there’s some reason you need to go to 8, such as an internal mandate or you’re in the middle of the process already, your work will not be all for naught as many aspects of the future 8 to 9 upgrade will be easy.

Below is a quick overview of process and benefits of the Drupal 7 to Drupal 9 upgrade.

Drupal 7 to 9 Migration and Upgrade Process and Benefits

Drupal

It’s important to know upfront that the process of a Drupal upgrade from Drupal 7 to Drupal 8 or 9 is substantial and requires essentially a rebuild of the site. Existing Node infrastructure and content mapping can be used to help make the process more efficient, but the frontend code and underlying Drupal functionality/theming need to be reworked from scratch to align with new technologies in use and take advantage of new features.

For your own internal budgeting and planning, I would consider this like a full site rebuild rather than “just” an upgrade. If you had been considering a redesign, this migration is also an ideal time to do it since the frontend code of the site will be rewritten anyway.

Below is a high level overview of some things to keep in mind and what new elements to be aware of as you migrate. It will be a big change, especially for teams who have only worked in the older Drupal platforms, but know that there are sites across the world having to go through similar transitions. Find a good partner (let us know if you want to talk :) ), decide on whether you want to also redesign, build a plan with a thorough discovery phase, and get off to the races!

The theming, templating, and management has been reworked from scratch to be more modern and scalable. Twig has replaced PHPTemplate as the default templating engine, Composer is now used to add modules rather than Drush, and many contributed modules have now been rolled into Drupal core. These are all welcome changes to a more modern and maintainable platform, but require significant development. The templating engine transition means frontend templates need to be rebuilt, meaning recoding of the frontend designs and theming them onto Drupal.

This reason is exactly why it makes sense to couple the project with a redesign, if you’ve been thinking about it, because that frontend recoding will need to happen with new designs in the future. Why go through (and pay for!) the frontend process again in a year when you redesign, when you can just pay for it once, now, and get the design you want.

Once the frontend build is complete, there are also new elements to be considered with the Drupal setup side of things. Drupal 9 has brought a consolidation of modules and replacing some modules with new features available in Drupal 9. So, during the initial phases of the project, it’ll make sense to do an audit of functionality, discovering where you can retool features to use Drupal core instead of relying on Drupal modules. Incorporating a detailed discovery process upfront will help you unearth and plan around this from the start.

To get the content moved from your existing Drupal 7 database to the new Drupal 9 content database, we recommend building out a custom migration setup from the Migration module to move content. If you’re using Paragraphs to manage content on pages within Drupal 7 or Drupal 8, you’ll also need to plan a migration of that content into new Drupal 9 fields to ensure that you can keep the easy control over your page layout.

If your site is larger and had various API integrations, which has always been a popular reason to use Drupal, you’ll also need to pay particularly close attention to moving them over in the migration. Some may have relied on Modules that are no longer relevant or needed and can now be done with more native methods.

It’s a lot of work and encompasses a few different disciplines, including frontend and backend development. However, that work does not come without some serious benefits! While it’s required to upgrade to stay on a supported and secure Drupal version, there are also a number of benefits that will help rationalize the transition. Below is a brief overview of some high level benefits:

  • With the new templates being based on Symfony and Twig, it makes templates easier to maintain and develop, speeding up development and making it a less technically complex site to work on.
  • There will be less necessitated reliance on third-party modules, as new features are included in Core. Less modules to maintain makes for a more speedy, secure, and maintainable site, eliminating possible points of failure or insecurity and bloat that can weigh a site down.
  • Better frontend site performance with the new templating setup.
  • The Drupal admin dashboard will be much quicker and performant, and also include better responsive UX for mobile and tablet editing.

Perhaps the biggest benefit is the path this upgrade represents for the future. The roadmap for Drupal from 9 onward is to avoid a total rebuild and instead make incremental changes, meaning future upgrades should not necessitate a site rebuild, and be more similar to WordPress version upgrades that can be done quickly and reliably.

Conclusion

While the mandated upgrade timeline for Drupal 9 has been delayed, there are myriad benefits to be reaped by starting the process sooner rather than later. Also, with it being such a substantial undertaking, you'll be saving yourself stress of running up against the clock. And if you had been considering a redesign, getting started early will allow you to wrap that process into the upgrade, and you can essentially fund it by saving yourself the future money associated with a second frontend recode!

While it's a daunting undertaking, we feel it should also be a fun and empowering project, as you get the opportunity to take your website to the next level. Let us know if you have any questions about the process and please feel free to get in touch if you need help with your Drupal upgrade!

Buzz around the Drupal 9 release is making everyone on Drupal 8 or 7 sites asking questions about what the upgrade means for them, and how to prepare. As a Drupal development company that has experienced every Drupal launch since versions 6, this ain't our first rodeo. We're here to help.

Drupal 9 Faqs What you need to know

  • Drupal 9 will be release June 3, 2020. But then what?

    Alongside the Drupal 9 release on June 3, 2020, there will also be a minor Drupal 8 long-term support release. After that, Drupal 9 will be ready to download, setup and start building!

    Upgrade from an existing Drupal 8.9 site
  • Not a ton, tbh. But it's more about the long game.

    Drupal 9 is not a huge leap forward in terms of features. However, what it does do is clean out a lot of legacy code and set a firmer foundation for future Drupal 9 features including layout, admin, and update enhancements.

    Improve Layout features
  • Nah, dawg. Unfortunately, there is no Drupal 7 to Drupal 9 upgrade.

    Similar to the jump between Drupal 8 and 9, the code base has changed too dramatically for an upgrade from Drupal 7. But where there is crisis there is opportunity in the form of a fresh start and content migration.

    Full rebuild required

Drupal 8 9 Difference

LESS CODE

Drupal 8 Vs 9

Drupal 9 will see a deprecation of a lot of Drupal 8 code that is no longer needed, improving efficiency.

Long-Term Security

As security updates for Drupal 8 begin to wane, getting on Drupal 9 will ensure your site is ready for future updates through 2021.

Core Media Update

If your Drupal 8 site is a little older, you may not be equipped with the latest and greatest responsive media functionality.

Coming in July, 2020, Drupal 9 will be a good choice for new sites assuming the following:

  • You're building a fresh Drupal site (ex: coming from D7 or another CMS)
  • You have a limited need for numerous contributed modules (aka using out of the box Drupal)

However, for some sites it might make sense to stick with Drupal 8 for a while if:

  • You're already on Drupal 8 and your site uses a lot of contributed modules (they'll need some time to catch up)
  • You anticipate needing a lot of modules immediately. Best to build on Drupal 8 then upgrade later

Drupal 8 Drush 9

Drupal 9 Readiness — Is your D8 site primed?

Upgrade Drupal 8 To Drupal 9

While the upgrade path for Drupal 8 to Drupal 9 is smooth, it's not bulletproof. Heavily customized sites, or older Drupal 8 sites will need a little bit of love before being 100% ready to upgrade.

We recommend a Drupal 9 readiness tune-up that can help get sites ready that includes:

  • Core media updates and next-gen responsive images

  • Compatibility scan to ID and fix code issues

  • Update to Drupal 9!

Drupal Experts Since Version 5

Drupal 8 Drush 9 Custom Command

As Acquia Partners and Drupal developers with over 10+ years of experience with Drupal, we've been through all the major versions and Drupal 9 will be no different. If you're looking to get the most out of your Drupal investment, or get up to speed with the latest and great Drupal has to offer, we can help.