Skip to content

Update vulnerable npm dependencies - #38

Draft
ryanduguid wants to merge 2 commits into
XeroAPI:mainfrom
ryanduguid:deps
Draft

Update vulnerable npm dependencies#38
ryanduguid wants to merge 2 commits into
XeroAPI:mainfrom
ryanduguid:deps

Conversation

@ryanduguid

@ryanduguid ryanduguid commented Aug 12, 2026

Copy link
Copy Markdown

Summary

  • raises @napi-rs/keyring to its patched 1.3 line;
  • updates Vitest to v4;
  • regenerates the npm lock from the declared manifest;
  • removes vulnerable/stale transitive packages from the lock.

The refreshed lock resolves with zero npm audit findings under the existing Node >=18 contract.

Packaging relationship to #37

This dependency change does not alter lifecycle scripts. On exact head 8a1120a1787125afc3eb1cb80f063373cafe4baa, npm pack --dry-run successfully builds and writes the oclif manifest, then reproduces the pre-existing Windows failure in the unchanged POSIX-only rm -f postpack command. The generated manifest was removed and no tarball or untracked file remains.

A detached composition of this exact head with #37 (295d131e1805baab3d457ab5342b651a87dc11f4; composed commit c2ff3ba) completes the full lifecycle on Windows. No combined branch or PR was pushed. Maintainers can review the dependency and portability changes independently, but #37 is needed for Windows packaging.

Verification

Exact #38 head:

  • npm ci — 309 packages audited, zero vulnerabilities;
  • npm test -- --run — 130 passed;
  • npm run build passed;
  • npm pack --dry-run — prepack succeeded; unchanged Windows rm postpack failed as documented above;
  • cleanup verified: no oclif.manifest.json, .tgz or untracked file remains.

Temporary #38 + #37 composition:

  • clean npm ci — zero vulnerabilities;
  • npm test -- --run — 130 passed;
  • npm run build passed;
  • npm pack --dry-run passed: 179 files, 61.4 kB package / 463.3 kB unpacked;
  • postpack removed oclif.manifest.json; no tarball or untracked file remains.

Moves the credential-store binding to the current release line and updates
the lockfile to match.
Raises the vitest devDependency from ^2 to ^4.1.10 and regenerates
package-lock.json against it. Only the vitest range changes, but the
regeneration also advances locked in-range versions across the tree,
including runtime dependencies (axios 1.13.6 -> 1.19.0, form-data
4.0.5 -> 4.0.6, follow-redirects 1.15.11 -> 1.16.0, brace-expansion
5.0.4 -> 5.0.9). That clears every advisory npm audit currently
reports against the previous lockfile.
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