The Wire · Showcase
NODE PATCHES COMMIT QUEUE, FIXES FFI MEMORY LEAK
By RepoJournal · Filed · About Node.js
The core commit queue gained safeguards against race conditions while the FFI layer stopped leaking 58 MiB per 20,000 function calls.
Antoine du Hamel hardened Node's merge pipeline by delaying commit-queue label removal [1], preventing PRs from dropping out of the queue if the CI job times out mid-process. That's the kind of boring infrastructure fix that saves hours of debugging when things go sideways. Meanwhile, trivikr plugged a nasty FFI memory leak where lib.functions.foo was recreated on every read, allocating a fresh trampoline and ArrayBuffer each time [2]. The fix caches callables per symbol, cutting RSS bloat to near zero on hot paths. On the protocol front, pimterry began consolidating the fragmented TLS implementations across node:tls, node:dtls, and node:quic [3], eliminating the current pattern of maintaining the same logic three times over. The test runner also got benchmark coverage for hooks and test options [4], closing gaps in the performance tracking harness. 28 commits and 19 PRs across the period.
One email a day. Unsubscribe in one click.
Keep up with Node.js in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Review and merge the FFI caching fix if you maintain code calling lib.functions in loops nodejs/node [plan]
- → Watch the TLS consolidation work for breaking changes to QUIC/DTLS config nodejs/node [monitor]
References
- [1] tools: delay removal of `commit-queue` label nodejs/node
- [2] ffi: reuse the callable created per symbol ↗ nodejs/node
- [3] tls,quic: commonize TLS cert handling between tls, dtls & quic ↗ nodejs/node
- [4] benchmark: add test runner hooks and options ↗ nodejs/node