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•4 months ago
|
||
Comment 2•4 months ago
|
||
Updated•4 months ago
|
Updated•4 months ago
|
Updated•4 months ago
|
Updated•4 months ago
|
Comment 3•4 months ago
|
||
133 isn't affected but the regression window is in 2022? Is this a Nightly-only problem?
Comment 4•4 months 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•4 months 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•4 months 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•4 months 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•4 months 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•4 months 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•4 months ago
|
Comment 10•4 months 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_scheduling
as 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•4 months 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•4 months 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•4 months ago
|
Comment 14•4 months 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•4 months 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•4 months ago
|
Comment 16•4 months ago
|
||
Set release status flags based on info from the regressing bug 1734997
Updated•4 months ago
|
Description
•