Skip to content

Commit 693dff4

Browse files
authored
fix(deps): Address npm security advisories (#327)
diff (GHSA-73rr-hh4g-fpgx) - Fixed via overrides: - Override diff to 5.2.2 under mocha and sinon (patch bump, ^5.x range) - Override diff to 4.0.4 under tslint (patch bump, ^4.x range) - Removes the .nsprc exception since the vulnerability is now resolved eslint RuleTester (GHSA-p5wg-g6qr-c7cg) - Removed: - Advisory was withdrawn in Feb 2026, exception no longer needed tar (GHSA-83g3-92jg-28cx) - Fixed via override bump: - Bump tar override from 7.5.7 to 7.5.8 (patch fix) elliptic (GHSA-848j-6mx2-7j84) - Exception retained: - No fix available, dev-only transitive dep, not used for signing - Extended expiry to 2026-08-15 undici (GHSA-g9mf-h72j-4rw9) - Exception retained: - Fix requires major version jump (5.x -> 7.x) breaking @actions/http-client - Extended expiry to 2026-08-15 ajv (GHSA-2g4f-4pwh-qvx6) - New exception: - Fix requires ajv@8.x but consumers (@jupyterlab/settingregistry, table) are on 6.x - Dev-only, not bundled in extension minimatch (GHSA-3ppc-4f35-3m26) - New exception: - Fix requires minimatch@10.x but consumers (mocha, glob) are on 3.x-5.x - Dev-only, not bundled in extension
1 parent cbd437a commit 693dff4

4 files changed

Lines changed: 91 additions & 48 deletions

File tree

.github/workflows/ci.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,8 @@ jobs:
213213
run: npm ci --prefer-offline --no-audit
214214

215215
- name: Run audit for production dependencies
216-
run: npm audit --production
216+
# Uses better-npm-audit with .nsprc exceptions file
217+
run: npx better-npm-audit audit --production
217218

218219
audit-all:
219220
name: Audit - All

.nsprc

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
{
2-
"GHSA-73rr-hh4g-fpgx": {
3-
"notes": "diff DoS via infinite loop when parsing patches with special line break characters. Accepted risk: dev-only dependency (mocha, sinon, tslint), only affects development/CI, not bundled in extension.",
4-
"expiry": "2026-04-15"
2+
"GHSA-2g4f-4pwh-qvx6": {
3+
"notes": "ajv ReDoS when using $data option. Accepted risk: dev-only transitive dependency (@jupyterlab/settingregistry, table), fix requires ajv@8.18.0 but consumers are on 6.x, not bundled in extension.",
4+
"expiry": "2026-08-15"
5+
},
6+
"GHSA-3ppc-4f35-3m26": {
7+
"notes": "minimatch ReDoS via repeated wildcards. Accepted risk: dev-only transitive dependency (mocha, glob, @vscode/test-cli), fix requires minimatch@10.2.1 but consumers are on 3.x-5.x, not bundled in extension.",
8+
"expiry": "2026-08-15"
59
},
610
"GHSA-848j-6mx2-7j84": {
711
"notes": "CVE-2025-14505: elliptic ECDSA signature corruption can lead to private key recovery if attacker obtains both faulty and correct signatures for identical inputs. Accepted risk: dev-only transitive dependency (node-stdlib-browser -> crypto-browserify -> browserify-sign), not used for signing in this project, no fix available.",
8-
"expiry": "2026-04-08"
12+
"expiry": "2026-08-15"
913
},
1014
"GHSA-g9mf-h72j-4rw9": {
11-
"notes": "undici DoS via unbounded decompression chain. Accepted risk: dev-only transitive dependency (@actions/core, @actions/github), only affects CI/CD workflows, not bundled in extension.",
12-
"expiry": "2026-04-15"
13-
},
14-
"GHSA-p5wg-g6qr-c7cg": {
15-
"notes": "CVE-2025-50537: eslint Stack Overflow in RuleTester.run() when serializing objects with circular references. Accepted risk: dev-only dependency, requires local access and user interaction, only affects test authoring, not bundled in extension.",
16-
"expiry": "2026-04-15"
15+
"notes": "undici DoS via unbounded decompression chain. Accepted risk: dev-only transitive dependency (@actions/core, @actions/github), only affects CI/CD workflows, not bundled in extension. Fix requires major version jump (5.x -> 6.x/7.x) breaking @actions/http-client constraint.",
16+
"expiry": "2026-08-15"
1717
}
1818
}

package-lock.json

Lines changed: 69 additions & 36 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2933,7 +2933,16 @@
29332933
"d3-color": "3.1.0",
29342934
"vega-embed": "^7.1.0",
29352935
"@mermaid-js/layout-elk": "npm:empty-pkg@1.0.0",
2936-
"tar": "7.5.7",
2936+
"tar": "7.5.8",
2937+
"mocha": {
2938+
"diff": "5.2.2"
2939+
},
2940+
"sinon": {
2941+
"diff": "5.2.2"
2942+
},
2943+
"tslint": {
2944+
"diff": "4.0.4"
2945+
},
29372946
"lodash-es": "^4.17.23"
29382947
}
29392948
}

0 commit comments

Comments
 (0)