Skip to content
This repository was archived by the owner on May 27, 2026. It is now read-only.

Bump Node engine to 22 LTS to fix Heroku build - #1057

Merged
twschiller merged 1 commit into
mainfrom
fix/node-22-engine
May 27, 2026
Merged

twschiller merged 1 commit into
mainfrom
fix/node-22-engine

Conversation

@twschiller

Copy link
Copy Markdown
Owner

Summary

  • Node 18 lacks the global crypto object that serialize-javascript (pulled in via css-minimizer-webpack-plugin) requires, so the Heroku build fails in the CSS minify step with ReferenceError: crypto is not defined. Node 18 is also EOL on Heroku.
  • Bump engines.node to >=22 <23 (current LTS) and engines.npm to 10.x (the version bundled with Node 22).
  • Pin CI's setup-node to read from package.json so engine-strict: true doesn't surprise us on whatever default the runner ships.

Test plan

  • npm run build succeeds locally on Node 22+ (verified on Node 24).
  • Heroku build passes on push.
  • GitHub Actions integration workflow passes on the new Node version.

🤖 Generated with Claude Code

Node 18 lacks the global `crypto` object that serialize-javascript (via
css-minimizer-webpack-plugin) requires, causing webpack builds to fail
on Heroku. Node 18 is also EOL. Bump the npm constraint to match the
version bundled with Node 22, and pin CI to the engines field.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@twschiller
twschiller merged commit 48186cd into main May 27, 2026
4 checks passed
@twschiller
twschiller deleted the fix/node-22-engine branch May 27, 2026 18:04
@coveralls

Copy link
Copy Markdown

Coverage Status

coverage: 91.534%. remained the same — fix/node-22-engine into main

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants