Skip to content

Conversation

domfarolino
Copy link
Member

@domfarolino domfarolino commented Aug 7, 2025

Removing the PR template since this doesn't impact behavior. In whatwg/dom@b31d333, we decided that the post-connection steps should have a connectedness pre-condition, so that post-connection steps themselves didn't have to check this manually, which feels redundant.

However, this didn't quite make it over to HTML when I wrote the script post-connection steps in #10188, as there is a connectedness check and an detailed example about how an earlier-inserted script can remove a later-inserted script. It just so happens that the connectedness check in the script element's isn't actually redundant though, because this algorithm is called from the "children changed steps" and "attribute change steps", without connectedness pre-conditions.

This PR simplifies things and keeps the post-connection steps more true to its name, by making all of its callsites have a connectedness pre-condition, and removing the weird check from the post-connection steps.


/scripting.html ( diff )

@domfarolino domfarolino requested a review from annevk August 19, 2025 13:44
@smaug----
Copy link

Are there tests for this?

@domfarolino
Copy link
Member Author

Are there tests for this?

I swear there is somewhere, but since I couldn't find it, I just wrote https://crrev.com/c/6883795 which should be upstreamed to WPT later today.

aarongable pushed a commit to chromium/chromium that referenced this pull request Aug 27, 2025
This CL adds a test for when a later-inserted script is removed by an
earlier-inserted script, when both scripts were inserted "atomically".
The later-inserted (but then removed) script must not execute.

See whatwg/html#11543 (comment).

R=jarhar

Bug: N/A
Change-Id: Ie6316ceff485929195c7e6683fda26064ea6e0b0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6883795
Reviewed-by: Joey Arhar <[email protected]>
Commit-Queue: Dominic Farolino <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1507056}
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Aug 27, 2025
This CL adds a test for when a later-inserted script is removed by an
earlier-inserted script, when both scripts were inserted "atomically".
The later-inserted (but then removed) script must not execute.

See whatwg/html#11543 (comment).

R=jarhar

Bug: N/A
Change-Id: Ie6316ceff485929195c7e6683fda26064ea6e0b0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6883795
Reviewed-by: Joey Arhar <[email protected]>
Commit-Queue: Dominic Farolino <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1507056}
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Aug 27, 2025
This CL adds a test for when a later-inserted script is removed by an
earlier-inserted script, when both scripts were inserted "atomically".
The later-inserted (but then removed) script must not execute.

See whatwg/html#11543 (comment).

R=jarhar

Bug: N/A
Change-Id: Ie6316ceff485929195c7e6683fda26064ea6e0b0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6883795
Reviewed-by: Joey Arhar <[email protected]>
Commit-Queue: Dominic Farolino <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1507056}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

3 participants