servo
servo copied to clipboard
Ensure parsers initiated from DOMParser always complete.
This fixes a panic exposed by https://github.com/servo/servo/pull/32820#discussion_r1713451553. We used to run automated tests with the async tokenizer in the pre-Github CI setup, but that was never ported over. These changes add a new job that can run subsets of the WPT suite with non-default configurations.
- [x]
./mach build -ddoes not report any errors - [x]
./mach test-tidydoes not report any errors - [x] These changes fix #33055
- [x] There are tests for these changes
🔨 Triggering try run (#10397360658) for Linux WPT
⚠️ Try run (#10397360658) failed.
🔨 Triggering try run (#10397605790) for Linux WPT
Test results for linux-wpt-layout-2020 from try job (#10397605790):Flaky unexpected result (23)
/_webgl/conformance/glsl/bugs/long-expressions-should-not-crash.html (#19221)/css/compositing/mix-blend-mode/mix-blend-mode-video.html (#32763)/css/css-fonts/variations/at-font-face-font-matching.html (#20684)Matching font-style: 'oblique 20deg' should prefer 'oblique 20deg' over 'oblique 30deg 60deg'
assert_equals: Unexpected font on test element expected 487 but got 532
Matching font-style: 'oblique 21deg' should prefer 'oblique 40deg 50deg' over 'oblique 20deg'
assert_equals: Unexpected font on test element expected 487 but got 532
Matching font-style: 'oblique 0deg' should prefer 'italic' over 'oblique -50deg -20deg'
assert_equals: Unexpected font on test element expected 487 but got 532
/css/css-sizing/dynamic-available-size-iframe.html (#31559)/css/css-values/calc-in-media-queries-with-mixed-units.html (#31731)box should be orange if the calc between vw+px in @media was correct
assert_equals: expected "rgb(255, 165, 0)" but got "rgb(0, 0, 255)"
/css/css-values/cap-invalidation.html (#32757)CSS Values and Units Test: cap invalidation/css/cssom-view/matchMedia.html (#31428)iframe.matchMedia("(width: 200px)") matches/fetch/private-network-access/worker-blob-fetch.tentative.window.html (#30064)treat-as-public to public: success./html/browsers/browsing-the-web/navigating-across-documents/javascript-url-return-value-handling-dynamic.html (#28066)0041 set in href="" targeting a frame and clicked
assert_equals: expected "A" but got ""
0080 00FF set in href="" targeting a frame and clicked
assert_equals: expected "ÿ" but got ""
0080 00FF 0100 set in href="" targeting a frame and clicked
assert_equals: expected "ÿĀ" but got ""
D83D DE0D set in href="" targeting a frame and clicked
assert_equals: expected "😍" but got ""
DE0D 0041 set in href="" targeting a frame and clicked
assert_equals: expected "\ufffdA" but got ""
/html/browsers/browsing-the-web/navigating-across-documents/navigation-unload-cross-origin.sub.window.html (#29056)Cross-origin navigation started from unload handler must be ignored
promise_test: Unhandled rejection with value: object "SecurityError: The operation is insecure."
/html/browsers/browsing-the-web/read-media/pageload-image-in-popup.html (#23849)The document for a standalone media file should have one child in the body./html/canvas/element/manual/imagebitmap/createImageBitmap-flipY.html (#32745)/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html (#22647)Check that popups from a sandboxed iframe escape the sandbox if allow-popups-to-escape-sandbox is used
Test timed out
/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-2.html (#22154)/html/semantics/embedded-content/the-img-element/image-loading-lazy-subframe-detached-crash.html (#31572)/html/semantics/forms/historical.html (#28568)<input name=isindex> should not be supported/html/webappapis/dynamic-markup-insertion/document-write/module-delayed.html (#27659)async document.write in a module
assert_true: onload must be called expected true got false
/html/webappapis/scripting/events/compile-event-handler-settings-objects.html (#24246)The entry settings object while executing the compiled callback via Web IDL's invoke must be that of the node document/resize-observer/change-layout-in-error.html (#32629)Changing layout in window error handler should not result in lifecyle loop when resize observer loop limit is reached./resource-timing/nested-context-navigations-iframe.html (#24311)Test that crossorigin iframe navigations are not observable by the parent, even after history navigations by the parent
Test timed out
Test that cross-site iframe navigations are not observable by the parent, even after history navigations by the parentTest that iframe navigations are not observable by the parentTest that crossorigin iframe navigations are not observable by the parentTest that cross-site iframe navigations are not observable by the parentTest that iframe refreshes are not observable by the parentTest that crossorigin iframe refreshes are not observable by the parentTest that cross-site iframe refreshes are not observable by the parent/resource-timing/test_resource_timing.https.html (#25216)PerformanceEntry has correct name, initiatorType, startTime, and duration (img)
assert_equals: expected 7380224 but got 7380480
/webstorage/localstorage-about-blank-3P-iframe-opens-3P-window.partitioned.html (#29053)StorageKey: test 3P about:blank window opened from a 3P iframe/workers/constructors/Worker/Worker-constructor.html (#22991)Stable unexpected results that are known to be intermittent (11)
/css/cssom-view/MediaQueryList-addListener-removeListener.html (#24569)listeners are called correct number of times
Test timed out
listeners are called in order they were added/css/cssom-view/MediaQueryList-extends-EventTarget-interop.html (#25285)listener added with addListener and addEventListener (capture) is called twice
Test timed out
removeEventListener removes listener added with addListenerremoveEventListener (capture) doesn't remove listener added with addListenerremoveListener removes listener added with addEventListenerremoveListener doesn't remove listener added with addEventListener (capture)capturing event listener fires before non-capturing listener at target/custom-elements/form-associated/ElementInternals-setFormValue.html (#29174)Single value - name is missing
assert_equals: expected "?name-pd1=value-pd1" but got ""
setFormValue with an empty FormData should submit nothingNewline normalization - \r\n in FormData name (urlencoded)/fetch/metadata/generated/element-img-environment-change.sub.html (#30111)sec-fetch-site - Not sent to non-trustworthy same-origin destination, no attributes/html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/iframe-src-aboutblank-navigate-immediately.html (#29048)Navigating to a different document with location.href
assert_equals: expected "http://web-platform.test:8000/common/blank.html?1" but got "about:blank"
/html/interaction/focus/the-autofocus-attribute/autofocus-dialog.html (#29087)/html/interaction/focus/the-autofocus-attribute/supported-elements.html (#24145)Element with tabindex should support autofocus
assert_equals: expected "SPAN" but got "BODY"
Non-HTMLElement should not support autofocus
Test timed out
/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html (#24066)Check that popups from a sandboxed iframe do not escape the sandbox/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-same-site.tentative.sub.window.html (#32117)A same-site unsandboxed iframe navigation does not consume user activation and allows top-level navigation.
Test timed out
/html/semantics/forms/form-submission-0/multipart-formdata.window.html (#28725)multipart/form-data: 0x00 in value (normal form)multipart/form-data: \n in value (formdata event)multipart/form-data: backslash in name (formdata event)/resource-timing/content-type-parsing.html (#29131)mime-type 16 : text/html;charset=gbk
Test timed out
mime-type 17 : text/html;charset=gbk
⚠️ Try run (#10397605790) failed.
CI changes are not tested when triggering try run via labels (running mach try should do it though).