Problem/Motivation
? Pick the packages you want to upgrade. Current Range Latest
@floating-ui/dom ------------------ ◯ ^1.6.8 ------- ◉ ^1.6.12 ------
chokidar -------------------------- ◯ ^3.6.0 ------- ◉ ^4.0.1 -------
cspell ---------------------------- ◉ ^8.16.0 ------ ◯ ^8.16.1 ------
dotenv ---------------------------- ◯ ^16.4.5 ------ ◉ ^16.4.7 ------
eslint-plugin-import -------------- ◯ ^2.29.1 ------ ◉ ^2.31.0 ------
eslint-plugin-no-jquery ----------- ◯ ^3.0.2 ------- ◉ ^3.1.0 -------
eslint-plugin-yml ----------------- ◯ ^1.14.0 ------ ◉ ^1.16.0 ------
eslint ---------------------------- ◯ ^8.57.0 ------ ◉ ^8.57.1 ------ ◯ ^9.16.0 ------
jquery-ui ------------------------- ◯ ^1.14.0 ------ ◉ ^1.14.1 ------
jquery ---------------------------- ◉ ^4.0.0-beta.2 ◯ ^3.7.1 -------
jsdom ----------------------------- ◯ ^24.1.1 ------ ◯ ^24.1.3 ------ ◉ ^25.0.1 ------
nightwatch ------------------------ ◯ ^3.7.0 ------- ◉ ^3.9.0 -------
postcss-preset-env ---------------- ◉ ^9.6.0 ------- ◯ ^10.1.1 ------
postcss --------------------------- ◉ ^8.4.40 ------ ◯ ^8.4.49 ------
prettier -------------------------- ◯ ^3.3.3 ------- ◉ ^3.4.2 -------
sortablejs ------------------------ ◯ ^1.15.2 ------ ◉ ^1.15.6 ------
stylelint ------------------------- ◯ ^16.10.0 ----- ◉ ^16.11.0 -----
terser ---------------------------- ◯ ^5.31.3 ------ ◉ ^5.37.0 ------
tua-body-scroll-lock -------------- ◯ ^1.5.0 ------- ◉ ^1.5.3 -------
> webpack --------------------------- ◯ ^5.96.1 ------ ◉ ^5.97.1 ------
@longwave confirmed it's okay (in this specific case) to bundle all JavaScript dependencies that don't have the above changes in a single issue.
This is very welcome, because it means a lot can be done in one issue and basically every extra issue about JavaScript dependencies ends up in reroll-limbo if any of the other JavaScript dependencies gets committed.
I hope this also covers core/core.libraries.yml and core/assets/vendor/
- We don't update
postcss*andcspellhere, since they have dedicated issues. - We can't update
eslintto 9.*, there's a dedicated issue for that as well.
Finally there's [3487576#5869338]:
I've opened #3485202: Update to jQuery UI 1.14.1 and use the newly added option for dialog modal headings right after the release of jquery ui 1.14.1. @benjifisher recommended today i should be looking for a "Update JavaScript dependencies" issue, which lead me here. just wanted to note that the issue i've linked is not only about updating jquery ui to the latest version, but jquery ui introduced a setting that enables choosing into which element the dialog modal title should be wrapped. pre 1.14.1 that was a span which is semantically wrong and an accessibility issue. my question is how to proceed? should i rescope the issue i've created and make it only about the addition of that option to core/misc/dialog/dialog.jquery-ui but then it wouldnt make it into 11.1 i suppose? for 11.0 there was a similar case where jquery ui 1.14.0 added the option for adding the aria-modal attribute to dialog modals. that option was added on the issue upgrading to 1.14.0 directly. so just wanted to post here as a headsup. in regards for changing the wrapping element of the title from a span to an h1 @mgifford already commented on #3485202: Update to jQuery UI 1.14.1 and use the newly added option for dialog modal headings and is also in the loop of that change.
@rkoller
Since there seems to be no test-coverage (nothing breaks in our current tests with jQuery UI 1.14.1) I'm absolutely unsure how to handle this.
Absolutely finally, I don't think there's merit in backporting this MR to 10.4/5.x land, since most dependencies are different over there.
Proposed resolution
Remaining tasks
Followup needed for the Nightwatch warning.
API changes
Data model changes
Release notes snippet
Issue fork drupal-3493146
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #2
spokjeComment #3
spokjeComment #4
spokjeComment #6
spokjeComment #7
quietone commentedThe cspell issue was committed so this needs some work.
Comment #9
spokjeRebased
Comment #10
smustgrave commentedApplied locally for about 20 minutes while doing other stuff and nothing seemed off. Wasn't sure how else to test.
LGTM
Comment #13
catchCommitted/pushed to 11.x and cherry-picked to 11.1.x, thanks!
Should do the equivalent update for 10.5.x/10.4.x so moving there for 'backport'
Comment #15
spokjeTBH I've ran out of steam for fancy diffs and linking issues for stuff that can't be done.
Instead here's the before:
Comment #16
spokjeAfter:
Comment #18
spokjeComment #19
catchcommit-code-check.sh wasn't happy,
yarn check -sgave me this:Not sure if it's something up with my local or a problem with the MR.
Comment #20
spokjeNo clue either, but I'm officially calling it quits on trying to update any JS dependency.
It's far too tedious with rerolls, canary-in-coal-mine for broken HEADs and multiple branches.
I think we should put time in researching something like Renovate or whatever shiny stuff works on GitLab these days.
IMHO it shouldn't take the roughly 10-15hrs I've spent this time around.
This is by no means a rant against core committers, who can somehow juggle multiple branches almost perfectly, but for mere mortals like me, this is _very_ frustrating and something that looks like it can be achieved with automation far easier than a/this human banging its forehead on a keyboard :)
Comment #21
spokjeNW is probably the status for this now.
Comment #22
quietone commentedThere is an open issue about dedupe, https://github.com/yarnpkg/yarn/issues/7568. Someone solved that by deleting the lock file and then 'yarn install'.
Locally, that worked for the dedupe errors. Still to do is the resolution one.
Comment #23
nod_automation issue is at #3280275: Set up a formal process for ensuring JavaScript dependencies remain up to date
Comment #24
nod_So in 11.x and yarn 2 we don't check dependencies because the command doesn't exists. From the docs:
The
--check-filesoption doesn't exist anymore.the deduping doesn't impact our vendored deps so I'd be inclined to just ignore it and remove the check. i'll try to fix it later today but might just remove that
Comment #25
quietone commentedAnd what about the two 'resolution' warning?
Comment #26
catchI think we can ignore the warnings, they might be pre-existing. Should open a follow up to try to clean this up though.
Comment #27
xjmFWIW I got the Nightwatch warning in #25 on HEAD when I was prepping for the live commit at Singapore. (I.e., I believe it also happens on 11.x.) Asked @larowlan about it and he suggested ignoring that at the time.
Comment #28
xjmComment #29
xjmTagging for the Nightwatch warning followup and adding it to the IS.
Comment #31
longwaveI think the warnings are safe to ignore.
I fixed the errors by removing the two sets of
acorndata from yarn.lock and rerunningyarn installwhich has deduplicated them correctly and yarn check now has warnings but no errors:I can further fix the
debugandunderscorewarnings by removing those from the lockfile and runningyarn installagain. This just leaves:I think these are consequences of pinning to Nightwatch 2.4.2, we have been unable to upgrade further in Drupal 10 (but have moved to Nightwatch 3 in Drupal 11).
Comment #32
catchThat makes sense with the Nightwatch mis-match, good to narrow everything down. Let's get this in.
Comment #35
nod_Comment #37
finnsky commentedwe upgrading node packages to major versions without reading changelog ;)
https://github.com/paulmillr/chokidar?tab=readme-ov-file#upgrading
it is broken now core/scripts/css/postcss-watch.js
so for 1.5 month `yarn watch` not working ;)
Comment #38
finnsky commentedFollow up issue
https://www.drupal.org/project/drupal/issues/3504265
Comment #39
xjmAmending credit.