Keeping your Drupal development tools up-to-date

Published December 29, 2022

2023 text with tools imageMost folks in the community who are responsible for maintainting Drupal sites know that it’s important to keep them up-to-date with bug fix and (especially) security updates for both Drupal core and contributed modules. But what about the tools we use every day to build and maintain all those Drupal sites? 

As a general rule, I don't recommend updating things when you are near a task deadline, so as a new year begins, this might be a good time to take a look at your development tools and get things updated. This process can lead to improved performance, add new functionality, and maybe even keep your development environment more secure. Of course you need to keep in mind that updating things could introduce new bugs, so be methodical and make sure you understand the updates you apply.

Local development environment

If you use a Docker-based solution (as most of us in the Drupal community appear to be doing), not only should you be considering keeping it up-to-date (especially if you're using DDEV, Lando, or Docksal,) but also research and consider updating their dependencies, such as Docker Desktop or Colima.

I recently updated Colima to the latest version and found an inconvenient issue for those like me upgrading, but luckily was able to figure out an easy workaround with the help of Randy Fay. I was very fortunate that I chose a quiet time to update things where it was no big deal if things weren't working for a day or two.

Docker-based local development environments like DDEV, Lando, and Docksal include commonly-used Drupal development tools like Composer, so by keeping your LDE up-to-date, you'll be sure to be using a recent version of any tools they include. Refer to your LDE's documentation (and release notes) for more information. 

Integrated development environment

Most of us in the Drupal community utilize either PhpStorm or Visual Studio Code as our IDE. Both of these tools have regular releases and introduce new features, so be sure to keep these up-to-date. Furthermore, don't forget about all the extensions and plugins that provide additional functionality. 

In PhpStorm, just go to the Plugins section of Preferences to see which need updating. 

PhpStorm plugin update screenshot

In Visual Studio Code, the Extensions sidebar will similarly display which of your installed extensions have available updates. Visual Studio Code also has a preference to automatically update extensions each time it is restarted.

visual studio code extensions automatic update screenshot

Non-module Drupal project dependencies

While Drupal's Available Updates report is something that most developers are familiar with, a typical Drupal project has other dependencies that don't appear on that report. This includes dependencies such as Drush, PhpStan, and various Composer plugins. It is always a good idea to check for updates using composer outdated -–direct and then updating any outdated dependencies. 

Code quality tools

Finally, if you install code quality tools globally, then now is also a good time to check for, and apply, updates. For example, I generally install Drupal Coder globally (not as part of each Drupal project) - therefore, a few times a year I make a point to update it in order to keep my code quality top-notch.

Operating system

Going back to the top level (or bottom, depending on your perspective) of your development tools: The operating system of your computer. I normally recommend that folks do not immediately update their operating system when a new version is released - rather wait a month or two to ensure that any potential nasty issues are ferreted out and solved by others who are more interested in living on the edge. 

Tending to your development tools will keep you at the cutting edge of Drupal development, help to ensure that you are catching all deprecations, and keep your code quality pristine. 

DrupalEasy's Professional Module Development course teaches how to properly setup a professional Drupal development environment, including both PhpStorm and Visual Studio Code, PhpStan, and Drupal Coder.

Add new comment

Sign up to receive email notifications of whenever we publish a new blog post or quicktip!