Skip to content

fix: Override vulnerable minimatch and katex in lint tooling - #62

Merged
ecv merged 1 commit into
mainfrom
fix/dev-lint-dependabot-overrides
Nov 10, 2026
Merged

ecv merged 1 commit into
mainfrom
fix/dev-lint-dependabot-overrides

Conversation

@ecv

@ecv ecv commented Nov 10, 2026

Copy link
Copy Markdown
Contributor

Two Dependabot alerts flag minimatch (https://github.com/datum-cloud/cloudvalid.com/security/dependabot/105) and katex (https://github.com/datum-cloud/cloudvalid.com/security/dependabot/78). Both come in only through the lint tools, so the site never ships them. npm overrides now force minimatch 11.0.5 and katex 0.18.10, and that clears both alerts.

What changes

eslint, typescript-eslint and markdownlint-cli2 have not moved to the fixed versions yet, so the overrides do it for them. The lock file also picks up katex's newer command-line dependency and one helper package for minimatch. Nothing else in the tree moves.

The linters use no feature the new versions removed. markdownlint never loads katex at all.

Test plan

  • On Node 26.13.0, npm ci, npm run lint and npm run build pass
  • npm ls minimatch katex shows only the patched versions, and npm audit finds 0 vulnerabilities
  • Both Dependabot alerts close once this merges

Clear two Dependabot alerts on development-only lint tooling. minimatch
10.2.6 (GHSA-g3hv-75wg-m249) comes in through eslint and typescript-eslint;
katex 0.16.47 (GHSA-238p-pmpm-9mq7) comes in through markdownlint-cli2. Their
direct parents have not released versions that move to the fixed ranges, so
npm overrides pin the patched releases.

Key changes:
- Override minimatch to ^11.0.5; eslint, @eslint/config-array and
  typescript-eslint use no API that v11 removed
- Override katex to ^0.18.2 under micromark-extension-math only; markdownlint
  never loads katex, since only the HTML renderer imports it
- Lock also moves katex's commander dependency to 15.1.0 and adds
  minimatch's @isaacs/nonrecursive-glob-match; nothing else changes

The production image installs with --omit=dev, so neither package ships.
@ecv
ecv marked this pull request as ready for review November 10, 2026 14:09
@ecv
ecv requested a review from andrewb3000 November 10, 2026 14:09
@ecv

ecv commented Nov 10, 2026

Copy link
Copy Markdown
Contributor Author

Review loop. Adversary: ship. Lint checks the same 5 files with the same results before and after. The global minimatch override moves only consumers that were already on a 10.x range. Neither package is in the production install. Conventions: ship. A merge redeploys the static site to GitHub Pages, and no image or infra pin moves. Land this before #46 and #48, which already conflict and add their own overrides block, so whichever of them lands next needs its lock regenerated.

@ecv
ecv merged commit 1a82851 into main Nov 10, 2026
2 checks passed
@ecv
ecv deleted the fix/dev-lint-dependabot-overrides branch November 10, 2026 14:11
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.

2 participants