Issue #3614275: Bring the 4.0.0 CHANGELOG entry up to date
Brings the 4.0.0 CHANGELOG entry up to date. Fixes #3614275.
Why
The entry was written partway through the Drupal 12 work and never revisited. It was dated 2026-06-27 — when the branch was drafted, not when it shipped — and omitted six commits that landed afterwards, including a security-relevant configuration fix and the correction that made CI test the right version of Drupal.
What is now recorded that was not
- #3614068 — the image component settings were never read.
config/installshippedlayout_builder_kit.settingswith flat keys while the settings form and both image-bearing components readlayout_builder_kit.image_componentwith nested keys, so a fresh install had no upload folder and no file-extension validation. Includeslayout_builder_kit_update_10001()to migrate administrator-saved values. - #3531242 — the
: voidreturn type onsubmitConfigurationForm(). - Private service properties widened to protected.
DependencySerializationTrait::__sleep()callsget_object_vars()from the trait's own scope, so private properties on a subclass are invisible to it and get serialized raw. - The GitLab CI migration, and that CI had been silently building Drupal 11 for this Drupal-12-only branch until it was pinned on the composer job.
- The functional test rename — it ended in
Tests, which PHPUnit's*Test.phpdiscovery never collects, so it had never run.
Structure
Reorganised into Drupal 12 compatibility, Fixes and Tests and CI rather than one flat list, since the entry now covers three distinct kinds of change. The "Note on HTML output differences when upgrading a site to Drupal 12" section is unchanged — it is still correct and is the most useful part of the entry for anyone planning an upgrade.
Housekeeping
insteadof, Nightwatch and updatedb added to .cspell.json; all three are introduced by the new text and the cspell job would otherwise fail. Verified: cspell passes on CHANGELOG.txt with the updated dictionary. Lines wrap at 79 characters and the heading underline matches, consistent with the rest of the file. No earlier entry is touched.
Before merging
The date is set to today and should be corrected to the real release date when 4.0.0 is tagged. Per the issue, do not close #3614275 until that happens — the entry describes a release that does not exist yet.
Merges here fast-forward, so Fixes #3614275 will not auto-close.