By Josh Koenig December 02, 2020
With the release of Drupal 9.1, learn how Pantheon continues to support modern PHP development practices — with the newfound availability of Drupal 9.1 with Integrated Composer.
Today marks the release of Drupal 9.1, the first new feature release for the web’s favorite enterprise-grade, open-source CMS. It also marks the next step in Pantheon’s evolution for supporting modern PHP development practices, with the availability of Drupal 9.1 with new Integrated Composer workflow.
The Drupal project has used Composer for its own internal development since the early days of Drupal 8, but in the years since then, the community has gradually standardized around the best workflow for using Composer to build specific websites with Drupal, which is a major step forward. The WordPress community isn’t using Composer broadly yet, but some popular frameworks, like Bedrock, have adopted Composer and highlight that it “...will make development more reliable, help with team collaboration, and it helps maintain a better Git repository.”
We expect this approach to become the norm for professional PHP development and deployment going forward. The expanding universe of available libraries will push developers inevitably towards package management, and it’s already standard for most serverless systems to perform a smart integrated build step. We’re happy to bring this capability to our own Serverless CMS platform.
Managing and Deploying Dependencies With Composer
This is a whole new way to develop on Pantheon. It’s still based on version control (of course), but rather than committing the entire core CMS codebase plus any open-source contributed elements, you develop with a “lean” repository that only needs to contain a list of open-source dependencies, along with your custom site-specific code or design assets. That’s a lot less code to manage.
When you deploy a site using Integrated Composer, Pantheon runs a build step for you, fetching dependencies as specified in your Composer lock file to assemble a complete codebase.
The rest of our Structured Agile Workflow remains unchanged. Once dependencies are built, they can be swiftly deployed to the Test environment for a final review, then on to the Live production environment where they are immutable and can scale smoothly.
One-Click Composer Updates
We heard repeatedly from customers adopting Composer on their own that running "composer update" was downright painful, and they missed the ease of Pantheon’s one-click updates. With Integrated Composer, the task of updating dependencies can be performed by nearly anyone on your team, not just senior devs. For a site managed with Composer, one-click updates keep your entire site updated, not just core.
GitOps + Website Portfolio = WebOps Nirvana
We’ve designed Integrated Composer to fit in smoothly with our unique Custom Upstreams capability, which meets the challenge of managing hundreds or even thousands of sites. When working with Composer and Custom Upstreams, “downstream” sites can still be customized with their own site-specific dependencies.
This approach allows central development or management teams to take advantage of Composer for managing the common elements of their CMS distributions or underlying libraries, while also enabling dev teams or agencies building on top of those distributions to do the same. This structure creates a clear division of responsibilities and makes it much easier to audit what is unique to a site, versus what’s included via the Custom Upstream.
Importantly, downstream site development isn’t required to be done via Composer when working in this manner. Individual teams can still develop the old fashioned way, if preferred. We know it's important to enable larger organizations to modernize their development practices in an agile way —instead of forcing everyone to change all at once.
All The Modern Conveniences
We’re also happy to announce that our default start state for Drupal 9 projects are surrounded by spruced-up fixtures:
PHP 7.4, featuring ever-improving performance as well as powerful new language features
Drush 10 speeds up the time to download Pantheon site aliases
MariaDB 10.4, which is rolling out platform-wide early in 2021 but is the default today for all new sites spun up with Drupal 9
This release comes on top of our recent platform-wide rollout of Compute Optimized Environments, which delivered improved core CPU performance, as well as cleaner container layouts and tighter security.
There’s never been a better platform for building the internet using Drupal or WordPress with Composer. You can spin up a project now by following these instructions. Your feedback on the new tooling is greatly appreciated as we anticipate making Integrated Composer the default spin-up path early next year for all new Drupal sites.
You might also like:
- Launch the latest Drupal on the Pantheon WebOps Platform
- Go straight to spinning up a new Drupal 9 site with Integrated Composer
- How Composer Helps the Whole Team
- Writing Composer Scripts
Topics: Development, Drupal