script: Complain to devtools when encoding meta tag is found after prescanning#41730
Open
simonwuelker wants to merge 1 commit intoservo:mainfrom
Open
script: Complain to devtools when encoding meta tag is found after prescanning#41730simonwuelker wants to merge 1 commit intoservo:mainfrom
simonwuelker wants to merge 1 commit intoservo:mainfrom
Conversation
|
🔨 Triggering try run (#20778054506) for Linux (WPT) |
|
|
Test results for linux-wpt from try job (#20778054506): Flaky unexpected result (37)
Stable unexpected results that are known to be intermittent (21)
|
|
✨ Try run (#20778054506) succeeded. |
mrobinson
approved these changes
Jan 7, 2026
d78c7b1 to
416f20c
Compare
|
🔨 Triggering try run (#20884080206) for Linux (WPT) |
|
Test results for linux-wpt from try job (#20884080206): Flaky unexpected result (29)
Stable unexpected results that are known to be intermittent (22)
Stable unexpected results (40)
|
|
|
Contributor
Author
|
These new passes are due to the relaxed select parsing that landed in html5ever since the last release. I'll fix the crashes and then we can hopefully land this. |
Contributor
Author
|
Blocked on servo/html5ever#712 due to servo/html5ever#560 (comment) |
github-merge-queue bot
pushed a commit
that referenced
this pull request
Jan 22, 2026
Do not merge yet - we need to create a new html5ever release. The html5ever bump also includes encoding indicators, which we handle in the most minimal way possible here. They will be handled properly by #41730 Companion PR for servo/html5ever#719 --------- Signed-off-by: Simon Wülker <[email protected]>
be4e8e9 to
f174477
Compare
f174477 to
d9cf92d
Compare
Signed-off-by: Simon Wülker <[email protected]>
d9cf92d to
d087658
Compare
jdm
approved these changes
Jan 26, 2026
| console_message.finish(), | ||
| worker_id, | ||
| ); | ||
| sender.send(devtools_message).unwrap(); |
Member
There was a problem hiding this comment.
Suggested change
| sender.send(devtools_message).unwrap(); | |
| let _ = sender.send(devtools_message); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Properly supporting
<meta charset>is hard because the specification and implementations disagree about what should be done when a meta tag is found after prescanning. For example, if you load https://github.com/servo/servo/blob/main/tests/wpt/tests/html/syntax/charset/after-bogus-after-1kb.html in firefox then gecko will reject the meta tag, violating the spec.Related issues are web-platform-tests/wpt#56973 and whatwg/html#6962.
This is change is therefore an alternative to #41430. Instead of reloading the page, we just send a message to the devtools telling the author to fix their page. This matches what gecko does on the testcase above.
The test expectations that change here are the result of unrelated changes in html5ever that haven't made their way into servo yet.
Testing: Devtools tests are hard to use so i only tested this manually