task: #3635916 Update Node.js to >= 24.0 and Yarn to 4.18.1

Moves the Node.js pins on 2.0.x to 24, the floor Drupal core main declares in core/package.json. Node.js 20 reached end of life on 30 April 2026.

Issue: https://www.drupal.org/i/3635916

  • package.json: engines node >= 24.0.
  • Yarn 4.18.1: packageManager yarn@4.18.1, engines yarn >= 4.18.1, the house .yarnrc.yml.
  • .gitlab-ci.yml: node:24 images, NodeSource setup_24.x for the webship-js job, YARN_ENABLE_IMMUTABLE_INSTALLS false.
  • .gitlab-ci.yml: .composer-base reads .yarnrc.core.yml, so Drupal core's Yarn skips the project .yarnrc.yml.
  • test scripts call cucumber.js directly: Yarn 4 does not expose the cucumber-js bin of a dependency.
  • Remove yarn.lock and ignore JavaScript lockfiles.
  • DDEV and Upsun: not present.

Checked on node:24 with Yarn 4.18.1 and no lockfile: install and the CI ESLint command pass, and the dry run parses 15 scenarios. MR pipeline 1035090 is red on webship-js-test only.

Remaining tasks

  • webship-js-test stops installing: display_builder 1.0.0-beta9 (22 October) made buildables implement AccessibleInterface::access(), and webdashboard 1.0.6, its latest release, does not (DashboardBuildable). 2.0.x was last green on 1 October, with beta8 and the same webdashboard 1.0.6. Fixed in #3635967, webdashboard!17 (merged); this MR goes green once that is merged and released.

AI-Generated: Yes

Checkpoints:

  • File an issue
  • Addition/Change/Update/Fix
  • Testing to ensure no regression
  • Automated unit testing coverage
  • Automated functional testing coverage
  • UX/UI designer responsibilities
  • Readability
  • Accessibility
  • Performance
  • Security
  • Developer Documentation
  • User Guide Documentation
  • Reviewed by human
  • Code review by maintainers
  • Full testing and approval
  • Credit contributors
  • Review with the product owner
  • Release notes snippet
  • Release
Edited by Rajab Natshah

Merge request reports

Loading
Loading