ts streams identity write settlement
Fix IdentityTransformStream behavior to correctly settle write promises
33 substantial PRs (29 merged, 7 open/draft). 4 in node, 29 in workerd.
Fix IdentityTransformStream behavior to correctly settle write promises
Release the transformer once a TransformStream finishes to prevent memory leaks
Add --process-timeout=N flag to set a time limit on a Node.js process
Fix TransformStream cancel to reject with the writable's store as per the spec
Ensure Socket(fd) respects --allow-net permission
Validate writable chunk size only when enqueued to prevent incorrect error handling
Lock a closed or errored native stream on tee() to prevent multiple teeing
Close a native stream at the handoff of its data to prevent it from staying readable forever
Releases pipe source when validation fails after locking to prevent source from being locked indefinitely
Registers pipe's AbortSignal through an abort algorithm to fix abort handling
Fixes pipe waiting for erroring destination's in-flight write to settle before backward error propagation
Queues chunk before filling reads with released bytes to follow spec
Keeps byobRequest held across tee() working by leaving the request valid after a fork
Improved default read behavior when auto-allocate chunk size is set, reducing unnecessary buffer allocations and closures.
Updated async iterator behavior to follow WebIDL spec, ensuring correct promise handling and next() settlements.
Fixed buffer transfer issue by using fixed length buffers, preventing internal RangeErrors and data loss.
Added error handling for tee branches and detached byte streams on fractional fill at close, preventing pending reads and data loss.
Allow tee() of a native body with an abandoned read in flight by running the generic KJ tee operation
Deliver whole elements from native BYOB reads with multi-byte views by exposing elementSize in the request
Return an empty view from read(view) on a cancelled byte stream to match spec and other implementations
Pin where closed settles relative to the below-min tail read to ensure consistent behavior with C++ and spec
Settle the head read first when respond() leaves a remainder to maintain correct read order
Optimize StreamQueue cursor iteration by walking by index and skipping the pinned cursor
Implement proper JS RPC stream cancel propagation to fix defects in stream handling
Buffer compression stage output in blocks to reduce memory usage
Copy body bytes as they arrive and cancel the source when consumption is complete to reduce memory usage
Updated ReadableStream.from() to follow the spec's iterator protocol in TS
Aligned the TS ReadableStream async iterator with WebIDL
Pinned SharedArrayBuffer view rejection across byte-stream entry points
Tuned re-entrancy and microtask resolution timing to align with spec and prevent user code from running in internal paths
Add a fast check to determine if a string is Latin1, improving performance over regex checks
Added options to tune histogram parameters to monitorEventLoopDelay() and fixed a truncation and doc bug.
Add perfetto for Rust to improve performance monitoring