chore(deps): consolidate three dependabot lockfile bumps and resync the lockfile - #128
Open
rubenvdlinde wants to merge 2 commits into
Open
chore(deps): consolidate three dependabot lockfile bumps and resync the lockfile#128rubenvdlinde wants to merge 2 commits into
rubenvdlinde wants to merge 2 commits into
Conversation
…e lockfile Combines the content of #81, #110, #116 and #117 into a single lockfile regeneration, and repairs the package.json/package-lock.json desync that made `npm ci` fail under CI's toolchain. - jsdom 29.1.1 -> 30.0.1 (#117, major; vitest environment) - @playwright/test 1.61.1 -> 1.62.1 (#116) - @vitejs/plugin-vue 6.0.1 -> 6.0.8 (#110) - transitive security/maintenance set (#81): vite 7.3.3 -> 7.3.6, dompurify 3.4.2 -> 3.4.13, qs -> 6.15.3, form-data -> 4.0.6, babel 7.29.7 The desync: `development` was missing a nested picomatch entry, so `npm ci` failed under node 20 / npm 10 (CI) with 'Missing: picomatch@4.0.5 from lock file' while npm 11 installed it cleanly - same commit, opposite verdict. Regenerating the lockfile under node 20 / npm 10 hoists picomatch 4.0.5 to the top level, which satisfies rollup-plugin-license's fdir peer, and nests micromatch's 2.3.2. Verified: cold npm ci npm10 exit 0 (993 pkgs) vs exit 1 on base; cold npm ci npm11 exit 0 (994 pkgs); build exit 0; vitest 11 files / 58 tests pass. Build check positive-controlled (bogus import -> exit 1).
…e 20
jsdom@30.0.1 declares engines '^22.22.2 || ^24.15.0 || >=26.0.0'.
This repo's .nvmrc pins node 20, so under CI jsdom 30 fails every
vitest worker with:
TypeError: webidl.util.markAsUncloneable is not a function
at node_modules/jsdom/lib/api.js:12:33
markAsUncloneable is an undici API that does not exist on node 20.
A dev box on node 22 runs the same commit green, which is why this was
invisible locally — measured on both.
jsdom@29.1.1 supports node ^20.19.0 and is retained. Dependabot #117
should be revisited only if/when this repo's CI node version moves;
note package.json 'engines' already claims node ^24.0.0 while .nvmrc
says 20, which is the underlying inconsistency.
Under CI's node 20: npm ci exit 0 (992 pkgs), vitest 11 files /
58 tests pass, build exit 0.
Contributor
Quality Report — ConductionNL/app-versions @
|
| Check | PHP | Vue | Security | License | Tests |
|---|---|---|---|---|---|
| lint | ✅ | ||||
| phpcs | ✅ | ||||
| phpmd | ✅ | ||||
| psalm | ✅ | ||||
| phpstan | ✅ | ||||
| phpmetrics | ✅ | ||||
| eslint | ✅ | ||||
| stylelint | ❌ | ||||
| build | ✅ | ||||
| composer | ✅ | ✅ 17/17 | |||
| npm | ✅ | ✅ 306/306 | |||
| PHPUnit | ❌ | ||||
| Newman | ⏭️ | ||||
| Playwright | ❌ | ||||
| Hydra gates | ❌ |
Quality workflow — 2026-08-05 20:58 UTC
Download the full PDF report from the workflow artifacts.
Contributor
Quality Report — ConductionNL/app-versions @
|
| Check | PHP | Vue | Security | License | Tests |
|---|---|---|---|---|---|
| lint | ✅ | ||||
| phpcs | ✅ | ||||
| phpmd | ✅ | ||||
| psalm | ✅ | ||||
| phpstan | ✅ | ||||
| phpmetrics | ✅ | ||||
| eslint | ✅ | ||||
| stylelint | ❌ | ||||
| build | ✅ | ||||
| composer | ✅ | ✅ 17/17 | |||
| npm | ✅ | ✅ 306/306 | |||
| PHPUnit | ❌ | ||||
| Newman | ⏭️ | ||||
| Playwright | ❌ | ||||
| Hydra gates | ✅ |
Quality workflow — 2026-08-05 21:09 UTC
Download the full PDF report from the workflow artifacts.
This was referenced Aug 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Consolidates #81, #110 and #116 into one lockfile regeneration, and repairs the
package.json/package-lock.jsondesync that madenpm cifail under CI's toolchain. Those three are superseded and will be closed with their content recorded here.What moves
Refused: jsdom 30 (#117)
#117 is breaking on this repo and is not included.
jsdom@30.0.1declares:and this repo's
.nvmrcpins node 20. Under CI every vitest worker dies with:markAsUncloneableis an undici API that does not exist on node 20. This was measured both ways: green on a node 22 dev box, red on CI's node 20 — same commit, opposite verdict.jsdom@29.1.1supports^20.19.0and is retained.Worth noting the underlying inconsistency:
package.jsonenginesclaimsnode ^24.0.0while.nvmrcsays 20. Reconciling those is a deliberate decision, not a dependabot merge.The desync this fixes
developmentwas missing a nested picomatch entry, sonpm cifailed under node 20 / npm 10 (CI, per.nvmrc):…while npm 11 installed the same commit cleanly. That asymmetry is why it survived on dev boxes. It also explains the 9 red jobs on
development— Frontend Build, Frontend Tests, License (npm), Security (npm), eslint and stylelint all fail simply because the install fails.Evidence (cold cache, exit codes read directly)
development)npm cinode20/npm10 (CI)vitest rununder node 20npm run buildunder node 20npm cinode22/npm11npm run buildnode22vitest runnode22Both arms cold — cache emptied before each install.
The build check was positive-controlled: a deliberately bogus import makes it exit 1 with
Could not resolve, so the exit-0 above is a real pass and not a check incapable of firing.Hazard screen: no
vue3-apexchartsand no@conduction/nextcloud-vueanywhere in this tree, so neither pin can move here.