node/test/wpt/status/streams.json
Matteo Collina abddfc921b
stream: fix pipeTo to defer writes per WHATWG spec
The WHATWG Streams spec requires that pipeTo's chunk handling must
queue a microtask before calling the write algorithm. This ensures
that enqueue() does not synchronously trigger writes.

Previously, PipeToReadableStreamReadRequest[kChunk] would synchronously
call writableStreamDefaultWriterWrite(), which violated the spec and
caused the WPT test "enqueue() must not synchronously call write
algorithm" to fail.

Fix by wrapping the write operation in queueMicrotask(), which defers
it to the next microtask as required by the spec.

Refs: https://github.com/whatwg/streams/issues/1243
PR-URL: https://github.com/nodejs/node/pull/61800
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Mattias Buelens <mattias@buelens.com>
2026-02-26 07:54:39 +00:00

55 lines
1.9 KiB
JSON

{
"idlharness-shadowrealm.window.js": {
"skip": "ShadowRealm support is not enabled"
},
"queuing-strategies-size-function-per-global.window.js": {
"skip": "Browser-specific test"
},
"readable-streams/cross-realm-crash.window.js": {
"skip": "Browser-specific test"
},
"readable-streams/owning-type-message-port.any.js": {
"fail": {
"note": "Readable streams with type owning are not yet supported",
"expected": [
"Transferred MessageChannel works as expected",
"Second branch of owning ReadableStream tee should end up into errors with transfer only values"
]
}
},
"readable-streams/owning-type-video-frame.any.js": {
"skip": "Browser-specific test"
},
"readable-streams/owning-type.any.js": {
"fail": {
"note": "Readable streams with type owning are not yet supported",
"expected": [
"ReadableStream can be constructed with owning type",
"ReadableStream of type owning should call start with a ReadableStreamDefaultController",
"ReadableStream should be able to call enqueue with an empty transfer list",
"ReadableStream should check transfer parameter",
"ReadableStream of type owning should transfer enqueued chunks"
]
}
},
"readable-streams/read-task-handling.window.js": {
"skip": "Browser-specific test"
},
"transferable/deserialize-error.window.js": {
"skip": "Browser-specific test"
},
"transferable/transfer-with-messageport.window.js": {
"skip": "Browser-specific test"
},
"transferable/transform-stream-members.any.js": {
"fail": {
"expected": [
"Transferring [object TransformStream],[object ReadableStream] should fail",
"Transferring [object TransformStream],[object WritableStream] should fail"
]
}
},
"transform-streams/invalid-realm.tentative.window.js": {
"skip": "Browser-specific test"
}
}