Drupal 9 is coming (Faster than you think)

Posted on: Tue, 01/01/2019 - 16:29 By: mikelutz

It's hard to believe, isn't it?  Many of us feel like we just finished the learning curve from going to Drupal 7 to Drupal 8. We developers may feel like we finally have our head wrapped around symfony and the new code structure. Our clients have become accustomed to the new interfaces, and the media handling we've been promising is finally starting to become useable. And yet, here we are, time to look forward to the next big thing, Drupal 9.

It has recently been announced here, that the expected release date for Drupal 9 is June 3, 2020.  18 months, at the time of this writing.  Follow that with the EOL of Drupal 7 and 8 in late 2021, and it's time to start thinking about what Drupal 9 means.

For core developers, it is really crunch time.  If everything goes according to plan, the last opportunity to deprecate apis for removal in Drupal 9 will be with 8.8-alpha1, which is due, October of 2019. October of THIS YEAR... This mean whatever big thing you want to add in Drupal 9 has to be set up and ready to go in 9 short months. In the migrate subsystem, we have a lot of goals for Drupal 9, including deprecation and removal to a contrib module of the Drupal 6 migration path, removal of the MigrateExecutable class, making use of generators as migration sources, and more, most of which needs to be readied by October.

For module maintainers, it is getting close to crunch time. By October, you should have a complete picture of which deprecated apis will be removed for Drupal 9, and you should begin (if you haven't already) making sure your module code doesn't use these deprecated code paths.  A follow up post will be discussing the drupal.org tooling that you can use to test your module code against these deprecated apis.

For site builders, hopefully this isn't a big deal. If the modules you use keep up with removing the deprecated api usage, then your upgrade path to Drupal 9 should be easy.  If however, you use modules that are no longer maintained, use deprecated code paths and may not be updated for Drupal 9, it might be time to start looking for alternative modules that will maintain compatibility.

This blog will have several follow up articles focused on site builders and module developers and how you can best prepare for the transition to Drupal 9, and the best practices you can use to maintain your module or site throughout the transition.