$ the-wire · showcase
Node.js quic drops dead fin flag, zlib 1.3.2.1-motley lands
By RepoJournal · Filed · About Node.js
Node.js core shipped a cleanup in quic that removes a dead end-of-stream flag, updated zlib, and fixed async callback scoping for node-api.
The quic blob reader no longer threads a `fin` flag from `Blob::Reader::NotifyPull` into the JS iterator [1]. The flag was dead weight, since the only consumer, `if (fin) continue;`, behaved exactly like falling through, and end-of-stream is always discovered via the subsequent pull returning EOS. This simplifies `NotifyPull`'s signature, the JS iterator, and the `EndReadable` call site. Separately, zlib updated to 1.3.2.1-motley-5eb4d7e [2], and a new patch [4] makes `ZipFile.close()` finish even when a ZIP iterator is paused, while still waiting for in-flight reads. For node-api, async callbacks from `uvimpl::Work::AfterThreadPoolWork()` and thread-safe functions now enter the environment context [3], matching `CallFinalizer()`; this matters when multiple Environments share an isolate. A missing `vector` include was also added [5]. The reliability repo added its daily report for 2026-08-31 [6].
Action items
- → Review the quic blob reader change if you touched `NotifyPull` in forks or custom builds nodejs/node [monitor]
- → Watch for behavior changes in zlib ZIP iterator handling, especially with paused iterators nodejs/node [monitor]
References
- [1] quic: remove unused fin flag from blob reader wakeup ↗ nodejs/node
- [2] deps: update zlib to 1.3.2.1-motley-5eb4d7e ↗ nodejs/node
- [3] node-api: enter env context for async callbacks ↗ nodejs/node
- [4] zlib: avoid waiting for paused ZIP iterators ↗ nodejs/node
- [5] src: add missing vector include ↗ nodejs/node
- [6] Add report for 2026-08-31 ↗ nodejs/reliability