Making my modules Drupal 9 ready

Making my modules Drupal 9 ready

At the moment I'm a maintainer or co-maintainer of 22 Drupal projects. Only two of them are Drupal 7 modules, the rest are Drupal 8 modules. My plan for those 20 modules is to make them Drupal 9 ready by June 3, 2020, which is the date when Drupal 9 should be released.

I don't want to just make them Drupal 9 ready, I also want to add as many tests as I could. At the time I wrote most of my modules I didn't know much about writing PHPUnit tests. Now, when I'm more comfortable writing tests I want to add tests when that makes sense. Adding tests will ensure the stability of my modules in the future, and will also make adding new features much easier.

I started this journey several weeks ago, so some of my modules are already Drupal 9 ready. I'm adding a notice to let users know that the module is Drupal 9 ready.

Goran Nikolovski Drupal 9 - Config Delete
Goran Nikolovski Drupal 9 - Config Delete

In this blog post, I will keep track of my progress. Here's the list of my modules which are compatible with Drupal 9:

Config Delete and Twig Render This modules have full test coverage, while CKEditor Format Buttons which is my newest module doesn't have any tests because it is a really simple module.

I still haven't added the new 'core_version_requirement' key in info.yml files, but I'll do that in the following days. The 'core_version_requirement' key allows modules, themes, and also profiles to specify that they are compatible with multiple major versions of Drupal core. You can read more about the key in the change record.

Updated: November 13, 2019.

Config Delete, Twig Render This and CKEditor Format Buttons modules now have the new 'core_version_requirement' key in their info.yml files.

Updated: December 11, 2019.

Cyrillic to Latin and Projects Stats modules are now Drupal 9 ready.

Updated: December 17, 2019.

The dev version of Hierarchical Taxonomy Menu module is now Drupal 9 ready. I'm working on adding tests before releasing a new stable version.

Today I committed a set of tests for basic configuration.


You can also make your site Drupal 9 ready.

If I can be of assistance, please do not hesitate to contact me.

About the author

Goran Nikolovski is a highly experienced Drupal developer with an extensive skill set that includes PHP, MySQL, HTML, CSS and Javascript. He has experience with large Drupal sites and Drupal Commerce 2.x integration, and he is author of several Drupal modules.