Update templates so 11.0 is the default/current branch
Problem/Motivation
Make Drupal 11 be the default/current option when running tests.
The MR is ready but we will wait a few _weeks_ until we make the change. See the rest of the description and initial comments for more details
Todo - Technical tasks
-
✅ Update variables so D11 is current and D10 is previous major -
✅ Decide if.amend-core-requirements-drupal-11is needed and where. Yes, but deprecate this name and replace with a genericamend-core-requirements-next-major -
✅ #3447792: Add _TARGET_PHP_IMAGE_VARIANT to cater for newer sqlite versions for Drupal 11 -
✅ #3414505: Allow all sub-modules to be compatible with next_major -
✅ All downstream pipelines should be green with the new variables. -
✅ Step 2 blocker: #3458238: CI installs wrong Drupal version (merged) -
✅ Step 2 blocker: #3462681: Add W3C compliant JS testing (merged)
Todo - Actions
-
✅ Publish a DA blog post about the big full change-over (suggested by @larowlan - https://drupal.slack.com/archives/CGKLP028K/p1722803135150269?thread_ts=1722796036.303819&cid=CGKLP028K) -
✅ A draft for the blog post can be read in draft-announcement.md -
✅ The blog post was published 21 August -
✅ Announce this to contrib via slack as well, once the blog post is published -
✅ Initially changeOPT_IN_TEST_NEXT_MAJORdefault to 1, set 'Composer Next Major' to be allowed to fail (and no other changes) and release 1.5.6, so that Contrib automatically start testing at D11 -
✅ Step 1 (MR246) was merged on 26 August, and1.5.6released anddefault-refupdated -
✅ Other issues were found and fixed, and the latest release with D10 as "current" is now1.5.9 -
✅ Step 2 - on7th8th October merge MR242 but only in 'main' ref, no update to 'default-ref'. Release1.6.0 -
✅ Some more issues found and fixed, improved support documentation.1.6.3is the latest tag, but default-ref is still1.5.10which will be the last "D10 is current" tag -
✅ Step 3 - on14th15th October update the default ref to match1.6.3so that this change goes to all Contrib
Keeping the original description for context:
I brought this up a while ago in a slack thread, posting it here to make it a bit more official as a request.
While contrib is catching up quite nicely to D11, lots are still not compatible with D11 and many of my projects that are rely on workarounds to be able to run D11 tests, lenient, using sed to force development dependencies to be D11 compatible and so on.
Arguments:
* Switching to 11.0 as current version will interrupt contribution workflows as pipelines will fail for those projects that aren't compatible yet and also those that rely on "next major" job customizations to make it work. Some projects will not be able to be D11 compatible for an extended timeframe even, for example simplesamlphp_auth, due to dependency conflicts with the simplesamlphp and symfony projects.
* There won't be a next next major for quite some time, we don't need to free up the current next major jobs for that. not 100% sure about implications on next minor.
* The templates aren't really ready yet to account for the fact that some combinations won't be valid, like there won't be a previous minor with 11.0: #3426289: Cater for empty next/previous minor/major when it's not possible
* Drupal 10 is an LTS release, it will be around for quite some time and most modules will want to remain compatible with that. That's more a long-term thing, but testing on D10 will ensure that new changes don't accidentally introduce dependencies on new D11 features. Accidentally breaking forward compatibility seems less likely IMHO.
Steps to reproduce
Proposed resolution
Either just postpone the switch for a few weeks at least to give contrib time to catch up or alternatively consider making the switch to D11 opt-in, with a variable if that's possible or a different branch. I suppose that's possible disabling current testing and enable previous major, but that's more of an opt-out than an opt-in.