Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: eb724e8b508bfd8d17bd76d33ce5d3992b292274
https://github.com/WebKit/WebKit/commit/eb724e8b508bfd8d17bd76d33ce5d3992b292274
Author: Youenn Fablet <[email protected]>
Date: 2025-12-01 (Mon, 01 Dec 2025)
Changed paths:
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-including-empty-chunk.any-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-including-empty-chunk.any.serviceworker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-including-empty-chunk.any.sharedworker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-including-empty-chunk.any.worker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-large-flush-output.any-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-large-flush-output.any.serviceworker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-large-flush-output.any.sharedworker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-large-flush-output.any.worker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-multiple-chunks.any-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-multiple-chunks.any.serviceworker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-multiple-chunks.any.sharedworker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-multiple-chunks.any.worker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-stream.any-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-stream.any.serviceworker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-stream.any.sharedworker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/compression/compression-stream.any.worker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/async-iterator.any-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/async-iterator.any.serviceworker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/async-iterator.any.sharedworker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/async-iterator.any.worker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/patched-global.any-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/patched-global.any.serviceworker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/patched-global.any.sharedworker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/patched-global.any.worker-expected.txt
M Source/WebCore/Modules/streams/ReadableStream.cpp
M Source/WebCore/Modules/streams/ReadableStream.h
M Source/WebCore/Modules/streams/ReadableStream.idl
M Source/WebCore/Modules/streams/ReadableStreamDefaultReader.h
M Source/WebCore/bindings/js/JSDOMAsyncIterator.h
M Source/WebCore/bindings/js/JSDOMIterator.h
M Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
M Source/WebCore/bindings/scripts/test/JS/JSTestAsyncIterable.cpp
M
Source/WebCore/bindings/scripts/test/JS/JSTestAsyncIterableWithoutFlags.cpp
M Source/WebCore/bindings/scripts/test/JS/JSTestAsyncKeyValueIterable.cpp
M Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp
M Source/WebCore/bindings/scripts/test/JS/JSTestIterable.cpp
M Source/WebCore/bindings/scripts/test/JS/JSTestNode.cpp
M Source/WebCore/bindings/scripts/test/TestAsyncIterable.idl
Log Message:
-----------
Add a basic implementation of ReadableStream async iterable
rdar://165605714
https://bugs.webkit.org/show_bug.cgi?id=303302
Reviewed by Chris Dumez.
We add a basic ReadableStream Iterator implementation.
As per https://streams.spec.whatwg.org/#rs-asynciterator, we implement the init
steps and the get next iteration result steps.
A follow-up will implement the return steps.
This is implemented in ReadableStream::Iterator class which takes a reader from
its stream.
Given it might throw, we add support for throwing in iteratorCreate.
To do so, we create the internal iterator and pass it to JSDOMIteratorBase or
JSDOMAsyncIteratorBase.
We add support for passing parameters to the iterator creation steps and make
use of it for passing ReadableStreamIteratorOptions.
We do not yet support converting iterator creation parameters, the binding
generator only creates default values (in this case preventCancel = false).
This will be fixed in a follow-up.
We also update the binding generator to not expose the entries and keys methods
for async iterables that are not key value.
We do not do so for sync iterator since that would break FontFaceSet (which
should be moved to setlike).
We update the binding generator according the new iteratorCreate function.
Covered by rebased WPT tests and rebased binding tests.
Canonical link: https://commits.webkit.org/303734@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications