Various Google developer-docs sites (developer.android.com, cloud.google.com/bigquery/docs/) are not not usable in Nightly (missing search, locale, and sign-in, and fixed header/sidebar scroll offscreen) unless you turn off dom.enable_web_task_scheduling
Categories
(Web Compatibility :: Site Reports, defect, P1)
Tracking
(firefox-esr128 disabled, firefox133 disabled, firefox134 disabled, firefox135 disabled, firefox136 disabled)
People
(Reporter: jonalmeida, Unassigned)
References
(Regression, )
Details
(Keywords: regression, webcompat:platform-bug, webcompat:site-report)
User Story
platform:windows,mac,linux,android impact:workflow-broken configuration:general affects:all branch:release diagnosis-team:dom
Attachments
(1 file)
|
348.10 KB,
image/png
|
Details |
developer.android.com does not render the search bar, locale, and Google Sign-in page.
Tested with fresh profiles and with/without ETP enabled.
Tested this against:
WORKING - Chrome Canary 133
NOT WORKING - Firefox Nightly 135.0a1 (2024-12-13)
WORKING - Firefox Release 133.0.3
Comment 1•1 year ago
|
||
Comment 2•1 year ago
|
||
Updated•1 year ago
|
Updated•1 year ago
|
Updated•1 year ago
|
Updated•1 year ago
|
Comment 3•1 year ago
|
||
133 isn't affected but the regression window is in 2022? Is this a Nightly-only problem?
Comment 4•1 year ago
|
||
(In reply to Ryan VanderMeulen [:RyanVM] from comment #3)
133 isn't affected but the regression window is in 2022? Is this a Nightly-only problem?
Yes.
Comment 5•1 year ago
|
||
The hidden stuff here (e.g. the search box) is explicitly hidden by the site, via this CSS rule:
body[pending] devsite-search {
visibility:hidden!important;
}
Looking at the DOM in a broken load in Firefox Nightly, I do see that body has the attribute pending:
<body class="android-home tenant--android viewport--desktop"
template="landing"
theme="android-theme"
type="product"
appearance=""
layout="full"
pending=""
style="--devsite-panel-height: 0px;">
In Chrome and Firefox Release, the body has attribute ready instead. So: the issue here is that the site is expecting some JS to run to swap out pending for ready, and that's never happening in Nightly.
Comment 6•1 year ago
|
||
In Firefox Release, the page swaps out ready for pending here:
https://www.gstatic.com/devrel-devsite/prod/v5ab6fd0ad9c02b131b4d387b5751ac2c3616478c6dd65b5e931f0805efa1009c/android/js/devsite_app_module.js
Yo = async function (a) {
if (!document.body.hasAttribute('ready')) {
a.g &&
await on(a.g);
a = new CustomEvent('devsite-page-loaded');
document.body.dispatchEvent(a);
document.body.setAttribute('ready', '');
document.body.removeAttribute('pending');
Here's the backtrace where that happens, in case it ends up being useful:
Yo (https://www.gstatic.com/devrel-devsite/prod/v5ab6fd0ad9c02b131b4d387b5751ac2c3616478c6dd65b5e931f0805efa1009c/android/js/devsite_app_module.js:formatted#9572)
ap (https://www.gstatic.com/devrel-devsite/prod/v5ab6fd0ad9c02b131b4d387b5751ac2c3616478c6dd65b5e931f0805efa1009c/android/js/devsite_app_module.js:formatted#9458)
<anonymous> (https://www.gstatic.com/devrel-devsite/prod/v5ab6fd0ad9c02b131b4d387b5751ac2c3616478c6dd65b5e931f0805efa1009c/android/js/devsite_app_module.js:formatted#10496)
<anonymous> (https://www.gstatic.com/devrel-devsite/prod/v5ab6fd0ad9c02b131b4d387b5751ac2c3616478c6dd65b5e931f0805efa1009c/android/js/app_loader.js#63)
<anonymous> (https://www.gstatic.com/devrel-devsite/prod/v5ab6fd0ad9c02b131b4d387b5751ac2c3616478c6dd65b5e931f0805efa1009c/android/js/app_loader.js#63)
<anonymous> (https://www.gstatic.com/devrel-devsite/prod/v5ab6fd0ad9c02b131b4d387b5751ac2c3616478c6dd65b5e931f0805efa1009c/android/js/app_loader.js#63)
Comment 7•1 year ago
|
||
Looking at the regression range, I confirmed that this is a regression from bug 1734997.
which added dom.enable_web_task_scheduling as a Nightly-only pref (and it's still Nightly-only).
I confirmed locally that toggling this pref causes/fixes the bug here. (If the pref is false, the bug goes away; if it's true, the bug happens.)
Comment 8•1 year ago
|
||
Set release status flags based on info from the regressing bug 1734997
:sefeng, since you are the author of the regressor, bug 1734997, could you take a look?
For more information, please visit BugBot documentation.
Comment 9•1 year ago
|
||
[Just adding one more way in which this bug manifests as causing breakage:]
The ready vs pending distinction also matters for whether or not headers/sidebars that are supposed-to-be-fixed are actually fixed or not, e.g. the left and top bars on this page https://cloud.google.com/bigquery/docs/reference/standard-sql/conversion_functions (as well as the top header on https://developer.android.com/ ). e.g. the intended-to-be-fixed-position header doesn't actually get position:fixed until the body gets the 'ready' attribute which then makes this snippet of CSS start applying:
body[ready] devsite-header[fixed] {
contain: layout;
pointer-events: none;
position: fixed;
top: 0;
width: 100%;
}
Updated•1 year ago
|
Comment 10•1 year ago
|
||
(In reply to Daniel Holbert [:dholbert] from comment #7)
Looking at the regression range, I confirmed that this is a regression from bug 1734997.
which added
dom.enable_web_task_schedulingas a Nightly-only pref (and it's still Nightly-only).
Given that the pref is Nightly-only, we can consider all non-nightly releases to have status disabled here.
Comment 12•1 year ago
|
||
As a short-term mitigation, I've posted a patch to turn off the about:config pref in bug 1938242, and I'll file a followup bug on actually investigating the breakage so that we can reenable the pref.
Comment 13•1 year ago
•
|
||
I filed bug 1938246 to investigate and fix the underlying breakage here. But we can close this bug (i.e. users will no longer be experiencing a webcompat issue) once the pref-flip in bug 1938242 lands.
Updated•1 year ago
|
Comment 14•1 year ago
|
||
FYI Google is aware of the issue and have a fix, at least for developer.chrome.com. I created a detailed bug report before at https://issuetracker.google.com/issues/384531056
... and they responded with:
Thanks for spotting this and the great bug report. The fix was just submitted but it might be a few weeks before it's released due to the holidays.
| Reporter | ||
Comment 15•1 year ago
|
||
I can confirm as the reporter that the bug is fixed and since there is bug 1938246, we can close this as fixed as per comment 13.
Thanks all for the investigation and fixes!
Updated•1 year ago
|
Comment 16•1 year ago
|
||
Set release status flags based on info from the regressing bug 1734997
Updated•1 year ago
|
Description
•