Skip to content

Fix npm/Meteor security advisories in app and ingest - #215

Merged
herchu merged 2 commits into
mainfrom
security-dep-updates
Oct 23, 2026
Merged

herchu merged 2 commits into
mainfrom
security-dep-updates

Conversation

@herchu

@herchu herchu commented Oct 23, 2026

Copy link
Copy Markdown
Member

Summary

  • ingest (15 advisories → 0): replace abandoned expr-eval (critical RCE / prototype pollution, no upstream fix) with the drop-in expr-eval-fork; jimp 0.22 → 1.6 with the costmap handler migrated to the promise API plus a new round-trip test; mocha 11 → 12, replacing the unmaintained mocha-prepare with mocha's built-in mochaGlobalSetup fixture.
  • app (44 advisories → 9): npm audit fix for every non-breaking advisory (handlebars, protobufjs, websocket-driver, plotly, lodash, js-yaml, ...); Meteor packages aldeed:collection2 4.2.2, meteortesting:mocha 3.4.0, aldeed:simple-schema 2.0.0; removed the unused, deprecated http package; rest_api.js now uses the WHATWG URL API instead of url.parse().

Deliberately not done (need major migrations)

  • react-router 6 → 8 (two moderate advisories).
  • @rspack/cli 2.x: the remaining 7 app advisories, all via dev-only webpack-dev-server, which Meteor's rspack integration does not use at runtime. Needs @meteorjs/rspack 3, still in beta.

Test plan

  • ingest: npm run test:unit → 246 passing
  • app: meteor npm test → 376 passing
  • App boots and serves locally

🤖 Generated with Claude Code

ingest (15 advisories -> 0):
- Replace abandoned expr-eval (critical RCE, prototype pollution, no
  upstream fix) with the drop-in expr-eval-fork.
- jimp 0.22 -> 1.6: migrate the costmap handler to the promise API and
  add a round-trip test for it.
- mocha 11 -> 12: replace the unmaintained mocha-prepare hook with
  mocha's built-in mochaGlobalSetup fixture.

app (44 advisories -> 9):
- npm audit fix for all non-breaking advisories (handlebars, protobufjs,
  websocket-driver, plotly, lodash, js-yaml, ...).
- Meteor packages: collection2 4.2.2, meteortesting:mocha 3.4.0,
  aldeed:simple-schema 2.0.0. Remove the unused, deprecated http package.
- rest_api: use the WHATWG URL API instead of url.parse().

Left as-is (need major migrations): react-router 6 -> 8, and the
dev-only @rspack/cli 2.x chain (requires @meteorjs/rspack 3, still beta).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@herchu
herchu requested a review from a team as a code owner October 23, 2026 18:08
@netlify

netlify Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for ornate-croquembouche-cc5482 canceled.

Name Link
🔨 Latest commit 18e32b2
🔍 Latest deploy log https://app.netlify.com/projects/ornate-croquembouche-cc5482/deploys/6adba3668017824b552e8c62

mocha-junit-reporter 2.2.1 (latest) is incompatible with mocha 12
("Class constructor Base cannot be invoked without 'new'"). Mocha's
bundled xunit reporter emits a single <testsuite> root, which
dorny/test-reporter's java-junit parser accepts.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@herchu
herchu merged commit 50f2f6f into main Oct 23, 2026
8 checks passed
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