Skip to content

Refresh runtime support and dependency versions#681

Open
samiashi wants to merge 3 commits intohighcharts:masterfrom
samiashi:samielachi/node-export-server-dependency-refresh
Open

Refresh runtime support and dependency versions#681
samiashi wants to merge 3 commits intohighcharts:masterfrom
samiashi:samielachi/node-export-server-dependency-refresh

Conversation

@samiashi
Copy link
Copy Markdown

@samiashi samiashi commented May 1, 2026

Summary

This PR refreshes the export server dependency stack and runtime support as a breaking v6 update.

  • sets the supported Node.js range to Node 22.13.x and Node 24.x
  • updates vulnerable/runtime dependencies, including multer 2.x and uuid 14.x
  • updates direct tooling dependencies, including ESLint 10 and Jest 30, and migrates ESLint to flat config
  • updates GitHub Actions versions and runs unit tests across the supported Node.js matrix
  • regenerates the committed dist bundles under Node 22.13.0

Notes

jsdom remains on 24.1.3 intentionally. The current 29.x line introduces ESM-only transitive modules that are not compatible with the existing Jest runtime setup, while 24.1.3 keeps audit clean and the test suite passing.

Verification

  • npm run lint
  • node --experimental-vm-modules node_modules/jest/bin/jest.js on Node 22.13.0
  • node --experimental-vm-modules node_modules/jest/bin/jest.js on Node 24.0.0
  • npm audit
  • npm audit --omit=dev
  • regenerated dist/ with Rollup on Node 22.13.0
  • loaded dist/index.cjs on Node 22.13.0 and Node 24.0.0

samiashi added 3 commits May 1, 2026 13:59
Raise the package version to 6.0.0 and set the supported Node.js runtime to Node 22.13.x and Node 24.x only.

Upgrade direct runtime dependencies including multer 2.x, uuid 14.x, Express 5.x, express-rate-limit 8.x, Puppeteer 24.x, dotenv 17.x, https-proxy-agent 9.x, and zod 4.x while keeping jsdom on the latest Jest-compatible 24.x line.

Move ESLint to the current flat-config based toolchain with ESLint 10 and eslint-plugin-import-x, keep the uuid resolver exception needed by package exports, and keep unit-test configuration explicit.

Use the named express-rate-limit export to avoid the default-import compatibility warning and update the changelog for the breaking dependency refresh.
Update the GitHub Actions workflows from checkout/setup-node v4 to the current v6 major tags.

Run build and lint jobs on the new minimum supported Node.js 22.13.0 runtime, switch ESLint installation to npm ci, and remove the deprecated set-output based ESLint handling.

Run unit tests across the supported Node.js release matrix, Node 22.13.0 and Node 24.0.0, with fail-fast disabled so both supported runtimes report independently.
Regenerate the committed CommonJS and ESM bundles from the refreshed dependency tree using Node.js 22.13.0, the minimum supported runtime.

The generated output reflects the named express-rate-limit import and keeps uuid as a normal external package import now that the runtime floor supports uuid 14.
@samiashi samiashi marked this pull request as ready for review May 1, 2026 10:05
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