Releases: webrtc-node/webrtc
Releases · webrtc-node/webrtc
Release list
v0.2.1
Changes
- Fix native peer teardown so an unclosed
RTCPeerConnectionwith a created data channel no longer keeps the Node.js process alive. - Drop late native
datachannelcallbacks afterRTCPeerConnection.close()and close attached native channels during cleanup. - Stabilize the UDP mux close-delivery regression assertion that runs before the full Conformance matrix.
Validation
- CI required: passed on
main - CodeQL C/C++ and JavaScript/TypeScript: passed on
main - Full Conformance: passed on the
v0.2.1tag - Release workflow: passed, including all prebuild targets, checksum assets, and npm publication with provenance
- Published Install: passed for Linux glibc/musl, macOS x64/arm64, and Windows x64/arm64
v0.2.0
Highlights
- Adds the typed
nonstandardnamespace for focused libdatachannel extensions: ICE UDP mux listener, pre-construction peer configuration, explicit local ICE credentials, remote fingerprint access, and PEM certificate import. - Keeps the W3C-facing
RTCPeerConnection,RTCDataChannel, andsetLocalDescription()behavior unchanged. - Documents implementation-specific APIs under
docs/nonstandard.mdand records the W3C compatibility boundary indocs/divergences.md. - Adds focused tests and TypeScript coverage for the new nonstandard surface.
Validation
- CI required: passed on
main - CodeQL C/C++ and JavaScript/TypeScript: passed on
main - Feature-branch Conformance: passed before release prep
v0.1.7
Changes
- Preserve FIFO message delivery when a native
RTCDataChannelbatch arrives while older messages are queued for JavaScript dispatch. - Improve Windows host-runtime compatibility, including delayed Node symbol resolution for Bun and other compatible hosts.
- Stabilize Windows native dependency caching and ARM64 release builds.
- Add sharded conformance execution and harden CI evidence validation.
- Tighten release automation defaults while preserving npm trusted publishing and provenance.
Validation
The release passed the full pull-request and post-merge CI matrix across Linux, macOS, Windows, Node.js 20/22/24, Windows ARM64, Chrome E2E, WPT smoke, package artifact validation, and both CodeQL language analyses.
The version tag starts the independent full Conformance workflow; publication does not wait for that long-running matrix.
v0.1.6
Changes
- verify release prebuilds with SHA-256 checksums before installation
- reject malformed archives and wrong OS, architecture, or Linux libc targets
- install validated native addons atomically
- strengthen required CI and independent JavaScript/C++ CodeQL analysis
- keep strict tag Conformance as independent release evidence instead of blocking publication
No public WebRTC API changes are included.
Full Changelog: v0.1.5...v0.1.6
v0.1.5
v0.1.4
v0.1.3
v0.1.2
What's Changed
Fixes
- Forward RTCIceServer.username and credential to libdatachannel.
- Authenticated TURN servers now work correctly for peers behind restrictive NAT or hosted environments.
Full Changelog: v0.1.1...v0.1.2
v0.1.1
v0.1.0
Stable release candidate promoted from the v0.1.0.alpha.
Performance Improvements
- Reduced binary data-channel send overhead.
- Reduced binary message copies in the native bridge.
- Added native batching for data-channel message dispatch.
- Improved data-channel message throughput and setup latency.
- Sped up peer setup and data-channel ID checks.
- Deferred native data-channel close handling to reduce close-path overhead.
Correctness Fixes
- Preserved data-channel batch ordering.
- Fixed empty message batch flush indexing.
- Restored per-send
bufferedAmountbehavior. - Synced
bufferedAmountduring paired local delivery. - Stabilized data-channel close timing.
- Gated initial data-channel messages so early bursts are delivered correctly.
- Fixed message listeners added during
onmessageso they receive later messages in the same burst.
Native Layer
- Improved Node-API event dispatch internals.
- Batched native data-channel message events before crossing into JavaScript.
- Reduced ArrayBuffer copying by moving binary payload ownership into the JavaScript-facing event object.
- Tuned libdatachannel configuration for the data-channel profile.
Testing
- Added regression coverage for message listeners registered during message dispatch.
- Kept the selected WPT data-channel profile as the conformance target.
Full Changelog: v0.1.0-alpha.0...v0.1.0