Closed Bug 1958070 Opened 9 months ago Closed 8 months ago

More BrowserGlue simplification/splitting

Categories

(Firefox :: General, task)

Desktop
All
task

Tracking

()

RESOLVED FIXED
139 Branch
Tracking Status
firefox139 --- fixed

People

(Reporter: Gijs, Assigned: Gijs)

References

(Blocks 4 open bugs)

Details

Attachments

(8 files, 2 obsolete files)

48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review

BrowserGlue is now about the same size as browser.js (OK, in large part because I've encouraged people to take things out of browser.js). It still has a lot of "dumping ground" characteristics. It would be nice to split things out a bit more, which would make it easier to disentangle what needs to happen when/where, as right now it's a bit haphazard.

We should probably align on the 'right' time to do all this startup telemetry gathering. Some of it currently seems to happen too early, and in large parts the question of when it is supposed to happen seems to not have a single clear answer. Moving it to its own file makes it a bit easier to transition to category manager invocation and handle its scheduling more uniformly.

SitePermissionsUI and other bits probably want to live here too, but one thing at a time.

Attachment #9477074 - Attachment description: WIP: Bug 1958070 - invoke startup telemetry collection using the category manager and run it slightly later → WIP: Bug 1958070 - unify scheduling of telemetry-related startup tasks,r?#firefox-desktop-core-reviewers
Attachment #9477083 - Attachment description: WIP: Bug 1958070 - use the category manager for first window ready initialization → WIP: Bug 1958070 - use the category manager for first window ready initialization, r?#firefox-desktop-core-reviewers
Attachment #9477073 - Attachment description: WIP: Bug 1958070 - move telemetry handling out of BrowserGlue.sys.mjs → Bug 1958070 - move telemetry handling out of BrowserGlue.sys.mjs, r?#firefox-desktop-core-reviewers
Attachment #9477074 - Attachment description: WIP: Bug 1958070 - unify scheduling of telemetry-related startup tasks,r?#firefox-desktop-core-reviewers → Bug 1958070 - unify scheduling of telemetry-related startup tasks,r?#firefox-desktop-core-reviewers
Attachment #9477075 - Attachment description: WIP: Bug 1958070 - move DefaultBrowserCheck to its own file → Bug 1958070 - move DefaultBrowserCheck to its own file, r?#omc-reviewers
Attachment #9477076 - Attachment description: WIP: Bug 1958070 - move giant actor list out of BrowserGlue into a dedicated file → Bug 1958070 - move giant actor list out of BrowserGlue into a dedicated file, r?#firefox-desktop-core-reviewers
Attachment #9477077 - Attachment description: WIP: Bug 1958070 - create components dir for permissions handling and move ContentPermissionPrompt out there. → Bug 1958070 - create components dir for permissions handling and move ContentPermissionPrompt out there, r?emz
Attachment #9477078 - Attachment description: WIP: Bug 1958070 - move content blocking prefs handling out of BrowserGlue. → Bug 1958070 - move content blocking prefs handling out of BrowserGlue, r?#anti-tracking-reviewers
Attachment #9477080 - Attachment description: WIP: Bug 1958070 - move profile data migration (beefy part of migrateUI) to its own file, r?#firefox-desktop-core-reviewers → Bug 1958070 - move profile data migration (most of migrateUI) to its own file, r?#firefox-desktop-core-reviewers
Attachment #9477081 - Attachment description: WIP: Bug 1958070 - move misc taskbar and other shell integration bits out of BrowserGlue → Bug 1958070 - move misc taskbar and other shell integration bits out of BrowserGlue, r?#application-update-reviewers
Attachment #9477082 - Attachment description: WIP: Bug 1958070 - move places initialization out of BrowserGlue → Bug 1958070 - move places initialization out of BrowserGlue, r?#places-reviewers
Attachment #9477083 - Attachment description: WIP: Bug 1958070 - use the category manager for first window ready initialization, r?#firefox-desktop-core-reviewers → Bug 1958070 - use the category manager for first window ready initialization, r?#firefox-desktop-core-reviewers
Blocks: 1960304
Blocks: 1960307
Blocks: 1960308

I've asked Lando to land the first 7 patches here because those are all approved and the largest changes by lines-of-code, including all the JS window actor and migrateUI goop, which means they're the biggest pain to rebase / de-conflict if people make changes to BrowserGlue. I'm still intending to land the rest as soon as I've collected some reviews for them. I had/have a green trypush for the entire stack, and (confession time) I'm somewhat crossing fingers that mid-stack things look OK, as in theory all these changes are orthogonal in what they do, although of course on a practical level rebases etc. are not, because they all involve the same giant file - another reason this was overdue! :-)

Keywords: leave-open
Pushed by gijskruitbosch@gmail.com: https://hg.mozilla.org/integration/autoland/rev/466ded45dcd7 move telemetry handling out of BrowserGlue.sys.mjs, r=firefox-desktop-core-reviewers ,mossop https://hg.mozilla.org/integration/autoland/rev/ad25a38c5f08 unify scheduling of telemetry-related startup tasks,r=firefox-desktop-core-reviewers ,mossop https://hg.mozilla.org/integration/autoland/rev/241c740707b3 move DefaultBrowserCheck to its own file, r=omc-reviewers,firefox-desktop-core-reviewers ,mossop,hanna_a https://hg.mozilla.org/integration/autoland/rev/f4235b1a035c move giant actor list out of BrowserGlue into a dedicated file, r=firefox-desktop-core-reviewers ,mossop https://hg.mozilla.org/integration/autoland/rev/d0b48fbac5bf create components dir for permissions handling and move ContentPermissionPrompt out there, r=emz,firefox-desktop-core-reviewers ,mossop https://hg.mozilla.org/integration/autoland/rev/d2e0bc6f2fa6 move content blocking prefs handling out of BrowserGlue, r=anti-tracking-reviewers,emz https://hg.mozilla.org/integration/autoland/rev/5db151ccad4f move profile data migration (most of migrateUI) to its own file, r=firefox-desktop-core-reviewers ,mossop

Expectedly, decreased the size of "installer size browser-omni.ja" by 100KB while simoultanously increasing the size of "installer size omni.ja" by 100KB.
Link

Blocks: 1962056

Splitting the last 2 patches off to bug 1962056 so that we can hopefully close this bug out for 139 to make tracking what landed in what release a bit easier.

Keywords: leave-open
Pushed by gijskruitbosch@gmail.com: https://hg.mozilla.org/integration/autoland/rev/b769360c73c4 move misc taskbar and other shell integration bits out of BrowserGlue, r=application-update-reviewers,firefox-desktop-core-reviewers ,bytesized,frontend-codestyle-reviewers,mossop
Status: NEW → RESOLVED
Closed: 8 months ago
Resolution: --- → FIXED
Target Milestone: --- → 139 Branch

Comment on attachment 9477082 [details]
Bug 1958070 - move places initialization out of BrowserGlue, r?#places-reviewers

Revision D244428 was moved to bug 1962056. Setting attachment 9477082 [details] to obsolete.

Attachment #9477082 - Attachment is obsolete: true

Comment on attachment 9477083 [details]
Bug 1958070 - use the category manager for first window ready initialization, r?#firefox-desktop-core-reviewers

Revision D244429 was moved to bug 1962056. Setting attachment 9477083 [details] to obsolete.

Attachment #9477083 - Attachment is obsolete: true
QA Whiteboard: [qa-triage-done-c140/b139]
Blocks: 1981454
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: