Skip to content

7.0.4: fix 58 security vulnerabilities - #139

Merged
tbroadley merged 1 commit into
masterfrom
fix-security-vulnerabilities
Sep 6, 2026
Merged

tbroadley merged 1 commit into
masterfrom
fix-security-vulnerabilities

Conversation

@tbroadley

Copy link
Copy Markdown
Owner

Upgrades dependencies to clear all outstanding advisories. yarn audit goes from 58 vulnerabilities (36 high, 22 moderate) to 0.

Direct dependency bumps

  • toml ^3.0.0 → ^5.0.0 — uncontrolled recursion, and prototype pollution via __proto__ key-path desynchronization. Major bump: toml 5 requires Node.js 20+, which matches the CI matrix (20/22/24). lib/frontmatter-filter.ts only calls toml.parse, which is unchanged, and the package now ships its own types.
  • lodash ^4.17.23 → ^4.18.1 — code injection via _.template, prototype pollution in _.unset/_.omit.
  • js-yaml ^4.1.1 → ^4.3.2 — quadratic CPU consumption in merge-key chains and !!omap resolution. Stayed on the 4.x line.

Transitive fixes

brace-expansion (three DoS advisories across its 1.x, 2.x and 5.x lines), picomatch (ReDoS via extglob quantifiers, method injection in POSIX character classes), flatted (unbounded recursion, prototype pollution in parse()), serialize-javascript (CPU exhaustion DoS) and @humanfs/node (recursive copy follows symlinks out of the source tree) are all fixed by re-resolving the lockfile — no new resolutions entries were needed. The existing diff and serialize-javascript resolutions are kept, with serialize-javascript raised to ^7.1.1.

Release

This also does the 7.0.4 version bump and CHANGELOG entry, per RELEASE.md. toml was added to dictionary.txt so the changelog entry passes the project's own spellchecker, matching how js-yaml and mdast-util-to-hast were handled.

Testing

yarn ci passes (spellcheck, lint, 101 tests).

🤖 Generated with Claude Code

Upgrade dependencies to fix 58 security vulnerabilities (22 Moderate, 36
High), including advisories in toml, lodash, js-yaml, brace-expansion,
picomatch, flatted, serialize-javascript and @humanfs/node.

toml goes from 3 to 5, which requires Node.js 20 or newer. That matches
the versions already covered by CI.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@tbroadley
tbroadley merged commit b15b469 into master Sep 6, 2026
6 checks passed
@tbroadley
tbroadley deleted the fix-security-vulnerabilities branch September 6, 2026 20:12
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