Repository navigation
chore(deps): update dependencies for sinon, mocha, nyc, ilc-plugins-sdk, newrelic, and tar - #721
Conversation
…dk, newrelic, and tar
kurok
left a comment
There was a problem hiding this comment.
Looked through the whole bump. The one real code change (authProvider.js dropping Cookies.getJSON for js-cookie 3) is correct, hyperid 4 is a drop-in for what ilc-plugins-sdk calls, mocha 12 still ships the browser bundle karma needs, and the ESM-only majors / https-proxy-agent downgrade / pino 8→10 that show up in the lockfiles don't reach ILC's own code. CI is green.
Three things inline: one behaviour change that the newrelic 14 bump brings in silently (the newrelic.js files are not in the diff, so I anchored it on the dependency line), one cleanup, and a request to document the new overrides.
| "typescript": "^5.9.3", | ||
| "wait-on": "^9.0.3" | ||
| }, | ||
| "overrides": { |
There was a problem hiding this comment.
This PR adds overrides blocks here and in ilc, registry and registry/client, but nothing records which advisory each pin addresses, and the PR description is empty. Overrides keep forcing a version regardless of what upstream later declares, so without a reference nobody can tell when one is safe to drop. Two examples from this block:
editorconfig → minimatch ^9.0.7: editorconfig 1.0.7's own range (^9.0.1) already admits the patched 9.0.9, so a lockfile refresh gives the same result without a permanent pin.mocha → diff ^8.0.3: right for the mocha 11.7.5 locked here (diff 7 is the affected one), but once mocha moves to 12 (which wantsdiff ^9) this override will force diff 8 back onto it.
Could you add a one-line comment or PR note per override naming the GHSA/CVE it fixes?
There was a problem hiding this comment.
Added in PR desc, package.json could not commented in a good way.
… pin - e2e: drop the editorconfig > minimatch override; editorconfig 1.0.7 declares minimatch ^9.0.1, so a lockfile refresh resolves 9.0.9 - e2e: scope the serialize-javascript/diff overrides to mocha@11 so they stop applying once codeceptjs moves to mocha 12 (diff ^9) - registry: raise the tar override floor to ^7.5.21, the first version outside GHSA-r292-9mhp-454m (<=7.5.20) Advisory each override addresses (floor-setting advisory first): - e2e codeceptjs > axios ^1.20.0: GHSA-542g-h47m-68v8, GHSA-3pq3-5fj3-cg6v and 25 older axios advisories (codeceptjs 3.7.9 pins axios 1.15.1) - e2e codeceptjs > joi ^18.2.9: GHSA-wr44-6hxh-3jwq, GHSA-6h2x-m376-mqjq (codeceptjs 3.7.9 pins joi 18.1.2) - e2e codeceptjs > @xmldom/xmldom ^0.9.12: GHSA-c7q8-3ch8-vqpv and 12 older xmldom advisories (codeceptjs 3.7.9 pins 0.9.10) - e2e codeceptjs > uuid ^11.1.1: GHSA-w5hq-g745-h8pq (pinned 11.1.0) - e2e mocha@11 > serialize-javascript ^7.0.5: GHSA-qj8w-gfj5-8c6v, GHSA-5c6j-r48x-rmvq - e2e mocha@11 > diff ^8.0.3: GHSA-73rr-hh4g-fpgx - ilc, registry hyperid ^4.0.0: GHSA-w5hq-g745-h8pq (hyperid 3 bundles uuid 8.3.2; pulled in by ilc-plugins-sdk) - registry tar ^7.5.21: GHSA-r292-9mhp-454m, GHSA-23hp-3jrh-7fpw and 10 older tar advisories (sqlite3 5 / node-gyp 8 / cacache 15 want tar 6) - registry/client lodash ^4.18.0: GHSA-r5fr-rjxr-66jc, GHSA-f23m-r3pf-42rh (react-admin 3 declares lodash ~4.17.5) - registry/client dompurify ^3.4.16: GHSA-6688-9rhm-gjv2 and 16 older dompurify advisories (ra-ui-materialui 3 declares dompurify ^2.4.3) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…stry newrelic 14 declares @newrelic/native-metrics ^13.1.0, so the direct ^12.0.0 dependency left a second, never-loaded 12.0.0 copy at the root that was still compiled from source during the Alpine image build. Aligning the range dedupes it to a single 13.1.0. native-metrics 13 only drops Node 20. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Resolve ilc/package-lock.json by keeping this branch's lockfile and pruning cidr-matcher and is-url, which master removed from ilc/package.json. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Coverage ReportIlc/serverCommit SHA:90f27881dd3b5d65092c169ee637f001359e92f6 Test coverage results 🧪File details
Ilc/clientCommit SHA:90f27881dd3b5d65092c169ee637f001359e92f6 Test coverage results 🧪File details
RegistryCommit SHA:90f27881dd3b5d65092c169ee637f001359e92f6 Test coverage results 🧪File details
|
Fixes the open Dependabot alerts in the npm lockfiles that have an upstream fix, and adds tests requested for function coverage.
Changes
npm audit fixin root,ilc,registry,registry/client,e2e(in-range updates only).@fastify/static8 → 10 (ilc; route-guard bypass via path traversal). The 10.x breaking change (setHeaderssignature) is not used.newrelic13 → 14 (ilc, registry; patched OpenTelemetry). Drops Node 20, CAT and LASP, none of which we use.@newrelic/native-metrics12 → 13.1.0 (ilc, registry) to match newrelic 14's own range, so the lockfile keeps a single copy instead of an unused 12.0.0 that was still compiled in the Alpine build.ilc-plugins-sdk2 → 3 (registry; only drops Node ≤ 20).mocha12,nyc18 (ilc, registry);mochawesome8 (e2e);@types/sinon21.0.1 (registry, needed after the sinon bump).js-cookie2 → 3 (registry/client).getJSONwas removed in v3, soauthProvider.jsnow parses the cookie itself.ilc/server/registry/factory.spec.tsandregistry/tests/services/preProcessResponse.spec.tsbring both files to 100% function coverage.Overrides
overrideskeep forcing a version regardless of what upstream later declares, so each one is listed with the advisory that sets its floor and the condition under which it can be removed. Each was checked by removing it, refreshing the lockfile within the parent's declared range and re-runningnpm audit. All of them are still needed excepteditorconfig > minimatch, which this PR drops.codeceptjs > axios ^1.20.0axios1.15.1 exactlycodeceptjs > joi ^18.2.9joi18.1.2codeceptjs > @xmldom/xmldom ^0.9.12@xmldom/xmldom0.9.10codeceptjs > uuid ^11.1.1uuid11.1.0mocha@11 > serialize-javascript ^7.0.5^6.0.2mocha@11 > diff ^8.0.3^7.0.0hyperid ^4.0.0ilc-plugins-sdk3.1.0 depends on hyperid 3ilc-plugins-sdkdepends on hyperid ≥ 4tar ^7.5.21(already on master; floor raised from ^7.5.19 here)lodash ^4.18.0ra-core3 declares~4.17.5dompurify ^3.4.16ra-ui-materialui3 declares^2.4.3The two
mochaoverrides are scoped tomocha@11so they stop applying when mocha 12 (which wantsdiff ^9) arrives. Thecodeceptjskey can't be version-scoped: npm rejects that for a direct dependency (EOVERRIDE). Since codeceptjs is bumped in the samepackage.json, check these overrides whenever codeceptjs is updated.The full advisory list per override is in the body of commit 4243ddc.
Not fixed (no upstream fix, or a major migration)
braces,sprintf-js,http-cache-semantics,extract-zip.decode-uri-componentand the rest of react-admin 3's tree: fixing it means moving react-admin 3 → 5.@codeceptjs/ui(electron, extract-zip), puppeteer 24 (basic-ftp), detox (stream-json). Puppeteer 25 is ESM-only and codeceptjs 3.7.9 targets 24; codeceptjs 4 is a migration of its own.Testing
npm run build, server tests (662 passing).npm run build(including the client UI), sqlite test suite (some DB-backed tests are flaky locally on master as well; CI runs them on Postgres).codeceptjs dry-runloads all 12 suites / 42 tests.🤖 Generated with Claude Code