Skip to content

Patch the vulnerable development dependencies - #6

Merged
sachinsachdeva merged 1 commit into
mainfrom
chore/fix-dev-dependency-vulnerabilities
Aug 29, 2026
Merged

Patch the vulnerable development dependencies#6
sachinsachdeva merged 1 commit into
mainfrom
chore/fix-dev-dependency-vulnerabilities

Conversation

@sachinsachdeva

Copy link
Copy Markdown
Owner

npm audit reported eight vulnerabilities. Seven are transitive dependencies of tslint, reachable only when linting; one is systeminformation, which is a different matter and is left for its own change.

What this fixes

All seven dev-tree advisories resolve to versions the declared ranges already permitted, so package.json is untouched — this is purely a lockfile refresh.

Package Before After Severity
minimist 1.2.5 1.2.8 critical
js-yaml 3.13.1 3.15.2 high
brace-expansion 1.1.11 1.1.18 high
minimatch 3.0.4 3.1.5 high
semver 5.7.1 5.7.2 high
path-parse 1.0.6 1.0.7 moderate
diff 4.0.2 4.0.4 low

The Dependabot alert on the default branch was js-yaml: the lockfile pinned 3.13.1 while tslint asks for ^3.13.1, so the patched 3.15.x was always permitted and simply had not been picked up.

None of these ship to users — vsce packages production dependencies only, and all seven are dev-scope.

What this deliberately does not fix

systeminformation is the extension's only production dependency and does ship. Clearing its advisories requires 4.x → 5.x, which is a major version with renamed properties across exactly the surface this extension reads (currentload_idle, cpuCurrentspeed, hasbattery and others). That needs code changes and every reading re-checked, so it belongs in its own pull request rather than riding along with a lockfile bump.

npm audit accordingly still reports 1 high after this change, down from 8 vulnerabilities (1 critical, 5 high, 1 moderate, 1 low).

Verification

  • npm run lint clean — tslint still works against the newer js-yaml, which is the one upgrade here with any real chance of breaking it.
  • npm test — 48 passing.
  • Extension smoke-tested through a mocked vscode module: CPU, GPU, memory and disk all report, and the host exits cleanly.

🤖 Generated with Claude Code

npm audit reported eight vulnerabilities, seven of which are transitive
dependencies of tslint and reachable only when linting: brace-expansion,
diff, js-yaml, minimatch, minimist, path-parse and semver. None of them
ship, since vsce packages production dependencies only.

All seven are fixed by resolutions the declared ranges already allowed, so
this is a lockfile change and package.json is untouched. The Dependabot
alert on the default branch was js-yaml, pinned at 3.13.1 where tslint asks
for ^3.13.1; it now resolves to 3.15.2, past the 3.15.1 that carries the
!!omap fix. The critical one was minimist 1.2.5, now 1.2.8.

systeminformation is deliberately left alone. It is the one production
dependency, it ships with the extension, and clearing its advisories means
going from 4.x to 5.x, which renames much of the surface this extension
reads. That belongs in its own change, with every reading checked.

Verified: tslint still runs clean on the newer js-yaml, the tests pass, and
the extension was smoke-tested with every section reporting.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@sachinsachdeva
sachinsachdeva merged commit 5d13c0f into main Aug 29, 2026
2 checks passed
@sachinsachdeva
sachinsachdeva deleted the chore/fix-dev-dependency-vulnerabilities branch August 29, 2026 12:34
@sachinsachdeva sachinsachdeva mentioned this pull request Aug 29, 2026
Merged
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant