Problem/Motivation

Keeping this open for a final round before 10.2.0

@longwave in #16.

Current status:

$ yarn outdated
Package                 Current Wanted Latest   
glob                    10.3.5  10.3.5 10.3.10  
jackspeak               2.1.1   2.1.1  2.3.6    
loadjs                  4.2.0   4.2.0  4.3.0-rc1
nightwatch              2.4.2   2.4.2  3.3.2   
shepherd.js             10.0.1  10.0.1 11.2.0    

Not updatable at the moment:

There be dragons:

  • nightwatch => Any update above the currently pinned version 2.4.2 will break our nightwatch test job.
    There is an effort to update in #3371963: Update Nightwatch to 3.x, but there are concerns about this job, already in its current state, returning false positives (i.e. Reporting failing tests as passing)
  • shepherd.js => Shepherd.js 11.x replaced its dependency on popperJS with Floating UI. This is not a simple 1-on-1 replacement (#3323834: (Try to) update Sheperd.js to latest major version) and we're moving the tour-module, which is the sole user of shepherd.js to Contrib (#3325445: [Policy] Remove tour module from core) in core 11.x. A contrib tour could add a new major branch with the dependency switch - in some ways easier than doing it in core.

Steps to reproduce

Proposed resolution

Remaining tasks

User interface changes

API changes

Data model changes

Release notes snippet

Comments

quietone created an issue. See original summary.

quietone’s picture

Issue summary: View changes

Removing CKEditor becuase that is being done in #3393557: [upstream] Update CKEditor 5 to 40.0.0

quietone’s picture

longwave’s picture

We can update stylelint-config-standard, it's only a set of coding standards and they almost only ever release new majors when they change a standard (which often doesn't affect us anyway).

Will spin off some child issues to break this up a bit.

longwave’s picture

Upgrading everything resulted in a lot of errors on yarn build:

TypeError [ERR_INVALID_ARG_TYPE]: The "data" argument must be of type string or an instance of Buffer, TypedArray, or DataView. Received an instance of Promise
longwave’s picture

Title: Update JavaScript dependencies for 10.2 » [meta] Update JavaScript dependencies for 10.2
Category: Task » Plan
spokje’s picture

Issue summary: View changes
spokje’s picture

Issue summary: View changes
spokje’s picture

Issue summary: View changes
Related issues: +#3371963: Update Nightwatch to 3.x
spokje’s picture

Issue summary: View changes
spokje’s picture

Issue summary: View changes
spokje’s picture

Issue summary: View changes
spokje’s picture

Issue summary: View changes
spokje’s picture

Issue summary: View changes
spokje’s picture

Issue summary: View changes
longwave’s picture

Keeping this open for a final round before 10.2.0 but at the time of writing we are pretty close to done:

$ yarn outdated

Package                 Current Wanted Latest
eslint-formatter-gitlab 5.0.0   5.1.0  5.1.0
glob                    8.1.0   8.1.0  10.3.10
loadjs                  4.2.0   4.2.0  4.3.0-rc1
nightwatch              2.4.2   2.4.2  3.3.0
shepherd.js             10.0.1  10.0.1 11.2.0

The last four likely cannot be updated anyway.

spokje’s picture

Issue summary: View changes

Updated IS with the latest state of affairs, also document the non-updatables with some explanation to help out with future "Update JavaScript dependencies for X.Y"

spokje’s picture

Issue summary: View changes
spokje’s picture

Issue summary: View changes
spokje’s picture

Issue summary: View changes
wim leers’s picture

Issue summary: View changes
spokje’s picture

Issue summary: View changes
spokje’s picture

Issue summary: View changes
lauriii’s picture

What's the plan regarding updating Shepherd.js? Are we planning on running unsupported version of the library until 2026?

spokje’s picture

What's the plan regarding updating Shepherd.js?

Interesting question, I assumed we can only bump major versions in a major release, so that would be 11.0.0.

https://www.drupal.org/about/core/policies/core-dependency-policies/depe... states:

Major-version dependency updates are only done in major releases, unless they are required for a security update or critical bug.

.

But looking at the top paragraph of that link, that might only apply composer dependencies?

Since Drupal's Composer dependencies are packaged in Drupal tarballs, we are careful about updating Composer dependencies

longwave’s picture

The breaking change in Shepherd 11 was replacing popperJS with Floating UI. The problem is that if anyone was customising Tour module then upgrading this could well break their site, as I don't think there is a BC layer.

See #3323834: (Try to) update Sheperd.js to latest major version where we started looking at this for 10.0 but we stalled and ran out of time.

spokje’s picture

spokje’s picture

Issue summary: View changes
spokje’s picture

Issue summary: View changes

Updated IS to explain why shepherd.js isn't one of the easiest updates.

catch’s picture

For shepherd.js we should go ahead with #3376099: [11.x] [Meta] Tasks to remove Tour. A contrib tour could add a new major branch with the dependency switch once that's done - in some ways easier than doing it in core.

spokje’s picture

Issue summary: View changes
spokje’s picture

Issue summary: View changes
wim leers’s picture

FYI: I learned 51 minutes ago that the CKEditor 5 team is planning a new 40.2.0 release next week. Did everything I could to prep for that: #3406732: Update CKEditor 5 to 40.2.0. I'll leave it to release managers to decide whether it's worth including in 10.2.0 (or potentially tagging a second RC).

xjm’s picture

Status: Active » Fixed

Status: Fixed » Closed (fixed)

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

quietone’s picture

Version: 11.x-dev » 10.2.x-dev