[wpt-sync] Sync PR 43295 - DOM: Introduce SubscribeOptions for Observable API
Categories
(Core :: DOM: Core & HTML, task, P4)
Tracking
()
Tracking | Status | |
---|---|---|
firefox122 | --- | fixed |
People
(Reporter: wpt-sync, Unassigned)
References
()
Details
(Whiteboard: [wptsync downstream])
Sync web-platform-tests PR 43295 into mozilla-central (this bug is closed when the sync is complete).
PR: https://github.com/web-platform-tests/wpt/pull/43295
Details from upstream follow.
Dominic Farolino <dom@chromium.org> wrote:
DOM: Introduce SubscribeOptions for Observable API
This PR separates the AbortSignal from the callbacks passed into
subscribe()
via theObserver
dictionary, into its own dictionary,
where future options may live. This is a particularly useful ergonomic
change for chaining Observables together.See https://github.com/WICG/observable/pull/85 and
https://github.com/WICG/observable/issues/71 for any relevant design
discussion.Bug: 1485981
Change-Id: I9b9f9cf26cb8b7a71d2aab7811ad681386cbfd5a
Reviewed-on: https://chromium-review.googlesource.com/5046377
WPT-Export-Revision: 77bbd753dc9a808d5b1cf8c9ca5cb3056a47a465
Assignee | ||
Comment 1•8 months ago
|
||
PR 43295 applied with additional changes from upstream: d55f8950735132e1613d500b0ffe380597e1436e, 03d5b9b63f0cdc0c89f5443a53b45712ad33a552, 5505353a891869275c8da6cf52f129a2befabf33, 60999b0d9da8b6d0e7e4f7023837b71441b95646, 6bbd0ddcb078ca56533085359b4b5fa5ed36ee2f
Assignee | ||
Updated•8 months ago
|
Assignee | ||
Comment 2•8 months ago
|
||
Pushed to try (stability) https://treeherder.mozilla.org/#/jobs?repo=try&revision=a73e433595cdd54dba5198c21af9c7ec954282af
Assignee | ||
Comment 3•8 months ago
|
||
CI Results
Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI
Total 2 tests and 30 subtests
Status Summary
Firefox
OK
: 2
FAIL
: 60
Chrome
OK
: 2
PASS
: 44
FAIL
: 16
Safari
OK
: 2
FAIL
: 60
Links
Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base
Details
New Tests That Don't Pass
- /dom/observable/tentative/observable-constructor.any.worker.html [wpt.fyi]
- Observable constructor:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscriber interface is not constructible:
FAIL
(Chrome:PASS
, Safari:FAIL
) - subscribe() can be called with no arguments:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Observable constructor calls initializer on subscribe:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Observable error path called synchronously:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Observable should error if initializer throws:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscription is inactive after complete():
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscription is inactive after error():
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscription is inactive when aborted signal is passed in:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - Subscriber#signal is not the same AbortSignal as the one passed into
subscribe()
:FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscription does not emit values after completion:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscription does not emit values after error:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Completing or nexting a subscriber after an error does nothing:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Errors pushed to the subscriber that are not handled by the subscription are reported to the global:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Errors thrown in the initializer that are not handled by the subscription are reported to the global:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscription reports errors that are pushed after subscriber is closed by completion:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Errors thrown by initializer function after subscriber is closed by completion are reported:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Errors thrown by initializer function after subscriber is closed by error are reported:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Errors pushed by initializer function after subscriber is closed by error are reported:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscriber#complete() cannot re-entrantly invoke itself:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscriber#error() cannot re-entrantly invoke itself:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Unsubscription lifecycle:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - Aborting a subscription should stop emitting values:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - Calling subscribe should never throw an error synchronously, initializer throws error:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Calling subscribe should never throw an error synchronously, subscriber pushes error:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Teardown should be called when subscription is aborted:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - Teardowns should be called when subscription is closed by completion:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - Teardowns should be called when subscription is closed by subscriber pushing an error:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - Teardowns should be called when subscription is closed by subscriber throwing error:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - Teardowns should be called synchronously during addTeardown() if the subscription is inactive:
FAIL
(Chrome:FAIL
, Safari:FAIL
)
- Observable constructor:
- /dom/observable/tentative/observable-constructor.any.html [wpt.fyi]
- Observable constructor:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscriber interface is not constructible:
FAIL
(Chrome:PASS
, Safari:FAIL
) - subscribe() can be called with no arguments:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Observable constructor calls initializer on subscribe:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Observable error path called synchronously:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Observable should error if initializer throws:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscription is inactive after complete():
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscription is inactive after error():
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscription is inactive when aborted signal is passed in:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - Subscriber#signal is not the same AbortSignal as the one passed into
subscribe()
:FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscription does not emit values after completion:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscription does not emit values after error:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Completing or nexting a subscriber after an error does nothing:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Errors pushed to the subscriber that are not handled by the subscription are reported to the global:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Errors thrown in the initializer that are not handled by the subscription are reported to the global:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscription reports errors that are pushed after subscriber is closed by completion:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Errors thrown by initializer function after subscriber is closed by completion are reported:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Errors thrown by initializer function after subscriber is closed by error are reported:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Errors pushed by initializer function after subscriber is closed by error are reported:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscriber#complete() cannot re-entrantly invoke itself:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Subscriber#error() cannot re-entrantly invoke itself:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Unsubscription lifecycle:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - Aborting a subscription should stop emitting values:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - Calling subscribe should never throw an error synchronously, initializer throws error:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Calling subscribe should never throw an error synchronously, subscriber pushes error:
FAIL
(Chrome:PASS
, Safari:FAIL
) - Teardown should be called when subscription is aborted:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - Teardowns should be called when subscription is closed by completion:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - Teardowns should be called when subscription is closed by subscriber pushing an error:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - Teardowns should be called when subscription is closed by subscriber throwing error:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - Teardowns should be called synchronously during addTeardown() if the subscription is inactive:
FAIL
(Chrome:FAIL
, Safari:FAIL
)
- Observable constructor:
Pushed by wptsync@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/4e0693e5004d [wpt PR 43295] - DOM: Introduce SubscribeOptions for Observable API, a=testonly
Pushed by wptsync@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/2bc91571ae99 [wpt PR 43295] - DOM: Introduce SubscribeOptions for Observable API, a=testonly
Comment 6•7 months ago
|
||
bugherder |
Description
•