fanczs.com - The page does not load
Categories
(Core :: DOM: Performance APIs, defect, P3)
Tracking
()
People
(Reporter: rbucata, Assigned: hiro)
References
()
Details
(Keywords: webcompat:needs-diagnosis, webcompat:platform-bug, webcompat:site-report, Whiteboard: [webcompat-source:product], [wptsync upstream])
User Story
platform:windows,mac,linux,android impact:site-broken configuration:general affects:all branch:release diagnosis-team:performance
Attachments
(2 files)
|
155 bytes,
text/html
|
Details | |
|
48 bytes,
text/x-phabricator-request
|
RyanVM
:
approval-mozilla-beta+
RyanVM
:
approval-mozilla-esr128+
|
Details | Review |
Environment:
Operating system: Windows 10
Firefox version: Firefox 129.0.1 (release)
Preconditions:
- Clean profile
Steps to reproduce:
- Navigate to: https://mmo.fanczs.com/scs/home
- Observe
Expected Behavior:
The page loads
Actual Behavior:
Blank page
Notes:
- Reproducible on the latest Firefox Release and Nightly
- Reproducible regardless of the ETP setting
- Works as expected using Chrome
Created from webcompat-user-report:f724d713-6718-462b-93a4-c4a59009b746
Updated•1 year ago
|
Comment 1•1 year ago
|
||
Seeing this error in the console:
Uncaught TypeError: PerformanceObserver.observe: Can't call observe with both `type` and `entryTypes`
Updated•1 year ago
|
Comment 2•1 year ago
|
||
The call to observe looks like: .observe({entryTypes:["resource"],buffered:!0} which the spec says should throw a TypeError. https://w3c.github.io/performance-timeline/#observe-method
We should check if Chrome throws an exception in this case.
Comment 3•1 year ago
|
||
Chrome and Safari both don't throw on this test case. We should either update the spec and implementation or get Chrome and Safari to fix theirs.
| Assignee | ||
Comment 5•1 year ago
|
||
The buffered argument was added after I implemented the initial v1 spec, so I didn't know about it at all, thus I learned the background.
From what I can tell is the best thing we can do here is to reach out the web site author and ask to stop calling observe() both with entryTypes and buffered.
There's a chromium bug that they have been struggling to change their behavior to throw an exception. It looks to me they've waited for a state where the incorrect usage drops, I am not sure what the threshold of the usage percentage is.
CCing npm@chromium who wrote the spec change for the buffered support.
Updated•1 year ago
|
Comment 6•1 year ago
|
||
Redirect a needinfo that is pending on an inactive user to the triage owner.
:twisniewski, since the bug has high severity, could you have a look please?
For more information, please visit BugBot documentation.
Comment 7•11 months ago
|
||
Noam from Chromium here. The usage is still at ~0.12%. I think the easiest path forward here would be to change the spec.
Comment 8•11 months ago
|
||
(In reply to Noam Rosenthal from comment #7)
Noam from Chromium here. The usage is still at ~0.12%. I think the easiest path forward here would be to change the spec.
Sorry, apparently it's on the interop list, will see where that goes.
Comment 9•11 months ago
|
||
Hiro, it doesn't sound like Chrome is very likely to change behaviour soon. Can we align our behaviour with Chrome for now and sort things out later as needed.
| Assignee | ||
Comment 10•11 months ago
|
||
I personally think we can. But I'd like to defer the decision to DOM team since I am not sure what the final judge of the interop issue was made.
Hsin-Yi?
Comment 11•11 months ago
|
||
(In reply to Hiroyuki Ikezoe (:hiro) from comment #10)
I personally think we can. But I'd like to defer the decision to DOM team since I am not sure what the final judge of the interop issue was made.
Hsin-Yi?
Sorry for another NI bounce, as I wasn't involved in the interop issue discussion and I think James may know better given he created that GH issue.
Comment 12•11 months ago
|
||
If we think we need to change behaviours we should do that and not worry about implications for Interop. In practice if that issue is accepted in Interop, and we think the spec as written is not web compatible, that would cover the work needed to align the spec and tests on the defacto required behaviour.
| Assignee | ||
Comment 13•11 months ago
|
||
Thank you James. Your comment cleared our my concerns. I am going to post a patch with a (tentative) web-platform test. Thanks!
| Assignee | ||
Comment 14•11 months ago
|
||
It's allowed, but the buffered option is ignored. This is what Blink
does [1], what WebKit does [2]. (Both code blocks are inside the else
branch of if has entryTypes)
The web-platform-test in this change was originally copied from
buffered-flag-after-timeout.any.js and modified.
[1] https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/timing/performance_observer.cc;l=264-273;drc=78780a188fe3c79fe815b170f4ea33e62ceb6e04
[2] https://searchfox.org/wubkat/rev/6c800745251d53d6486443d63b35828504446c5d/Source/WebCore/page/PerformanceObserver.cpp#90-100
[3] https://searchfox.org/mozilla-central/rev/e24277e20c492b4a785b4488af02cca062ec7c2c/testing/web-platform/tests/performance-timeline/buffered-flag-after-timeout.any.js
| Assignee | ||
Comment 15•10 months ago
|
||
I opened a spec issue; https://github.com/w3c/performance-timeline/issues/215
Comment 16•10 months ago
|
||
Comment 18•10 months ago
|
||
| bugherder | ||
Updated•10 months ago
|
Updated•10 months ago
|
Updated•10 months ago
|
Comment 20•10 months ago
|
||
I moved this over to the DOM: Performance component since that's where the fix ended up landing, but NI Honza to make sure it gets counted in our webcompat fix metrics.
| Assignee | ||
Comment 21•10 months ago
|
||
Oops, I am sorry for confusing. I innocently used this bug to fix the issue without opening a new platform bug. :/
Comment 22•10 months ago
|
||
The patch landed in nightly and beta is affected.
:hiro, is this bug important enough to require an uplift?
- If yes, please nominate the patch for beta approval.
- If no, please set
status-firefox135towontfix.
For more information, please visit BugBot documentation.
| Assignee | ||
Comment 23•10 months ago
|
||
Comment on attachment 9446172 [details]
Bug 1915589 - Allow co-existing entrypTypes and buffered options in PerformanceObserver.observe() method. r?sefeng
Beta/Release Uplift Approval Request
- User impact if declined/Reason for urgency: Some kind of sites are not able to be used at all
- Is this code covered by automated tests?: Yes
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: none
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): It's a one liner change to drop a check whether
bufferedoption is specified, very simple straight forward. It is what other browsers do. - String changes made/needed: none
- Is Android affected?: Yes
Comment 24•10 months ago
|
||
Comment on attachment 9446172 [details]
Bug 1915589 - Allow co-existing entrypTypes and buffered options in PerformanceObserver.observe() method. r?sefeng
Approved for 135.0b5.
Comment 25•10 months ago
|
||
| uplift | ||
Updated•10 months ago
|
Updated•10 months ago
|
Updated•10 months ago
|
Comment 26•10 months ago
|
||
Comment on attachment 9446172 [details]
Bug 1915589 - Allow co-existing entrypTypes and buffered options in PerformanceObserver.observe() method. r?sefeng
Approved for 128.7esr.
Updated•10 months ago
|
Comment 27•10 months ago
|
||
| uplift | ||
Description
•