Problem/Motivation

We currently test Drupal core updates with a database dump produced all the way back during the 8.0.x rc phase.

For Drupal 9 we could pick a cut off point, Drupal 8.7? 8.8? (probably not 8.9 but maybe?) And require that all Drupal 8 installs are updated to this point before updating to Drupal 9. This gives us a much smaller surface area to test and support. We could also remove old updates prior to that point and their accompanying tests.

Patch can only land in 9.x but the cut-off point can be decided now.

Note we could also consider postponing this change to 9.2 - one of the first patches committed to Drupal 8 was to remove the 7.x updates and tests, and it resulted in critical upgrade path issues stalling for months. We've solved some of the issues that led to this since but 9.2 might still be a good choice here.

Proposed resolution

Remaining tasks

User interface changes

API changes

Data model changes

Release notes snippet

Comments

catch created an issue. See original summary.

berdir’s picture

#2942096: [policy, no patch] Remove old update hooks prior to each major version (Drupal 10 and later)

> Patch can only land in 9.x

Wondering why you think that's the case? I don't think BC implies that you can update from 8.0 to 8.8 directly? And as we discussed there, it's somewhat unrealistic that sites with a reasonable amount of contrib modules can do that, for example because contrib modules often aren't as strict as core and things break.

Mixologic’s picture

CORE_MINIMUM_SCHEMA_VERSION is used for contrib update hooks as well.

If we intend to allow drupal 8 modules that are not using deprecations to work with drupal 9, then we'll have to figure out what to do in the case of a d8 module that is d9 compatible that has update hooks in it.

berdir’s picture

I think what this should do is adding a hook_update_last_removed() to each module that has/had update functions that are being removed? At least that's how it works per-module. Would need to be done in quite a few modules of course, but only those who actually have update functions.

catch’s picture

xjm’s picture