Problem/Motivation

The 2.0.x branch currently declares support for Drupal 9, Drupal 10, and Drupal 11, without an explicit PHP requirement:
core_version_requirement: ^9 || ^10 || ^11

"require": {
  "drupal/core": "^9 || ^10 || ^11"
}

Drupal 9 reached end of life on November 1, 2023, and PHP 7.4 reached end of life on November 28, 2022. The most recent 2.0.x release, 2.0.4, was released on January 17, 2025.

Unreleased changes on 2.0.x use:

  • PHP attributes for condition plugin metadata, supported by the core condition plugin manager in Drupal 10.3 and later.
  • PHP typed class constants, which require PHP 8.3.
  • Additional native property, parameter, and return types.

The declared requirements therefore no longer accurately describe the unreleased branch.

Proposed resolution

Update the module’s requirements for the 2.0.5 release to:

core_version_requirement: ^10.3 || ^11

Update composer.json consistently:

"require": {
  "php": ">=8.3",
  "drupal/core": "^10.3 || ^11"
}

This allows Composer to keep Drupal 9, Drupal 10.0–10.2, and PHP versions below 8.3 on 2.0.4 while allowing supported installations to receive 2.0.5.

Compatibility considerations

This intentionally drops support for:

  • Drupal 9
  • Drupal 10.0 – 10.2
  • PHP versions below 8.3

Although changing platform requirements is normally treated as a compatibility change under semantic versioning, these platforms are no longer supported upstream. The change is intended to make the package metadata accurately reflect the code and prevent incompatible installations from receiving the release.

No configuration update or database update is required.

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

joelpittet created an issue. See original summary.

joelpittet’s picture

Status: Active » Needs review
damienmckenna’s picture

Status: Needs review » Reviewed & tested by the community

Other than sorting the “require” lines alphabetically, this gets a +1 from me.

joelpittet’s picture

Thanks @damienmckenna that sorting is just my style, I like to see the PHP at the top because it decides what will happen with everything below it, but in this case it's short and totally doesn't matter. 😅 So I will make that change and merge it.

People can chime in if they have strong feelings here(around the bumps not the sorting 😜), I won't make the release right away... but soon after I address some other Major/minor commits are sorted out on this branch but this is the big one!

joelpittet’s picture

Status: Reviewed & tested by the community » Fixed

Merge 🚂 has left the station!

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

  • joelpittet committed 7bcfaf1f on 2.0.x
    task: #3612073 Raise minimum requirements to Drupal 10.3 and PHP 8.3 for...

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.