Add a conflict on drush 9 (allow 8 and 10)

Created on 8 April 2020, about 4 years ago
Updated 29 January 2024, 5 months ago

Problem/Motivation

Drush 9 has no maintainer, and is scheduled to go EOL in May 2020. The current version of Drush is 10.2.2; usage of Drush 9 is deprecated.

Drupal 9.0 is defined to be the same as Drupal 8.9, but with deprecations removed. Drush is external to Drupal, but Drupal has historically included a "conflict" statement in its composer.json to help users avoid using old incompatible versions of Drush (and subsequently seeking support requests). Drush already does its own version compatibility checking against the minimum version of Drupal it supports, but it is not possible for Drush to place a limit on the *maximum* version of Drupal supported, as it is not known at the time a given version of Drush is released when exactly it will become incompatible with Drupal.

Proposed resolution

Compatibility with Drush 8 should be preserved. Drush 8 is only lightly maintained, but it remains an important tool for users who are not yet using Composer (required with Drush 10+). The minimum supported version of Drush 8 should be bumped up to 8.3.2, though, to ensure that users have updated to a version that includes the Drupal 9 compatibility fixes introduced around DrupalCon Amsterdam. (n.b. the conflict statement in Drupal's composer.json does not affect global installs of Drush 8.)

The minimum supported version of Drush 10 should be bumped up to 10.2.2, the most current version. Older versions of Drush 10 may also work with Drupal 9, but it is not worthwhile to determine exactly which versions work, since there is no impediment preventing users already on a 10.x series from upgrading to the latest version.

A conflict with Drush 9 should be added. Users should stop using deprecated versions of Drush when they upgrade to Drupal 9. Users who are still dependent upon deprecated functionality in Drush 9 (removed in Drush 10) may remain on Drupal 8.9 until their Drush commands are updated. Ideally this will be done sooner rather than later, though, as Drush 9 is soon to be EOL, as previously mentioned.

Remaining tasks

Changelog entry.

User interface changes

None.

API changes

None in Drupal. Some Drush 8 APIs, still present in Drush 9, were removed in Drush 10.

Data model changes

None.

Release notes snippet

A "conflict" statement was added to Drupal 9's composer.json file prohibiting the use of Drush 9, which will reach EOL in May 2020. Users should update their Drush command files to work with Drush 10.

Drush 8 is still supported, but its use is deprecated in Drupal 9.

Original Report

based on a short discussion with @berdir and @alexpott, we should raise the min. version support for Drush to 9.7.2 within Drupal 9.0.x.
The support for Drush 8 AND Drush 9 (up to version 9.7.1) will be dropped within the release Drupal 9.

BR
Sebastian

πŸ“Œ Task
Status

Closed: outdated

Version

9.5

Component
ComposerΒ  β†’

Last updated about 23 hours ago

No maintainer
Created by

πŸ‡©πŸ‡ͺGermany sgurlt

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

Production build 0.69.0 2024