Commit 91cd48d
Fix parse-duration, serialize-javascript, and uuid CVEs (REV-43)
Clears three Dependabot advisories in the CLI:
- parse-duration (CVE-2025-25283, ReDoS): bump 1.1.0 -> ^2.1.6. v2 is
ESM-only, so require() yields the module namespace and the parser is
`.default`; it returns null (not NaN) for unparseable input, and `?? 0`
preserves the pre-v2 behaviour of treating that as 0. Verified byte-identical
to v1 across 18 TTL inputs (compound, decimal, empty, garbage). Adds
engines: node >=20.19.0, required for require(esm).
- serialize-javascript (GHSA-5c6j-r48x-rmvq, RCE/DoS): overridden to ^7.0.5.
Transitive via mocha (devDependency), never shipped to consumers; no 6.x
patch exists.
- uuid (CVE-2026-41907, ReDoS): overridden to ^11.1.1. Transitive via xcode,
which has no fixed release; verified compatible with xcode's uuid.v4() usage.
Verified: tsc clean; CLI boots (require(esm) OK); xcode.generateUuid() works;
npm audit clear for all three.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>1 parent 31ba240 commit 91cd48d
3 files changed
Lines changed: 31 additions & 26 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
36 | 36 | | |
37 | 37 | | |
38 | 38 | | |
39 | | - | |
| 39 | + | |
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
| |||
57 | 57 | | |
58 | 58 | | |
59 | 59 | | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
60 | 67 | | |
61 | 68 | | |
62 | 69 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1673 | 1673 | | |
1674 | 1674 | | |
1675 | 1675 | | |
1676 | | - | |
| 1676 | + | |
| 1677 | + | |
| 1678 | + | |
1677 | 1679 | | |
0 commit comments