Update JavaScript dependencies for Drupal 11.0-rc

Created on 9 July 2024, 2 months ago
Updated 24 July 2024, about 2 months ago

Problem/Motivation

Update minor and patch releases of JavaScript dependencies for 11.0-rc

- Major release are handled in child issues.
- Both jquery and jquery-ui have their own issue already for getting to a stable release: 📌 Update to a stable version of jQuery 4 Active and 📌 Update to a stable version of jQuery UI 1.14.0 Active
-

Bah, we can't update stylelint because of stylelint-formatter-gitlab: https://gitlab.com/leon0399/stylelint-formatter-gitlab/-/issues/3

@longwave in #3439522-16: Update JavaScript dependencies for Drupal 10.3/11.0

Steps to reproduce

$ yarn upgrade-interactive

Proposed resolution

Remaining tasks

User interface changes

API changes

Data model changes

Release notes snippet

📌 Task
Status

Fixed

Version

11.0 🔥

Component
Javascript 

Last updated 1 day ago

Created by

🇳🇱Netherlands Spokje

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

Merge Requests

Comments & Activities

  • Issue created by @Spokje
  • 🇳🇱Netherlands Spokje

    Current situation:

    $ yarn upgrade-interactive
    
    ? Pick the packages you want to upgrade.          Current          Range            Latest
    
       @ckeditor/ckeditor5-alignment --------------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-autoformat -------------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-basic-styles ------------ ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-block-quote ------------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-code-block -------------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-editor-classic ---------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-editor-decoupled -------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-essentials -------------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-heading ----------------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-horizontal-line --------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-html-support ------------ ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-image ------------------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-indent ------------------ ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-language ---------------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-link -------------------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-list -------------------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-paste-from-office ------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-remove-format ----------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-show-blocks ------------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-source-editing ---------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-special-characters ------ ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-style ------------------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @ckeditor/ckeditor5-table ------------------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       @floating-ui/dom ---------------------------- ◉ ^1.6.5 ------- ◯ ^1.6.7 -------
       ckeditor5 ----------------------------------- ◉ ~41.3.1 ------                  ◯ ~42.0.0 ------
       cspell -------------------------------------- ◉ ^8.8.1 ------- ◯ ^8.10.4 ------
       eslint -------------------------------------- ◉ ^8.57.0 ------                  ◯ ^9.6.0 -------
       glob ---------------------------------------- ◉ 10.3.14 ------ ◯ 10.4.4 ------- ◯ 11.0.0 -------
       jquery-ui ----------------------------------- ◉ ^1.14.0-beta.2                  ◯ ^1.13.3 ------
       jquery -------------------------------------- ◉ 4.0.0-beta ---                  ◯ 3.7.1 --------
       jsdom --------------------------------------- ◉ ^24.0.0 ------ ◯ ^24.1.0 ------
       nightwatch ---------------------------------- ◉ 2.4.2 -------- ◯ 2.6.25 ------- ◯ 3.6.3 --------
       postcss-preset-env -------------------------- ◉ ^9.5.11 ------ ◯ ^9.6.0 -------
       postcss ------------------------------------- ◉ ^8.4.38 ------ ◯ ^8.4.39 ------
       prettier ------------------------------------ ◉ ^3.2.5 ------- ◯ ^3.3.2 -------
       stylelint-config-standard ------------------- ◉ ^34.0.0 ------                  ◯ ^36.0.1 ------
       stylelint-prettier -------------------------- ◉ ^4.1.0 -------                  ◯ ^5.0.0 -------
       stylelint ----------------------------------- ◉ ^15.11.0 -----                  ◯ ^16.6.1 ------
       terser -------------------------------------- ◉ ^5.31.0 ------ ◯ ^5.31.1 ------
       webpack ------------------------------------- ◉ ^5.91.0 ------ ◯ ^5.92.1 ------
    
  • Assigned to Spokje
  • 🇳🇱Netherlands Spokje

    glob is doing a major jump from 10.3.14 to 11.0.0, which should give it a child issue, however, in a test-MR I prepared earlier, there are no test-failures when upping it.
    (See https://git.drupalcode.org/project/drupal/-/merge_requests/8713)

    I therefore think we can roll that upgrade into this issue.

  • 🇳🇱Netherlands Spokje

    nightwatch breaks tests (won't say per usual, whoops I just did) when doing the major upgrade (https://git.drupalcode.org/project/drupal/-/merge_requests/8714) as well as the minor upgrade (https://git.drupalcode.org/project/drupal/-/merge_requests/8715).

    Since I'm not exactly sure what the status is on this with regards to the (great) lullabot/* improvements lately, I need some guidance if we want to try and do this update for drupal 11 or not.

    Not creating a child issue for that until that happens.

  • 🇳🇱Netherlands Spokje

    Regarding:
    -

    Bah, we can't update stylelint because of stylelint-formatter-gitlab: https://gitlab.com/leon0399/stylelint-formatter-gitlab/-/issues/3

    @longwave in #3439522-16: Update JavaScript dependencies for Drupal 10.3/11.0

    Seems like stylelint-formatter-gitlab is basically abandoned.

    Since we shouldn't be held back by test-formatting-tools to upgrade our tooling, we might want to look for an alternative.
    This might be one, although not a composer, but rather a JS dependency: https://github.com/tijsverkoyen/stylelint-formatter-gitlab-code-quality-....

    Unsure how to proceed with this.

  • Merge request !8716Js dependencies update → (Closed) created by Spokje
  • 🇳🇱Netherlands Spokje

    With all of the above mentioned dependencies taken out, we're left with:

    @floating-ui/dom ---^1.6.5  => ^1.6.7 
    cspell -------------^8.8.1  => ^8.10.4
    glob ---------------10.3.14 => 11.0.0 
    jsdom --------------^24.0.0 => ^24.1.0
    postcss-preset-env -^9.5.11 => ^9.6.0 
    postcss ------------^8.4.38 => ^8.4.39
    prettier -----------^3.2.5  => ^3.3.2 
    terser -------------^5.31.0 => ^5.31.1
    webpack ------------^5.91.0 => ^5.92.1
    

    Let's see how Testbot likes them apples!

  • Pipeline finished with Success
    2 months ago
    Total: 540s
    #219573
  • 🇳🇱Netherlands Spokje

    Apples are green, but since we have a cspell-bump, let's also do a $ yarn spellcheck:make-dict.

  • Pipeline finished with Success
    2 months ago
    Total: 575s
    #219593
  • Status changed to Needs review 2 months ago
  • 🇳🇱Netherlands Spokje

    Well, that's all (I can do for this issue) folks!

  • Issue was unassigned.
  • 🇳🇱Netherlands Spokje

    *sigh*

  • Status changed to RTBC 2 months ago
  • 🇬🇧United Kingdom longwave UK

    Same result locally for the same upgrades. Only glob is a major update and that is because they have dropped support for node 18. The other minor/patch level releases don't make any difference to our builds so this looks good to me.

  • Status changed to Needs review 2 months ago
  • 🇬🇧United Kingdom longwave UK

    Hmm, but we still have

      "engines": {
        "yarn": ">= 4.1.1",
        "node": ">= 18.0"
      },
    

    in which case why do we have glob 11 which only supports node 20?

  • 🇳🇱Netherlands Spokje

    in which case why do we have glob 11 which only supports node 20?

    Not sure but the whole MR was created using:

    $ nvm use lts/hydrogen
    Now using node v18.20.3 (npm v10.8.1)
    

    Maybe glob isn't enforcing its own restrictions? *shrug*

  • 🇬🇧United Kingdom longwave UK
  • 🇳🇱Netherlands Spokje

    Fun stuff:

    Apparently, if we don't add a core/.npmrc file with engine-strict=true, the restrictions in core/package.json "engines" are happily ignored.
    https://stackoverflow.com/a/50798589

  • Status changed to Needs work about 2 months ago
  • The Needs Review Queue Bot tested this issue. It no longer applies to Drupal core. Therefore, this issue status is now "Needs work".

    This does not mean that the patch necessarily needs to be re-rolled or the MR rebased. Read the Issue Summary, the issue tags and the latest discussion here to determine what needs to be done.

    Consult the Drupal Contributor Guide to find step-by-step guides for working with issues.

  • 🇬🇧United Kingdom catch

    📌 Require Node.js 20 for Drupal 11 Active is in which hopefully simplifies things here.

  • Status changed to RTBC about 2 months ago
  • 🇬🇧United Kingdom longwave UK

    RTBC given we now require Node 20 and that was the only thing holding this up.

  • Status changed to Needs work about 2 months ago
  • 🇳🇱Netherlands Spokje

    Sadly this needs a reroll after the update of CKEditor landed

  • Status changed to Needs review about 2 months ago
  • 🇬🇧United Kingdom longwave UK

    Rerolled.

  • Pipeline finished with Success
    about 2 months ago
    #220898
  • Status changed to RTBC about 2 months ago
  • 🇳🇱Netherlands Spokje

    After watching a server die in the first test-run:

    Drupal\Core\Database\DatabaseExceptionWrapper: SQLSTATE[08S01]:
    Communication link failure: 1053 Server shutdown in progress:

    , the second test came out just fine => RTBC for me.

  • 🇳🇱Netherlands bbrala Netherlands

    Do we want to drop node 20 support? Cause that is what we are doing with glob.

    https://github.com/isaacs/node-glob/compare/v10.4.4...v11.0.0

    There is also https://github.com/isaacs/node-glob/releases/tag/v10.4.5

    But ths commit "whatever, just allow any engines" doesnt make very happy :x

    https://github.com/isaacs/node-glob/compare/v10.4.4...v10.4.5

  • 🇳🇱Netherlands bbrala Netherlands

    Ignore me, missed a few comments o_O

    • catch committed 6fdc4946 on 11.0.x
      Issue #3460114 by Spokje, longwave: Update JavaScript dependencies for...
    • catch committed 09020e6b on 11.x
      Issue #3460114 by Spokje, longwave: Update JavaScript dependencies for...
  • Status changed to Fixed about 2 months ago
  • 🇬🇧United Kingdom catch

    Committed/pushed to 11.x and cherry-picked to 11.0.x, thanks!

  • Automatically closed - issue fixed for 2 weeks with no activity.

Production build 0.71.5 2024