RESOLVED FIXED Bug 188189
Perform a microtask checkpoint before creating a custom element
https://bugs.webkit.org/show_bug.cgi?id=188189
Summary Perform a microtask checkpoint before creating a custom element
Frédéric Wang (:fredw)
Reported 2018-07-31 00:31:45 PDT
From https://html.spec.whatwg.org/multipage/parsing.html#create-an-element-for-the-token (step 6.2): If will execute script is true, then: If the JavaScript execution context stack is empty, then perform a microtask checkpoint.
Attachments
Fixes the bug (11.85 KB, patch)
2018-08-14 15:49 PDT, Ryosuke Niwa
no flags
Archive of layout-test-results from ews101 for mac-sierra (2.62 MB, application/zip)
2018-08-14 16:35 PDT, EWS Watchlist
no flags
Archive of layout-test-results from ews104 for mac-sierra-wk2 (2.85 MB, application/zip)
2018-08-14 17:06 PDT, EWS Watchlist
no flags
Archive of layout-test-results from ews123 for ios-simulator-wk2 (2.59 MB, application/zip)
2018-08-14 17:25 PDT, EWS Watchlist
no flags
Archive of layout-test-results from ews115 for mac-sierra (3.07 MB, application/zip)
2018-08-14 17:35 PDT, EWS Watchlist
no flags
Fixed the test (13.11 KB, patch)
2018-08-14 18:57 PDT, Ryosuke Niwa
no flags
Ryosuke Niwa
Comment 1 2018-08-01 17:54:41 PDT
Are there any WPT tests for this?
Radar WebKit Bug Importer
Comment 2 2018-08-01 22:42:48 PDT
Frédéric Wang (:fredw)
Comment 3 2018-08-02 01:49:38 PDT
(In reply to Ryosuke Niwa from comment #1) > Are there any WPT tests for this? I think it is microtasks-and-constructors.html which we currently fails. In addition to comment 0, the test and https://github.com/whatwg/html/issues/2381 also refer to microtask during element upgrade, but I can't find where it in the current version of the spec.
Ryosuke Niwa
Comment 5 2018-08-14 15:36:28 PDT
*** Bug 188284 has been marked as a duplicate of this bug. ***
Ryosuke Niwa
Comment 6 2018-08-14 15:49:24 PDT
Created attachment 347118 [details] Fixes the bug
EWS Watchlist
Comment 7 2018-08-14 16:35:00 PDT
Comment on attachment 347118 [details] Fixes the bug Attachment 347118 [details] did not pass mac-ews (mac): Output: https://webkit-queues.webkit.org/results/8860603 New failing tests: fast/dom/MutationObserver/parser-mutations.html
EWS Watchlist
Comment 8 2018-08-14 16:35:02 PDT
Created attachment 347127 [details] Archive of layout-test-results from ews101 for mac-sierra The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: ews101 Port: mac-sierra Platform: Mac OS X 10.12.6
EWS Watchlist
Comment 9 2018-08-14 17:06:15 PDT
Comment on attachment 347118 [details] Fixes the bug Attachment 347118 [details] did not pass mac-wk2-ews (mac-wk2): Output: https://webkit-queues.webkit.org/results/8860946 New failing tests: fast/dom/MutationObserver/parser-mutations.html
EWS Watchlist
Comment 10 2018-08-14 17:06:17 PDT
Created attachment 347133 [details] Archive of layout-test-results from ews104 for mac-sierra-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: ews104 Port: mac-sierra-wk2 Platform: Mac OS X 10.12.6
EWS Watchlist
Comment 11 2018-08-14 17:25:50 PDT
Comment on attachment 347118 [details] Fixes the bug Attachment 347118 [details] did not pass ios-sim-ews (ios-simulator-wk2): Output: https://webkit-queues.webkit.org/results/8860804 New failing tests: fast/dom/MutationObserver/parser-mutations.html
EWS Watchlist
Comment 12 2018-08-14 17:25:52 PDT
Created attachment 347135 [details] Archive of layout-test-results from ews123 for ios-simulator-wk2 The attached test failures were seen while running run-webkit-tests on the ios-sim-ews. Bot: ews123 Port: ios-simulator-wk2 Platform: Mac OS X 10.13.4
EWS Watchlist
Comment 13 2018-08-14 17:35:06 PDT
Comment on attachment 347118 [details] Fixes the bug Attachment 347118 [details] did not pass mac-debug-ews (mac): Output: https://webkit-queues.webkit.org/results/8861012 New failing tests: fast/dom/MutationObserver/parser-mutations.html
EWS Watchlist
Comment 14 2018-08-14 17:35:08 PDT
Created attachment 347138 [details] Archive of layout-test-results from ews115 for mac-sierra The attached test failures were seen while running run-webkit-tests on the mac-debug-ews. Bot: ews115 Port: mac-sierra Platform: Mac OS X 10.12.6
Ryosuke Niwa
Comment 15 2018-08-14 18:57:58 PDT
Created attachment 347143 [details] Fixed the test
Geoffrey Garen
Comment 16 2018-08-16 10:55:47 PDT
Comment on attachment 347143 [details] Fixed the test r=me
Ryosuke Niwa
Comment 17 2018-08-16 10:57:58 PDT
Comment on attachment 347143 [details] Fixed the test Thanks!
WebKit Commit Bot
Comment 18 2018-08-16 11:25:08 PDT
Comment on attachment 347143 [details] Fixed the test Clearing flags on attachment: 347143 Committed r234944: <https://trac.webkit.org/changeset/234944>
WebKit Commit Bot
Comment 19 2018-08-16 11:25:10 PDT
All reviewed patches have been landed. Closing bug.
Frédéric Wang (:fredw)
Comment 20 2018-08-22 02:59:44 PDT
Comment on attachment 347143 [details] Fixed the test View in context: https://bugs.webkit.org/attachment.cgi?id=347143&action=review > Source/WebCore/dom/Document.cpp:5430 > + // FIXME: Schdule a task to fire DOMContentLoaded event instead. See webkit.org/b/82931 nit: Schedule > LayoutTests/ChangeLog:13 > + * fast/custom-elements/perform-microtask-checkpoint-before-construction.html: Added. Does it make sense to export this to the upstream WPT repo?
Ryosuke Niwa
Comment 21 2018-08-22 23:09:43 PDT
Comment on attachment 347143 [details] Fixed the test View in context: https://bugs.webkit.org/attachment.cgi?id=347143&action=review >> LayoutTests/ChangeLog:13 >> + * fast/custom-elements/perform-microtask-checkpoint-before-construction.html: Added. > > Does it make sense to export this to the upstream WPT repo? Yes.
darshan
Comment 22 2018-11-23 22:18:59 PST
Created pull request https://github.com/web-platform-tests/wpt/pull/14221, Second test is failing as of now.
Ryosuke Niwa
Comment 23 2018-11-23 22:33:55 PST
(In reply to darshan from comment #22) > Created pull request https://github.com/web-platform-tests/wpt/pull/14221, > > Second test is failing as of now. Against which STP or trunk revision did you test this?
darshan
Comment 24 2018-11-23 23:32:33 PST
(In reply to Ryosuke Niwa from comment #23) > (In reply to darshan from comment #22) > > Created pull request https://github.com/web-platform-tests/wpt/pull/14221, > > > > Second test is failing as of now. > > Against which STP or trunk revision did you test this? I did ./wpt serve in repo and open the test in chromium, I am using Chromium 70.0.3538.77
Ryosuke Niwa
Comment 25 2018-11-24 01:12:25 PST
(In reply to darshan from comment #24) > (In reply to Ryosuke Niwa from comment #23) > > (In reply to darshan from comment #22) > > > Created pull request https://github.com/web-platform-tests/wpt/pull/14221, > > > > > > Second test is failing as of now. > > > > Against which STP or trunk revision did you test this? > I did ./wpt serve in repo and open the test in chromium, I am using Chromium > 70.0.3538.77 Okay, that's not too surprising because you're testing against Blink. Note that Chromium no longer uses WebKit. It uses an alternative engine called Blink, which was forked in 2013.
darshan
Comment 26 2018-11-24 01:34:03 PST
(In reply to Ryosuke Niwa from comment #25) > (In reply to darshan from comment #24) > > (In reply to Ryosuke Niwa from comment #23) > > > (In reply to darshan from comment #22) > > > > Created pull request https://github.com/web-platform-tests/wpt/pull/14221, > > > > > > > > Second test is failing as of now. > > > > > > Against which STP or trunk revision did you test this? > > I did ./wpt serve in repo and open the test in chromium, I am using Chromium > > 70.0.3538.77 > > Okay, that's not too surprising because you're testing against Blink. Note > that Chromium no longer uses WebKit. It uses an alternative engine called > Blink, which was forked in 2013. Okay, so it means we can merge this PR in master?
Frédéric Wang (:fredw)
Comment 27 2018-11-24 02:18:37 PST
(In reply to darshan from comment #26) > (In reply to Ryosuke Niwa from comment #25) > > (In reply to darshan from comment #24) > > > (In reply to Ryosuke Niwa from comment #23) > > > > (In reply to darshan from comment #22) > > > > > Created pull request https://github.com/web-platform-tests/wpt/pull/14221, > > > > > > > > > > Second test is failing as of now. > > > > > > > > Against which STP or trunk revision did you test this? > > > I did ./wpt serve in repo and open the test in chromium, I am using Chromium > > > 70.0.3538.77 > > > > Okay, that's not too surprising because you're testing against Blink. Note > > that Chromium no longer uses WebKit. It uses an alternative engine called > > Blink, which was forked in 2013. > > Okay, so it means we can merge this PR in master? @Darshan: Thanks for the PR. This bug is fixed in WebKit. If you are using a trunk build of WebKit then all the tests should pass. As Ryosuke said, Chromium does not use WebKit anymore so behavior might be different. Let's continue the discussion on github WPT.
darshan
Comment 28 2018-11-30 10:24:32 PST
Note You need to log in before you can comment on or make changes to this bug.