Taym Haddadi
fc2135cc02
implement Writablestreamdefaultcontroller abortcontroller ( #37511 )
...
using abort signal and abortcontroller in
Writablestreamdefaultcontroller
Part of https://github.com/servo/servo/issues/34866
---------
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
2025-06-18 15:26:05 +00:00
Gregory Terzian
730fe35b42
AbortController: integrate with stream piping. ( #37244 )
...
Start using abort signal in Use in
https://streams.spec.whatwg.org/#readablestream-pipe-to-signal
Part of https://github.com/servo/servo/issues/34866
Will also cover https://github.com/servo/servo/issues/37230 and
https://github.com/servo/servo/issues/37232
---------
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
2025-06-13 09:52:38 +00:00
Gregory Terzian
324196351e
script: stub AbortSignal
( #37033 )
...
This is a stub for `AbortSignal`, which we would like to merge first in
order to work in parallel on
https://github.com/servo/servo/issues/34866 , and perhaps also
https://github.com/servo/servo/issues/36936
---------
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
Co-authored-by: Taym Haddadi <haddadi.taym@gmail.com>
2025-05-27 09:53:43 +00:00
Taym Haddadi
5b2305784a
Stream implement pipeThrough ( #36977 )
...
Part of https://github.com/servo/servo/issues/34676
https://github.com/servo/servo/pull/36905 needs to be merged first.
---------
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
2025-05-20 14:33:22 +00:00
Taym Haddadi
62569979ff
Make transform stream transferrable ( #36905 )
...
Part of https://github.com/servo/servo/issues/34676
#36739 needs to be merged first.
---------
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
2025-05-12 16:02:06 +00:00
Servo WPT Sync
6cd44061d7
Sync WPT with upstream (11-05-2025) ( #36954 )
...
Automated downstream sync of changes from upstream as of 11-05-2025
[no-wpt-sync]
Signed-off-by: WPT Sync Bot <ghbot+wpt-sync@servo.org>
2025-05-11 01:41:53 +00:00
Taym Haddadi
f3f4cc5500
Script implement TransformStream and TransformStreamDefaultController ( #36739 )
...
Part of https://github.com/servo/servo/issues/34676
---------
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Co-authored-by: gterzian <2792687+gterzian@users.noreply.github.com>
2025-05-08 08:45:57 +00:00
Servo WPT Sync
e22ce3988b
Sync WPT with upstream (27-04-2025) ( #36708 )
...
Automated downstream sync of changes from upstream as of 27-04-2025
[no-wpt-sync]
Signed-off-by: WPT Sync Bot <ghbot+wpt-sync@servo.org>
2025-04-27 02:05:07 +00:00
Gregory Terzian
57b0a3f231
Streams: fix writable transfer sink abort steps ( #36638 )
...
Fixes an error where a promise was rejected where it should have been
resolved.
Follow-up to
https://github.com/servo/servo/pull/36588/files#r2049437506 ; the initial
diagnosis was wrong.
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
2025-04-22 06:49:18 +00:00
Gregory Terzian
fc201927ae
Streams: make writable streams transferrable ( #36588 )
...
Making writable streams transferrable, part of
https://github.com/servo/servo/issues/34676
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
2025-04-18 08:33:36 +00:00
Taym Haddadi
f2ee40e40b
fix writablestream assertion crash when getting chunk size following spec change ( #36566 )
...
One-line change to align with the new spec and avoid a crash.
fix #36565
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
2025-04-16 18:26:38 +00:00
Kingsley Yung
dacd951c9f
Make DOMException serializable ( #36535 )
...
Follow the implementation of making DOMPoint and DOMPointReadOnly
serializable in PR #35989
Testing: Passed a test previously expected to fail.
Fixes : #36463
---------
Signed-off-by: Kingsley Yung <kingsley@kkoyung.dev>
2025-04-15 13:25:31 +00:00
Gregory Terzian
f8b6b9f7b6
Transfer ReadableStream ( #36181 )
...
<!-- Please describe your changes on the following line: -->
Add transfer support to ReadableStream. Part of
https://github.com/servo/servo/issues/34676
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by
`[X]` when the step is complete, and replace `___` with appropriate
data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #___ (GitHub issue number if applicable)
<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because ___
<!-- Also, please make sure that "Allow edits from maintainers" checkbox
is checked, so that we can help you if you get stuck somewhere along the
way.-->
<!-- Pull requests that do not address these steps are welcome, but they
will require additional verification as part of the review process. -->
---------
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
2025-04-15 07:39:26 +00:00
Servo WPT Sync
bd43b78735
Sync WPT with upstream (06-04-2025) ( #36369 )
...
Automated downstream sync of changes from upstream as of 06-04-2025
[no-wpt-sync]
Signed-off-by: WPT Sync Bot <ghbot+wpt-sync@servo.org>
2025-04-06 04:11:16 +00:00
Gregory Terzian
8d39d7706a
Streams: Implement stream pipe-to ( #35650 )
...
* implement PipeTo, stub pipe_to
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* define a data structure to manage the piping
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement propagation of errors forward and backward, stub shutdown and shutdown with action
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* adding more fine-grain shutdown variants to state
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement progagate closing backward and forward
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement shutdown and actions
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement reading and writing
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement shutdown continuation and finalize
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix typo
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add can_gc arguments
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement writer close with error propagation
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* move and document wait on pending write
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* more docs
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* write pending reads as part of shutdown
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* turn on piping test suite
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add comment about using Rust api
improve comment on result
add comment on backpressure
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix multiple propagations
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix writing of chunks
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix error and close propagation
update test expectations
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix warnings
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* improve docs
remove redundant logic in pending writes
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix clippy
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove unnecessary expansion of visibility of enqueued value to_jsval
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove unnecessary conditional accessing of streams when propagating states
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* improve docs
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove unused result var
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix typo
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove redundant logic dealing with closed sources with pending writes
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add doc links for shutdown actions
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add comments on the need to return early when shutting down before checking close and error states
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fmt
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* Update test expectations
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix can_gc
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
---------
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
Co-authored-by: Taym Haddadi <haddadi.taym@gmail.com>
2025-03-18 11:13:09 +00:00
Taym Haddadi
a5cf04c479
script: implement ReadableByteStreamController ( #35410 )
...
* script: implement ReadableByteStreamController
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* implement can_copy_data_block_bytes and copy_data_block_bytes
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Remove BufferSource::Default
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* implement StartAlgorithmFulfillmentHandler, StartAlgorithmRejectionHandler, PullAlgorithmFulfillmentHandler, PullAlgorithmRejectionHandler for ReadableByteStreamController
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* implement perform_pull_into
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix build
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix clippy
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix build
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Remove RefCell from PullIntoDescriptor and QueueEntry
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Remove commented code
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* add perform_cancel_steps, perform_release_steps and perform_pull_steps
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix clippy
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix crown
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* unskip readable-byte-streams
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix CRASH
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix clippy
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix more CRASHS
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix more crashes
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix bad-buffers-and-views.any.js test
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Update test expectations
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix BorrowMutError crashes
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix view_byte_length test
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix non-transferable-buffers test
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Pass contexts as much as possible by reference
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Make respond_internal Fallible
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix crwon
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix process pull into descriptors using queue logic and resulting double-borrow
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* Fix clippy
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* FIx more crashes
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix timeout tests
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix all tests
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Remove all error! logs
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Remove #[allow(unsafe_code)]
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix lint
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix tidy
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix test expectation
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
---------
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Co-authored-by: gterzian <2792687+gterzian@users.noreply.github.com>
2025-03-10 19:43:04 +00:00
Gregory Terzian
df6d636168
dom: Implement WritableStream
( #34844 )
...
* add basic interface for writable stream
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add stubs for pipeTo and pipeThrough methods
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add stubs for writable stream defautl writer
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add stubs for writable stream controller
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add underlying source dict
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add underlying source dict
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement constructor
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement init writable stream
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* impl setup default controller
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement controller setup
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement controller advance queue if neededd
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement stream finish erroring
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement stream reject close and closed promise if needed
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* finish implementation of stream finish erroring
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* call into controller setup from stream constructor
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement stream mark first write request in flight
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement controller process write
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* call into advance queue if needed at various points
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement stream deal with rejection, use from_safe_context
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement controller clear algorithms
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove unused todo
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement stream start erroring
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* finish writer ensure ready promise rejected
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement stream finish in flight write request
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement write constructor and setup
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement controller error
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove unnecessary unsafe code
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* finish implementing process write
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement close sentinel
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement public locked
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement stream abort
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement stream close
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement controller close
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix use of crown
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove unnecessary options around writer promises
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement writer get desired size
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement writer ready
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement writer abort
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement writer close
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement writer release lock
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement writer public write
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement private writer write
Uses ai
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement writer release.
Uses ai
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* impl controller process close
Uses ai
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* finish controller process close
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* root promise handlers
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* handler errors in stream and writer constructor
finish implementation of stream finish in flight close
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix warnings
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement controller get chunk size
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* tidy the webidls
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement stream get writer
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix assertion of stream state when advancing queue if needed
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add docs for value with size
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* use reject_error in abort
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove unnecessary allowances of unsafe code
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* turn writable-streams test suite on
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* update encodings test expectations
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* properly check if type is set on sink in stream constructor
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix double borrow in controller advance queue if needed
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* make the queue aware of the close sentinel when dequeuing a value
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix assertion of no backpressure in update backpressure
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* also clear strategy size when clearing algorithms
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove this object arg when calling into strategy size
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix has operations marked in flight
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix typo in has in flight write request
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* turn error into no-op when aborting a stream, if the stream is closed or errored.
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix error handling of calling into abort algorithm
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix error handling of calling into close and write algorithms
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix double borrow on queue
fix logic in update_backpressure
fix logic in get_desired_size
fix logic in writer setup
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* update test expectations for aborting suite
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix controller get_backpressure
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix clippy
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* update test expectations to expect errors in tests using unsupported apis
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix error handling of calling into start algo in controller setup
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* update test expectations for test checking for undefined this in strategy size call
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* update test expectation to timeout for response-stream-with-broken-then.any.worker
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* update interfaces
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix use of global() and error to_jsval
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix use of crown for promise handlers
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove fail expectation from worker interface objects test
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove fail expectation for test expecting this to be undefined in callback
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix documentation link for writablestream state
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* refactor write_requests to use a vec deque
uses ai
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove unnecessary doc
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* refactor reject_close_and_closed_promise_if_needed to take a safe js context as argument
uses ai
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* pass globals and contexts by ref where possible
uses ai
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix doc link for controller
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove unnecessary comment
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* change update_backpressure to be a method of the writablestream
uses ai
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* rename writer method that resolve closed and ready promise for clarity
uses ai
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add comments for steps in peek queue value
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix doc link for the abort algorihtm fulfillment handler
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix step doc and variable name in abort algo rejection handler
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* Add must_root to pending abort request
Co-authored-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Gregory Terzian <2792687+gterzian@users.noreply.github.com>
* limit visibility to crate for has_operations_marked_inflight
Co-authored-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Gregory Terzian <2792687+gterzian@users.noreply.github.com>
* limit visibility to crate for get_stored_error
Co-authored-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Gregory Terzian <2792687+gterzian@users.noreply.github.com>
* remove potention re-borrow risk in reject loop on write requests in finish_erroring
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove potential re-borrow risk when taking pending abort request in finish_erroring
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove potential re-borrow risk when taking close request in reject_close_and_closed_promise_if_needed
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove re-borrow risks in finish_in_flight_close
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove re-borrow risk on in_flight_close_request in finish_in_flight_close_with_error
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove unnecessary clone of of reason in abort
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix condition on backpressure and a writable state in close
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* limit visibility to crate for update_backpressure
Co-authored-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Gregory Terzian <2792687+gterzian@users.noreply.github.com>
* remove mutability of reason in abort workflow
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove unnecessary use of ignore_malloc_size_of around Dom in controller
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix ignore malloc size of comment for strategy size
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* reduce visibility of public methods to crate in controller
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove use of JS_GetPendingException in controller get_chunk_size
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* return early on error in write
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* use is_some_and in assertion that stream.witer is writer in release
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* root pending abort request
uses ai
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix mutable re-borrow risk in writer
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
---------
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Gregory Terzian <2792687+gterzian@users.noreply.github.com>
Co-authored-by: Josh Matthews <josh@joshmatthews.net>
2025-02-19 13:02:14 +00:00
Gregory Terzian
379bbb41dd
Dom: Re-implement ReadableStream
Part 1 : Default Reader
and Controller
( #34064 )
...
* Re-implement readablestream: basics and default reader and controller
---------
Co-authored-by: Jason Tsai <jason@pews.dev>
Signed-off-by: Wu Wayne <yuweiwu@pm.me>
Add remaining WebIDLs of ReadableStream (#32605 )
* Add Reader's WebIDL files
* Add necessary methods in ReadableStream.webidl
Signed-off-by: Wu Wayne <yuweiwu@pm.me>
Create safe wrapper for JSFunctions (#32620 )
* Create safe wrapper for JSFunctions
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
* Add assert to check if the name ends in a null character
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
* Create macro to wrap unsafe extern "C" function calls
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
* Remove WRAPPER_FN
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
* Add macro example documentation
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
* Use C-string literals
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
* Ensure name is Cstr type
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
* Scope #[allow(unsafe_code)]
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
---------
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
Signed-off-by: Wu Wayne <yuweiwu@pm.me>
Start implementation of default controller and reader
Start implementation of default controller and reader
* implement basic internal slots, with todos
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* enum for controller
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* re-implement native controller methods
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add calling into pull algo
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* more details on chunk enqueuing
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add fulfill read request, clean-up warnings
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* read request and reader typing
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* allow for more than one non-native underlying source type
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add todo for should pull
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add underlying source dom struct container
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove rc around source type
* add default controller init in stream constructor
* setup source container with prototype of source dict
* clean-up docs, dispatch of controller in pull algo call
* turn off SM streams
* remove prototype setting on underlying source container
* fix read request promise resolving
* tidy
* clean-up js conversions in read req handlers
* add queue with sizes concept
* use dom in pull promise handlers
* Demonstrate using dictionary as callback this object.
* move value with size to a struct
* fmt
* put readable stream state in a cell
* nits in expectations
* remove allow unroot by passing read result directly to promise resolving
* tidy
* root default controller inside call_pull_if_needed
---------
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Co-authored-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Wu Wayne <yuweiwu@pm.me>
ReadableStream: implement Cancel and Locked (#33136 )
* implement Locked
* implement Cancel and close
Signed-off-by: Wu Wayne <yuweiwu@pm.me>
Add GetPromiseIsHandled and SetAnyPromiseIsHandled to Promise
Signed-off-by: Taym <haddadi.taym@gmail.com>
mach fmt
Signed-off-by: Taym <haddadi.taym@gmail.com>
Readablestream default controller: get desired size (#33497 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
stream: implement controller close (#33498 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
implement stream default controller error (#33503 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Readablestream default controller: enqueue (#33528 )
* Implement ReadableStreamDefaultControllerMethods::Enqueue
Signed-off-by: Wu Wayne <yuweiwu@pm.me>
* Add spec comments
Signed-off-by: Wu Wayne <yuweiwu@pm.me>
---------
Signed-off-by: Wu Wayne <yuweiwu@pm.me>
readablestream default controller: fulfill read requests (#33542 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Fix extract_size_algorithm (#33561 )
Signed-off-by: Wu Wayne <yuweiwu@pm.me>
Readablestream default controller: use strategy size (#33551 )
* readablestream default controller: use strategy size, fallible enqueue
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
docs
* readablestream default controller: clear strategy size
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* prevent potential re-borrow panics when calling into the strategy size
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* document readablestream constructor
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
---------
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Readablestream: impl default controller should pull, start algo (#33586 )
* implement should-pull algo for default controller
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add start algorithm setup for default controller
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
---------
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
implement promise native handling for start and pull algorithms (#33603 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Implement ReadableStreamDefaultReader (#33160 )
* Implement ReadableStreamDefaultReader
Make the stream mutable
readable-stream-reader-generic-release
Proper error types when releasing
Closed
Cancel
Signed-off-by: Taym <haddadi.taym@gmail.com>
* follow the spec more closely
Signed-off-by: Taym <haddadi.taym@gmail.com>
---------
Signed-off-by: Taym <haddadi.taym@gmail.com>
Implement ReadableStreamDefaultReader read (#34007 )
* Implement ReadableStreamDefaultReader read
Signed-off-by: Taym <haddadi.taym@gmail.com>
* Perform readRequest’s error steps with stream.stored_error
Signed-off-by: Taym <haddadi.taym@gmail.com>
---------
Signed-off-by: Taym <haddadi.taym@gmail.com>
Improve ReadableStreamDefaultReader close (#34014 )
* improve ReadableStreamDefaultReader close
Signed-off-by: Taym <haddadi.taym@gmail.com>
* remove resolve_closed_promise
Signed-off-by: Taym <haddadi.taym@gmail.com>
---------
Signed-off-by: Taym <haddadi.taym@gmail.com>
Use Rc<Box<[u8]>> for queue to optimize get_in_memory_bytes
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
* Improve read_a_chunk and stop_reading implemntation (#34077 )
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Implement ReadableStreamDefaultReader::Constructor (#34056 )
* Implement ReadableStreamDefaultReader::Constructor
Signed-off-by: Taym <haddadi.taym@gmail.com>
* make start_reading returns ReadableStreamDefaultReader
Signed-off-by: Taym <haddadi.taym@gmail.com>
* Fix can_gc
Signed-off-by: Taym <haddadi.taym@gmail.com>
* Add canGc to ReadableStream::GetReader
Signed-off-by: Taym <haddadi.taym@gmail.com>
---------
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Readablestream fix CanGc (#34080 )
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* correct ReadableStream::error_native implementation and fix clippy warnings (#34088 )
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* turn assertion of stream present on controller on a early return with false (#34097 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix already mutably borrowed crash (#34105 )
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Refactor `get_in_memory_bytes` to return `Option<Vec<u8>> and avoid `unreachable!` panic (#34123 )
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Set ReadableStream ReadableStreamDefaultReader in start_reading (#34125 )
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix Unhandled rejection with value: object `TypeError: stream is not locked` (#34204 )
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix assert!(self.is_readable()) crash in ReadableStream::close (#34207 )
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix call to to_js_object in underlying source algos (#34098 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* do not assume presence of a stream when performing pull steps (#34244 )
* do not assume presence of a stream when performing pull steps
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add doc comments
Co-authored-by: Taym Haddadi <haddadi.taym@gmail.com>
Signed-off-by: Gregory Terzian <2792687+gterzian@users.noreply.github.com>
---------
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Gregory Terzian <2792687+gterzian@users.noreply.github.com>
Co-authored-by: Taym Haddadi <haddadi.taym@gmail.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* gracefully handle failure of underlying source algorithms (#34243 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* ensure result of calling start algo is an object (#34245 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* return js failed error if underlying source constructor threw (#34246 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Use JSVal for ValueWithSize::value (#34259 )
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix release reader lock, (#34255 )
fix setting stream on controller in new,
fix matching fallthrough,
reduce visibility of controller error method
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* in stream cancel, reject promist if locked (#34271 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix UnderlyingSourceContainer::call_start_algorithm (#34277 )
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* implement controller cancel steps, fix stream cancel method (#34301 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix conditional in perform pull steps (#34324 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* set reader closed promise to one resolved with undefined if stream closed on init (#34321 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix init of stream and controller (#34323 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Stream: Fix reborrow in controller enqueue, and fix error and exception handling. (#34338 )
* fix re-borrow in controller enqueue
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* do not call to_jsval on JSFailed error in enqueue
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix error and exception handling in controller enqueue
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* remove TODO about correctness of stored error, since this was done as part of the switch to a js val.
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
---------
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Stream: Fix incorrect "this" object in underlying source callbacks (#34368 )
* in controller close, throw type error if stream cannot be closed
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* store original js object for underlying source, for use as this object in callbacks
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
---------
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix conditional logic in enqueue to ensure pull is called into (#34375 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Stream: Fix bytelength queueing strategy (#34376 )
* fix handling of value that is not an object in bytelength queuing strategy
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* return type error if strategy size call fails, to prevent panic because no exception is pending
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
---------
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* set correct default count queuing size strategy (#34389 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* use proto in stream constructor (#34441 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix edge cases in get_desired_size (#34440 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Stream: fix algo and strategy calls error handling. (#34424 )
* fix error handling in cancel steps
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* in pull steps, reject promise if pull algo throws
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* if start algorithm fails, rethrow the error
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* when the strategy size fails, directly get the pending exception and use it to error the stream
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add error handling to enqueue value with size
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* when enqueueing a value errors, ensure we error and stream with the same error used to throw an exception
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
---------
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix native use of streams (#34468 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Implement readablestreamdefaulttee (#34405 )
* Implement readablestreamdefaulttee
Signed-off-by: Taym <haddadi.taym@gmail.com>
* Create UnderlyingSourceType::Tee each stream
Signed-off-by: Taym <haddadi.taym@gmail.com>
* Use Dom instead of DomRoot
Signed-off-by: Taym <haddadi.taym@gmail.com>
* Queue a microtask for readRequest chunk steps
Signed-off-by: Taym <haddadi.taym@gmail.com>
* fix create_readable_stream
Signed-off-by: Taym <haddadi.taym@gmail.com>
* Remove unnecessary Rc
Signed-off-by: Taym <haddadi.taym@gmail.com>
* Use correct doc link
Signed-off-by: Taym <haddadi.taym@gmail.com>
* Add #[allow(crown::unrooted_must_root)]
Signed-off-by: Taym <haddadi.taym@gmail.com>
* Fix crash in ClosedPromiseRejectionHandler
Signed-off-by: Taym <haddadi.taym@gmail.com>
* reflect TeeReadRequest and TeeUnderlyingSource
Signed-off-by: Taym <haddadi.taym@gmail.com>
* fix can_gc
Signed-off-by: Taym <haddadi.taym@gmail.com>
* reflect tee source, and fix use of mutable dom for tee source and request
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* Fix typo that resolves multiple test failures in 'Tee' tests
Signed-off-by: Taym <haddadi.taym@gmail.com>
* Fix readable-streams/tee.any.js test
Signed-off-by: Taym <haddadi.taym@gmail.com>
---------
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Co-authored-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Align ReadableStreamDefaultReader with spec and fix additional tests in default-reader.any.js (#34531 )
And fix crate::DomTypeHolder usage
* Align ReadableStreamDefaultReader with spec and fix additional tests in default-reader.any.js
Signed-off-by: Taym <haddadi.taym@gmail.com>
* make reader rooted in Constructor and acquire_default_reader
Signed-off-by: Taym <haddadi.taym@gmail.com>
* Remove spaces
Signed-off-by: Taym <haddadi.taym@gmail.com>
---------
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Streams: fetch stream chunks should be uint8 arrays (#34553 )
* fetch stream chunks should be uint8 arrays
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* fix clippy
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
---------
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
Co-authored-by: Taym Haddadi <haddadi.taym@gmail.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Update wpt test for ReadableStream reimplementation (#34579 )
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix ignore_malloc_size_of in readablestream tee (#34578 )
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Remove incorrect use of handle array, fail test safely by giving only one reason (#34560 )
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Update more wpt test for ReadableStream reimplementation (#34598 )
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix doc and rename Tee to DefaultTee (#34612 )
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix: Address review comments
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Update response-stream-with-broken-then.any.js.ini test expectation
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix reflect_dom_object can_gc
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix compositeReason for DefaultTeeUnderlyingSource (#34627 )
* Fix compositeReason for DefaultTeeUnderlyingSource
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Update test
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
---------
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Last fixes stream (#34636 )
* remove now unsused from_js method of readable stream
* fix documenation of error steps
* return type error instread of panicking on a todo, when trying to construct a stream of type bytes
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
---------
Signed-off-by: Gregory Terzian <2792687+gterzian@users.noreply.github.com>
* fix crown rooting related errors (#34662 )
Signed-off-by: Gregory Terzian <2792687+gterzian@users.noreply.github.com>
---------
Signed-off-by: Taym <haddadi.taym@gmail.com>
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
Signed-off-by: Gregory Terzian <2792687+gterzian@users.noreply.github.com>
Co-authored-by: Wu Wayne <yuweiwu@pm.me>
Co-authored-by: Taym Haddadi <haddadi.taym@gmail.com>
2024-12-17 21:14:00 +00:00
Servo WPT Sync
c3a58f9c16
Update web-platform-tests to revision b'bf49dde84c5f05613115d6146d109f0ec3900694' ( #34483 )
...
Signed-off-by: WPT Sync Bot <ghbot+wpt-sync@servo.org>
2024-12-05 05:23:07 +00:00
Servo WPT Sync
468f9cf014
Update web-platform-tests to revision b'6d461cc41e1a9951e1991a94f651e389b0ca24ba' ( #34360 )
...
Signed-off-by: WPT Sync Bot <ghbot+wpt-sync@servo.org>
2024-11-24 01:40:36 +00:00
Servo WPT Sync
a7bf099cb1
Update web-platform-tests to revision b'f2cdcb7e9550e74d07ed6cf17bbcb9643aeedb99' ( #32381 )
2024-05-26 03:58:17 +00:00
Samson
eb7484de5e
Update web-platform-tests to revision b'86de4ffa4e439098e05f05de7d8cae1c24ff84fb' ( #32200 )
...
Co-authored-by: Servo WPT Sync <josh+wptsync@joshmatthews.net>
2024-05-01 15:47:11 +00:00
Servo WPT Sync
914fe64fc7
Sync WPT with upstream (03-12-2023) ( #30814 )
...
* Update web-platform-tests to revision b'dd47ca67f55ac9df45235b2335200fb885dd1357'
* Update test expectations
---------
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
2023-12-06 17:45:20 +00:00
Servo WPT Sync
139df1c73b
Sync WPT with upstream (26-11-2023) ( #30783 )
...
* Update web-platform-tests to revision b'a59ba94da3f2638beee8950e423c5fedfe02e809'
* Update expectations
* Update expectations again
---------
Co-authored-by: sagudev <16504129+sagudev@users.noreply.github.com>
2023-11-27 15:50:45 +00:00
Servo WPT Sync
c06ec90151
Sync WPT with upstream (04-10-2023) ( #30493 )
...
* Update web-platform-tests to revision b'dfda99176a5d552fb1129fa353b7e4c69f6ed92c'
* fix linter errors after WPT import
Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* Update expectations
---------
Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>
Co-authored-by: sagudev <16504129+sagudev@users.noreply.github.com>
2023-10-06 00:51:48 +00:00
Servo WPT Sync
5cfa80e86f
Sync WPT with upstream (20-08-2023) ( #30143 )
...
* Update web-platform-tests to revision b'50e91f3cfd1140cafc188516488f2dca289239af'
* Delete flaky result for css2/linebox/vertical-align-baseline-002
* Delete flaky result for html/rendering/bindings/the-textarea-element-0/cols-default.html.ini
* Delete flaky result for CSS2/lists/list-style-applies-to-001.xht.ini
---------
Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2023-08-22 11:36:48 +00:00
Oriol Brufau
963104e5fc
Run same tests for layout-2020 and layout-2013 ( #30092 )
...
Most tests were only being run for layout-2013, not for layout-2020.
This wasn't great since layout-2020 is now the default.
So this patch unifies the lists of included tests for both layouts.
For layout-2013 this implies adding css/css-content/, css/css-logical/
and css/css-masking/clip/.
For layout-2020 this implies adding several additional css tests, and
also tests like dom/, js/, html/, etc.
2023-08-15 00:28:32 +00:00
Martin Robinson
f4578afdfe
Rename metadata directories
...
This renames:
- `tests/wpt/metadata` → `tests/wpt/meta-legacy-layout`
- `tests/wpt/metadata-layout-2020` → `tests/wpt/meta`
- `tests/wpt/mozilla/meta` → `tests/wpt/mozilla/meta-legacy-layout`
- `tests/wpt/mozilla/meta-layout-2020` → `tests/wpt/mozilla/meta`
2023-06-22 21:15:41 +02:00