Skip to content

Add multi-version Node.js testing to CI - #492

Merged
theturtle32 merged 4 commits into
v2from
add-multiversion-node-testing
Oct 6, 2025
Merged

Add multi-version Node.js testing to CI#492
theturtle32 merged 4 commits into
v2from
add-multiversion-node-testing

Conversation

@theturtle32

Copy link
Copy Markdown
Owner

Summary

Configures GitHub Actions to test the WebSocket-Node library across multiple Node.js versions to ensure broad compatibility.

Node.js versions tested:

  • ✅ Node.js 16.x (EOL but still widely used)
  • ✅ Node.js 18.x (Active LTS)
  • ✅ Node.js 20.x (Active LTS)
  • ✅ Node.js 22.x (Current release)

Additional CI improvements:

  • Added browser tests to CI pipeline (test:browser:chromium)
  • Set fail-fast: false to run all versions even if one fails
  • Added descriptive step names for better CI logs

Test coverage per Node.js version:

  • 616 unit/integration tests
  • 12 browser tests (Chromium)
  • 517 Autobahn protocol compliance tests
  • Total: 1,145 tests per version

Test plan

This PR will automatically run the new multi-version CI workflow. Once GitHub Actions completes, we can verify:

  • ✅ All tests pass on Node.js 16.x, 18.x, 20.x, and 22.x
  • ✅ Browser tests work across versions
  • ✅ Autobahn compliance maintained across versions

Expected CI duration: ~5-7 minutes per Node.js version

🤖 Generated with Claude Code

Configure GitHub Actions to test on multiple Node.js versions:
- Node.js 16.x (EOL but still in use)
- Node.js 18.x (LTS)
- Node.js 20.x (LTS)
- Node.js 22.x (Current)

Additional improvements:
- Add browser tests to CI pipeline
- Set fail-fast: false to test all versions
- Add descriptive step names

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@gemini-code-assist

Copy link
Copy Markdown

Note

Gemini is unable to generate a summary for this pull request due to the file types involved not being currently supported.

Focus on Node.js compatibility matrix testing only.
Browser tests can be added to CI in a separate workflow later.
Node.js 16.x reached EOL in September 2023 and Vitest/Vite
no longer support it (crypto.getRandomValues compatibility issue).

Testing on actively supported LTS versions:
- Node.js 18.x (Active LTS)
- Node.js 20.x (Active LTS)
- Node.js 22.x (Current)
@theturtle32
theturtle32 merged commit 56e4f28 into v2 Oct 6, 2025
3 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.

2 participants