{
  "commits": {
    "02ab0cd0479a": {
      "author": "agoloman",
      "avatar": "https://www.gravatar.com/avatar/cd12c4a70c28dead95af1f72ff892316?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 562343eb3f13bd81cd65a1d17cc7bc0f9f915e0e.\n\nRevert \"Bug 2065079 - add test for unexpected PrP prompts r=dimi\"\n\nThis reverts commit 3c4ad8f1ad8f58557831678e819826a787914815.",
      "email": "agoloman@mozilla.com",
      "hash": "02ab0cd0479ab4699bd27765869c68696b6a028c",
      "subject": "Revert \"Bug 2065441, Bug 2065079 - filter autofill login candidates without decryption r=dimi\" for causing bc failures @browser_context_menu_iframe.js."
    },
    "61f87dcd7a9e": {
      "author": "agoloman",
      "avatar": "https://www.gravatar.com/avatar/cd12c4a70c28dead95af1f72ff892316?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit a8664303447293d52c61b505dbbc2735891c5d6a.",
      "email": "agoloman@mozilla.com",
      "hash": "61f87dcd7a9e614c364c70e03f9984da502f70b0",
      "subject": "Revert \"Bug 1578480 - Remove the unused --disable-wmf and --disable-ffmpeg flags on moz.configure r=firefox-build-system-reviewers,sergesanspaille\" for causing build bustagees @DecoderDoctorDiagnostics.cpp."
    },
    "D287522": {
      "author": "Masayuki Nakano",
      "avatar": "https://www.gravatar.com/avatar/900caab146bc7a489b3854cf10acf93f?d=identicon\u0026s=64",
      "cl": "D287522",
      "clUrl": "https://phabricator.services.mozilla.com/D287522",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D287522",
      "email": "masayuki@d-toybox.com",
      "hash": "d7040ee4af083b55b1c828763a8c3359b475eeb7",
      "subject": "Bug 2022026 - Add automated test r=smaug"
    },
    "D292279": {
      "author": "Masayuki Nakano",
      "avatar": "https://www.gravatar.com/avatar/900caab146bc7a489b3854cf10acf93f?d=identicon\u0026s=64",
      "cl": "D292279",
      "clUrl": "https://phabricator.services.mozilla.com/D292279",
      "description": "This cannot be a WPT because the TestDriver's performance is not enough\nto reproduce the bug.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D292279",
      "email": "masayuki@d-toybox.com",
      "hash": "625281e60f2357e68702f151e117f5905cd645fb",
      "subject": "Bug 2023927 - Add the reported testcase r=emilio"
    },
    "D297656": {
      "author": "mcarare",
      "avatar": "https://www.gravatar.com/avatar/375ba57ab6d559a55eafd4f98e2e3cde?d=identicon\u0026s=64",
      "cl": "D297656",
      "clUrl": "https://phabricator.services.mozilla.com/D297656",
      "description": "Key changes:\n- Defined a `CoroutineScope` in `FocusApplication` using `Dispatchers.Main`, `SupervisorJob`, and a `CoroutineExceptionHandler`.\n- Updated `Components` to accept and provide `applicationScope` for dependency injection.\n- Refactored `StartupTypeTelemetry` to use the provided `applicationScope` instead of a `LifecycleOwner`'s scope, ensuring telemetry recording survives activity destruction.\n- Replaced `GlobalScope.launch` with `applicationScope.launch` in `BrowserFragment` for submitting crash reports.\n- Updated `MainActivity`, `CustomTabActivity`, and associated tests to support the new `applicationScope` requirement.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D297656",
      "email": "48995920+mcarare@users.noreply.github.com",
      "hash": "17846938fd4bb43637c1ff6bc164c762c8e45ac3",
      "subject": "Bug 1990613 - Focus: Introduce a structured `applicationScope` to `FocusApplication` and `Components` to replace the use of `GlobalScope` and `lifecycleScope` for global background tasks. r=android-reviewers,pollymce"
    },
    "D297657": {
      "author": "mcarare",
      "avatar": "https://www.gravatar.com/avatar/375ba57ab6d559a55eafd4f98e2e3cde?d=identicon\u0026s=64",
      "cl": "D297657",
      "clUrl": "https://phabricator.services.mozilla.com/D297657",
      "description": "Key changes:\n- Introduced a central `applicationScope` in `FenixApplication` tied to the application lifetime using `SupervisorJob` and a global `CoroutineExceptionHandler`.\n- Injected `applicationScope` into `Components` and `Core` to provide a managed scope for background tasks.\n- Refactored `SnackbarBinding`, `ShareController`, `StartupTypeTelemetry`, and `CrashReporterController` to use the provided `applicationScope` instead of `GlobalScope`.\n- Updated `StorageStatsMetrics` and `FileUploadsDirCleaner` to accept a `CoroutineScope` for asynchronous operations.\n- Updated various fragments (`SettingsFragment`, `BaseBrowserFragment`, `ShareFragment`, `WebExtensionActionPopupFragment`, `HomeFragment`, and `AddonInternalSettingsFragment`) to pass the application scope to their respective controllers/bindings.\n - Also fix queueEngineWarmup accidentally returning a lambda instead of\n   executing the runOnVisualCompleteness block, due to an erroneous `\\u003d {`\n   function body syntax. The engine warmup was silently never being\n   scheduled at visual completeness.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D297657",
      "email": "48995920+mcarare@users.noreply.github.com",
      "hash": "046369af65bfe9dec9aa957923f75fff46d07dce",
      "subject": "Bug 1990613 - Fenix: Replace `GlobalScope` with a structured `applicationScope`. r=android-reviewers,pollymce"
    },
    "D297658": {
      "author": "mcarare",
      "avatar": "https://www.gravatar.com/avatar/375ba57ab6d559a55eafd4f98e2e3cde?d=identicon\u0026s=64",
      "cl": "D297658",
      "clUrl": "https://phabricator.services.mozilla.com/D297658",
      "description": "Key changes:\n- Replaced `GlobalScope` and `MainScope` usage across multiple sample modules (`browser`, `crash`, `toolbar`, `compose-browser`) with dedicated, lifecycle-aware `CoroutineScope` instances.\n- Introduced `applicationScope` in `SampleApplication`, `DefaultComponents`, and `CrashApplication` using `SupervisorJob` to manage app-level background tasks.\n- Updated `SampleApplication` to cancel its `applicationScope` in `onTerminate`.\n- Refactored `CrashService` to use a private `serviceScope`, ensuring all coroutines are cancelled in `onDestroy`.\n- Migrated various components, including `SessionStorage`, `FileUploadsDirCleaner`, and `RegionMiddleware`, to accept the shared `applicationScope`.\n- Removed `@OptIn(DelicateCoroutinesApi::class)` annotations previously required for `GlobalScope`.\n- Cleaned up helper methods in `CrashApplication` to be internal to the class and use the managed application scope.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D297658",
      "email": "48995920+mcarare@users.noreply.github.com",
      "hash": "c908c05669f3014e6b29bc0e626d7e3c8402c969",
      "subject": "Bug 1990613 - AC samples: Refactor sample applications to use structured `CoroutineScope` instead of `GlobalScope`. r=android-reviewers,pollymce"
    },
    "D297659": {
      "author": "mcarare",
      "avatar": "https://www.gravatar.com/avatar/375ba57ab6d559a55eafd4f98e2e3cde?d=identicon\u0026s=64",
      "cl": "D297659",
      "clUrl": "https://phabricator.services.mozilla.com/D297659",
      "description": "Key changes:\n- Refactored `TabIntentProcessor`, `RegionMiddleware`, `FileUploadsDirCleaner`, `AbstractAutofillService`, `GeckoAutocompleteStorageDelegate`, and `AutoSave` to accept a `CoroutineScope` (typically named `applicationScope`) in their constructors.\n- Replaced `GlobalScope.launch` and `GlobalScope.async` with operations on the provided internal scopes to ensure structured concurrency and better lifecycle management.\n- Updated `BundledSearchEnginesStorage` to use `coroutineScope` and `async` for loading search engines, removing the dependency on an external `coroutineContext`.\n- Refactored `FxaPushSupportFeature` and its internal observers (`AccountObserver`, `ConstellationObserver`, `AutoPushObserver`) to utilize a centralized `applicationScope` instead of mixing global and UI contexts.\n- Updated Fenix and sample browser `AutofillService` implementations to provide the `applicationScope` from the main components container.\n- Updated associated unit tests to pass the appropriate test scope or `runTest` scope to the refactored classes.\n- Removed several `@OptIn(DelicateCoroutinesApi::class)` annotations previously required for `GlobalScope` usage.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D297659",
      "email": "48995920+mcarare@users.noreply.github.com",
      "hash": "c043f6bb6b48cd987c23421e772494de8005f14b",
      "subject": "Bug 1990613 - AC: Refactor multiple components to replace `GlobalScope` and `coroutineContext` with an explicit, application-provided `CoroutineScope`. r=android-reviewers,pollymce"
    },
    "D303384": {
      "author": "Erich Gubler",
      "avatar": "https://www.gravatar.com/avatar/4bbd2ecd016e674470b4de5f1620c88f?d=identicon\u0026s=64",
      "cl": "D303384",
      "clUrl": "https://phabricator.services.mozilla.com/D303384",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D303384",
      "email": "erichdongubler@gmail.com",
      "hash": "ce54a88ba1e2c2801265175e210dc7bf756debf9",
      "subject": "Bug 2049325 - test(offscreen-canvas): assert `OffscreenCanvas.convertToBlob` with `NaN` quality is same as unspecified r=lsalzman"
    },
    "D305796": {
      "author": "Karl Tomlinson",
      "avatar": "https://www.gravatar.com/avatar/3646e8b4ac97898b1b389b12bda9d6ed?d=identicon\u0026s=64",
      "cl": "D305796",
      "clUrl": "https://phabricator.services.mozilla.com/D305796",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D305796",
      "email": "karlt+@karlt.net",
      "hash": "a0618677128769eee435df59d03c5b09957c7aa3",
      "subject": "Bug 2042242 GTest immediate AudioCallbackDriver stream name change r=pehrsons"
    },
    "D314958": {
      "author": "Jari Jalkanen",
      "avatar": "https://www.gravatar.com/avatar/2b84b1a415615d22d7afc6554020d164?d=identicon\u0026s=64",
      "cl": "D314958",
      "clUrl": "https://phabricator.services.mozilla.com/D314958",
      "description": "To avoid deadlocks, the DirtyTrackingAutoLock had to be unlocked for IO\nthread operations. This allowed the weak reference it contained to\nexpire when the related in-memory OriginInfo was concurrently removed or\nreplaced, causing MaybeUpdateSize and GroupInfo failures.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D314958",
      "email": "jjalkanen@mozilla.com",
      "hash": "24efc699dee41ffd6bb0326016fec8ee594a5b79",
      "subject": "Bug 2056841: Eliminate race on OriginInfo changes by holding mutex continuously. r=dom-storage-reviewers,hsingh"
    },
    "D316627": {
      "author": "Nikki Sharpley",
      "avatar": "https://www.gravatar.com/avatar/475216ceafd2f0f87e2621f9ef4fa0e1?d=identicon\u0026s=64",
      "cl": "D316627",
      "clUrl": "https://phabricator.services.mozilla.com/D316627",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D316627",
      "email": "nsharpley@mozilla.com",
      "hash": "1ad693ba2faa6a76599de9ed138c09b69902e0a2",
      "subject": "Bug 2055043 - Re-enable browser_test_position_sticky.js under Nova r=sthompson,hiro"
    },
    "D316770": {
      "author": "Henri Sivonen",
      "avatar": "https://www.gravatar.com/avatar/66e59bea2fca6cc5d75e977b6b64be7a?d=identicon\u0026s=64",
      "cl": "D316770",
      "clUrl": "https://phabricator.services.mozilla.com/D316770",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D316770",
      "email": "hsivonen@hsivonen.fi",
      "hash": "f5b3e3f51b2a775db6d4240248525a62d62ee7b1",
      "subject": "Bug 2061103 - Update encoding_rs to main before 0.8.40. r=supply-chain-reviewers,afranchuk,dminor"
    },
    "D316822": {
      "author": "Javier Fern  ndez Garc  a-Boente",
      "avatar": "https://www.gravatar.com/avatar/7192998917f86311699304ae1fc1b7e5?d=identicon\u0026s=64",
      "cl": "D316822",
      "clUrl": "https://phabricator.services.mozilla.com/D316822",
      "description": "Adds browser-chrome tests covering resistFingerprinting protections inside\nServiceWorkerGlobalScope, which has its own performance, Date and navigator.\nThe existing coverage reaches windows and dedicated and shared workers\n(browser_performanceAPIWorkers.js, browser_reduceTimePrecision_iframes.js),\nand for service workers only navigator.hardwareConcurrency\n(browser_fpiServiceWorkers_fingerprinting.js).\n\n- Timer precision reduction is applied to performance.now() and Date.now() in\n  the service worker, with the window scope measured as a control and a\n  reduction-disabled control proving the clamping comes from the prefs and not\n  from a coarse worker clock. That control also checks that unconditional\n  reduction is off, which a 100ms check cannot see.\n- The spoofed navigator identity (userAgent, appVersion, platform,\n  hardwareConcurrency) seen in the service worker matches the controlling\n  window, and with resistFingerprinting on the userAgent matches the value\n  nsIRFPService spoofs. The window values are read in page scope, since\n  userAgent, appVersion and platform are [NeedsCallerType] and a system caller\n  reads them unspoofed.\n- navigator.language and navigator.languages are spoofed through\n  privacy.spoof_english rather than by resistFingerprinting itself, so they are\n  checked against a non-English accept-language list with spoofing both off and\n  on.\n\nhead.js gains withServiceWorkerTab(), which tears down the tab, the site data\nit created and the pref environment unconditionally, isTimeValueRounded(),\nmirroring the helper the browser/components/resistfingerprinting tests share,\nand TEST_EMPTY_PAGE, next to the other test page constants.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D316822",
      "email": "jfernandez@igalia.com",
      "hash": "c436a178cb8f71de6f5e63a4e88c29c6ec63ed36",
      "subject": "Bug 2061233 - Add service worker resistFingerprinting tests for timer precision and navigator spoofing r=dom-worker-reviewers,timhuang,edenchuang"
    },
    "D316894": {
      "author": "Luca Greco",
      "avatar": "https://www.gravatar.com/avatar/cb15f57474d95eb43c5d903ae3fa34ae?d=identicon\u0026s=64",
      "cl": "D316894",
      "clUrl": "https://phabricator.services.mozilla.com/D316894",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D316894",
      "email": "lgreco@mozilla.com",
      "hash": "e448d6504867b62e4275605c21dc562ba6b5ff27",
      "subject": "Bug 2057843 - Unskip browser_ext_browserAction_popup_resize_bottom.js on Nova builds while keeping skip-if restricted to linux22.04 wayland jobs. r=zombie"
    },
    "D318438": {
      "author": "giorga",
      "avatar": "https://www.gravatar.com/avatar/97f54ef8626093cb5e017281ae27e350?d=identicon\u0026s=64",
      "cl": "D318438",
      "clUrl": "https://phabricator.services.mozilla.com/D318438",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D318438",
      "email": "giorga@mozilla.com",
      "hash": "381fc76e2a857e56c6f2d1862909021b63603558",
      "subject": "Bug 2011543 - Group history items by exact date r=android-reviewers,android-l10n-reviewers,parker,calu"
    },
    "D318718": {
      "author": "Simon Farre",
      "avatar": "https://www.gravatar.com/avatar/537fa8017511d14a08195f59c09a23fc?d=identicon\u0026s=64",
      "cl": "D318718",
      "clUrl": "https://phabricator.services.mozilla.com/D318718",
      "description": "Listeners for this event all require a window. So documents loaded as data\nwill effectively be pure overhead only. By returning early we skip that\noverhead if the principal is not of type SystemPrincipal.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D318718",
      "email": "sfarre@mozilla.com",
      "hash": "af04d340f5a82143dbc93c0b65fdd89d8b7d854c",
      "subject": "Bug 2063284 - Prevent doc element created notification for documents loaded as data r=dom-core-reviewers,smaug"
    },
    "D319045": {
      "author": "Jan-Erik Rediger",
      "avatar": "https://www.gravatar.com/avatar/180564a02772d65450f1cf62a7e44d77?d=identicon\u0026s=64",
      "cl": "D319045",
      "clUrl": "https://phabricator.services.mozilla.com/D319045",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D319045",
      "email": "jrediger@mozilla.com",
      "hash": "4e6a86deba1ebb24dfff3dd587ed7d9bd2543235",
      "subject": "Bug 2063990 - Shutdown glean for storage gtests r=jari"
    },
    "D319169": {
      "author": "Mugurell",
      "avatar": "https://www.gravatar.com/avatar/3ad7e9b38bc893c28662af783f35cf2b?d=identicon\u0026s=64",
      "cl": "D319169",
      "clUrl": "https://phabricator.services.mozilla.com/D319169",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D319169",
      "email": "Mugurell@users.noreply.github.com",
      "hash": "513b4bedecb019d57bf0149b79572310bc7dfb9e",
      "subject": "Bug 2058212 - part 2 - Show the current tab data in the AwesomeBar r=android-reviewers,matt-tighe"
    },
    "D319170": {
      "author": "Mugurell",
      "avatar": "https://www.gravatar.com/avatar/3ad7e9b38bc893c28662af783f35cf2b?d=identicon\u0026s=64",
      "cl": "D319170",
      "clUrl": "https://phabricator.services.mozilla.com/D319170",
      "description": "This will control whether when starting to edit the current URL the website\ndetails will be shown in the awesomebar instead of the addressbar like before.\n\nUI tests were updated just to ensure they pass as before.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D319170",
      "email": "Mugurell@users.noreply.github.com",
      "hash": "502b9d1f568abcafa78cdef0fc3dcc809a9422d8",
      "subject": "Bug 2058212 - part 3 - Use a new addressbar-focus-mode Nimbus experiment r=android-reviewers,matt-tighe"
    },
    "D319171": {
      "author": "Mugurell",
      "avatar": "https://www.gravatar.com/avatar/3ad7e9b38bc893c28662af783f35cf2b?d=identicon\u0026s=64",
      "cl": "D319171",
      "clUrl": "https://phabricator.services.mozilla.com/D319171",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D319171",
      "email": "Mugurell@users.noreply.github.com",
      "hash": "399f6837060531e4e2583d0fe9e4409ee1be302d",
      "subject": "Bug 2058212 - part 4 - Support sharing the current website details from the AwesomeBar r=android-reviewers,android-l10n-reviewers,parker,matt-tighe"
    },
    "D319172": {
      "author": "Mugurell",
      "avatar": "https://www.gravatar.com/avatar/3ad7e9b38bc893c28662af783f35cf2b?d=identicon\u0026s=64",
      "cl": "D319172",
      "clUrl": "https://phabricator.services.mozilla.com/D319172",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D319172",
      "email": "Mugurell@users.noreply.github.com",
      "hash": "cf42d16228782302b58fa5df531bf304996bcb38",
      "subject": "Bug 2058212 - part 5 - Support copying the current website details from the AwesomeBar r=android-reviewers,android-l10n-reviewers,parker,matt-tighe"
    },
    "D319173": {
      "author": "Mugurell",
      "avatar": "https://www.gravatar.com/avatar/3ad7e9b38bc893c28662af783f35cf2b?d=identicon\u0026s=64",
      "cl": "D319173",
      "clUrl": "https://phabricator.services.mozilla.com/D319173",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D319173",
      "email": "Mugurell@users.noreply.github.com",
      "hash": "6b55be3bd95a45dbd122016c95d17a94636e4e54",
      "subject": "Bug 2058212 - part 6 - Support editing the current website URL from the AwesomeBar r=android-reviewers,android-l10n-reviewers,parker,matt-tighe"
    },
    "D319174": {
      "author": "Mugurell",
      "avatar": "https://www.gravatar.com/avatar/3ad7e9b38bc893c28662af783f35cf2b?d=identicon\u0026s=64",
      "cl": "D319174",
      "clUrl": "https://phabricator.services.mozilla.com/D319174",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D319174",
      "email": "Mugurell@users.noreply.github.com",
      "hash": "6d54cb0739b2fbcff7fe9761e4c3185fd38f5f13",
      "subject": "Bug 2058212 - part 8 - Cap the width of the AwesomeBar to 600dp r=android-reviewers,matt-tighe"
    },
    "D319554": {
      "author": "Mugurell",
      "avatar": "https://www.gravatar.com/avatar/3ad7e9b38bc893c28662af783f35cf2b?d=identicon\u0026s=64",
      "cl": "D319554",
      "clUrl": "https://phabricator.services.mozilla.com/D319554",
      "description": "More will be added and having a single place to use them from will ensure easier\ndiscoverability while also avoiding bugs from having to hardcode them in multiple places.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D319554",
      "email": "Mugurell@users.noreply.github.com",
      "hash": "5765665e126242c299f1e43a536da9ec27fad5fc",
      "subject": "Bug 2058212 - part 1 - Group all AwesomeBar test tags in a separate class r=android-reviewers,jdelorenzo"
    },
    "D319556": {
      "author": "Mugurell",
      "avatar": "https://www.gravatar.com/avatar/3ad7e9b38bc893c28662af783f35cf2b?d=identicon\u0026s=64",
      "cl": "D319556",
      "clUrl": "https://phabricator.services.mozilla.com/D319556",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D319556",
      "email": "Mugurell@users.noreply.github.com",
      "hash": "b209de9e0ab5dabdf4034cf4b759a6c18451d8c3",
      "subject": "Bug 2058212 - part 7 - Support reloading the current website from the AwesomeBar r=android-reviewers,android-l10n-reviewers,parker,matt-tighe"
    },
    "D319650": {
      "author": "Sebastian Hengst",
      "avatar": "https://www.gravatar.com/avatar/4aaa2a4137aa4762d4bcd28ace9cb367?d=identicon\u0026s=64",
      "cl": "D319650",
      "clUrl": "https://phabricator.services.mozilla.com/D319650",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D319650",
      "email": "aryx.github@gmx-topmail.de",
      "hash": "369ab2e0408827b0d30b1e52f81cf9d52397363e",
      "subject": "Bug 2064552 - turn off jittests on macOS hardware machines, only run on VMs. r=rcurran,taskgraph-reviewers,ahal DONTBUILD"
    },
    "D319751": {
      "author": "Mugurell",
      "avatar": "https://www.gravatar.com/avatar/3ad7e9b38bc893c28662af783f35cf2b?d=identicon\u0026s=64",
      "cl": "D319751",
      "clUrl": "https://phabricator.services.mozilla.com/D319751",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D319751",
      "email": "Mugurell@users.noreply.github.com",
      "hash": "7c39c777651b8edaec0d2ab8b171dd45ed879d90",
      "subject": "Bug 2064605 - Reduce the spacing between AwesomeBar items r=android-reviewers,matt-tighe"
    },
    "D320534": {
      "author": "Keith Cirkel",
      "avatar": "https://www.gravatar.com/avatar/87a4065b580b6f1e43858ab49d98c109?d=identicon\u0026s=64",
      "cl": "D320534",
      "clUrl": "https://phabricator.services.mozilla.com/D320534",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D320534",
      "email": "keithamus@users.noreply.github.com",
      "hash": "9e2cf5dde5dae302c63ad8432d5e7e312efcb9f3",
      "subject": "Bug 2065594 - Fix parser/html makefile for `make translate` r=hsivonen"
    },
    "D321075": {
      "author": "Dale Harvey",
      "avatar": "https://www.gravatar.com/avatar/030451d8cfc268d666bae9a7fe8d10ec?d=identicon\u0026s=64",
      "cl": "D321075",
      "clUrl": "https://phabricator.services.mozilla.com/D321075",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D321075",
      "email": "dale@arandomurl.com",
      "hash": "85caeb90a2847f9e058d1ee2002e97a910e9afad",
      "subject": "Bug 2058199 - Close trustpanel on navigation. r=emz,urlbar-reviewers,jteow"
    },
    "D321169": {
      "author": "Eden Chuang",
      "avatar": "https://www.gravatar.com/avatar/3afcbed8f1748e0ae0da0bc4cabddcaf?d=identicon\u0026s=64",
      "cl": "D321169",
      "clUrl": "https://phabricator.services.mozilla.com/D321169",
      "description": "ClientHandleOpParent::Init now rejects ClientControlledArgs and\nClientEvictBFCacheArgs when the sender is a content process. These op types\nare only ever produced by the parent-process ServiceWorkerManager (via\nClientHandle::Control and ClientHandle::EvictFromBFCache); a content process\nnever legitimately sends them.\n\nAccepting a forged ClientControlledArgs from content let a compromised\ncontent process install attacker-chosen ServiceWorker controller state on a\nclient living in another process. ClientManagerService::Navigate then trusted\nthat controller state as its sole authorization, allowing extension\nbackground pages to be navigated to attacker-controlled URLs and attacker\ncode to run in the extension process.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321169",
      "email": "echuang@mozilla.com",
      "hash": "52c4c2c2dbba665d5a29208eb320f2f58f59ada3",
      "subject": "Bug 2061777 - Reject parent-only Client ops received from content processes. r=asuth"
    },
    "D321233": {
      "author": "Luca Greco",
      "avatar": "https://www.gravatar.com/avatar/cb15f57474d95eb43c5d903ae3fa34ae?d=identicon\u0026s=64",
      "cl": "D321233",
      "clUrl": "https://phabricator.services.mozilla.com/D321233",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D321233",
      "email": "lgreco@mozilla.com",
      "hash": "8c7161115522cbe1ec1126bf7bfd90b8ec3fe57f",
      "subject": "Bug 2066436 - Add block margin around about:addons global-warnings webcomponent. r=desktop-theme-reviewers,Itiel"
    },
    "D321234": {
      "author": "Luca Greco",
      "avatar": "https://www.gravatar.com/avatar/cb15f57474d95eb43c5d903ae3fa34ae?d=identicon\u0026s=64",
      "cl": "D321234",
      "clUrl": "https://phabricator.services.mozilla.com/D321234",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D321234",
      "email": "lgreco@mozilla.com",
      "hash": "67dc6ac359b0881587df5f5ccccc5b3b14a1b294",
      "subject": "Bug 2066436 - Add block margin between about:addons message-bar-stack and the aboutaddons-themes-mode. r=desktop-theme-reviewers,Itiel"
    },
    "D321344": {
      "author": "Manuel Bucher",
      "avatar": "https://www.gravatar.com/avatar/fe2c2192f4fabf01f2d2e700631bb8fe?d=identicon\u0026s=64",
      "cl": "D321344",
      "clUrl": "https://phabricator.services.mozilla.com/D321344",
      "description": "Drive-by change: Fixed copy-paste error of clearing\n`mStripOnShareHostMap` twice, not clearing\n`mStripOnShareSchemelessSiteMap`.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321344",
      "email": "manuel@mozilla.com",
      "hash": "018fbb59dab37c8b521d1dbd33279dedcebcab32",
      "subject": "Bug 2064455 - Copy Clean Link: Rename the \"origins\" array to the more accurate \"hosts\" r=urlbar-reviewers,emz,jteow"
    },
    "D321406": {
      "author": "aurora",
      "avatar": "https://www.gravatar.com/avatar/9b162ff98734d9ce16df97a06b84ff62?d=identicon\u0026s=64",
      "cl": "D321406",
      "clUrl": "https://phabricator.services.mozilla.com/D321406",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D321406",
      "email": "aurora@starsinthesky.ca",
      "hash": "1984c3adb0bbe32b34b0effcf9c5f025561e6eb5",
      "subject": "Bug 2062143 - Update the mock in test_new_profile.js to account for the current install on MSIX. r=chutten"
    },
    "D321495": {
      "author": "stransky",
      "avatar": "https://www.gravatar.com/avatar/1ad575baf124ff5058f4d44d5b066a29?d=identicon\u0026s=64",
      "cl": "D321495",
      "clUrl": "https://phabricator.services.mozilla.com/D321495",
      "description": "If HDR mode is enabled on Linux/Wayland, use layer compositor for rendering.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321495",
      "email": "stransky@redhat.com",
      "hash": "be8c90d990b25f8be9c0c86f35586bbd52108bf7",
      "subject": "Bug 2066679 [Wayland] Use layer compositor on Linux r=sotaro"
    },
    "D321549": {
      "author": "mcarare",
      "avatar": "https://www.gravatar.com/avatar/375ba57ab6d559a55eafd4f98e2e3cde?d=identicon\u0026s=64",
      "cl": "D321549",
      "clUrl": "https://phabricator.services.mozilla.com/D321549",
      "description": "This change defers the display of the tabs popup using `View.post` to avoid potential ANRs in `HardwareRenderer.nSetName` that can occur during window transitions, such as when the keyboard is hiding. It also improves lifecycle management by dismissing and nullifying the popup in `onDestroyView`.\n\nAdditionally:\n- Adds checks to prevent showing the popup if it is already visible or if the fragment is being removed.\n- Disables the `TabsPopup` animation style to prevent transition conflicts.\n- Fixes a layout issue in `TabViewHolder` where padding was not being correctly reset or calculated for different item types, leading to incorrect offsets.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321549",
      "email": "48995920+mcarare@users.noreply.github.com",
      "hash": "5cc395ac1e6702238799f74ce7da25a8119e1b28",
      "subject": "Bug 2066087 - Fix ANR and layout issues in tabs popup r=android-reviewers,avirvara"
    },
    "D321785": {
      "author": "Jan de Mooij",
      "avatar": "https://www.gravatar.com/avatar/709c5feed942bf99f098bb24aa1cc86f?d=identicon\u0026s=64",
      "cl": "D321785",
      "clUrl": "https://phabricator.services.mozilla.com/D321785",
      "description": "The old code didn't handle the `CatchA` =\u003e `CatchB` =\u003e `ForOf` case correctly, because\nit treated both catch blocks as synthetic for-of catch blocks instead of only `CatchB`.\n\nThis caused a debugger jit-test failure when we remove the `ForOfIterClose` try note\nin a later patch.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321785",
      "email": "jdemooij@mozilla.com",
      "hash": "a7798ce75009294cd9e0a1052e9cf5d7d2764df2",
      "subject": "Bug 2066996 part 1 - Fix a small bug in the debugger's IsInCatchScopeMatcher. r=arai"
    },
    "D321786": {
      "author": "Jan de Mooij",
      "avatar": "https://www.gravatar.com/avatar/709c5feed942bf99f098bb24aa1cc86f?d=identicon\u0026s=64",
      "cl": "D321786",
      "clUrl": "https://phabricator.services.mozilla.com/D321786",
      "description": "This changes for-of loops to match what `finally` blocks and (since bug 2063576)\narray destructuring do. The non-local exit bytecode jumps to shared code emitted\nafter the loop, where we close the iterator and continue the non-local exit.\n\nThe patch also simplifies `NonLocalExitControl::emitNonLocalJump` a bit. We no\nlonger need the `jumpingToCleanup` boolean and can instead return immediately.\n\nThis lets us remove `TryNoteKind::ForOfIterClose` in the next patch. It also lets us\nshare bytecode for similar non-local exits, which matters for `await` and `using` loops\nbecause in these cases we can emit a lot of bytecode.\n\nMicro-benchmarks show that some for-of loops with `break` statements are much faster\nbecause we now avoid some phis that prevented scalar replacement.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321786",
      "email": "jdemooij@mozilla.com",
      "hash": "1675a0b38e4f89ef4f0b6c72c9e228142dc09659",
      "subject": "Bug 2066996 part 2 - Emit for-of IteratorClose bytecode after the loop. r=arai"
    },
    "D321787": {
      "author": "Jan de Mooij",
      "avatar": "https://www.gravatar.com/avatar/709c5feed942bf99f098bb24aa1cc86f?d=identicon\u0026s=64",
      "cl": "D321787",
      "clUrl": "https://phabricator.services.mozilla.com/D321787",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D321787",
      "email": "jdemooij@mozilla.com",
      "hash": "fd616354a1df22fa063338bd098a9b07332b8456",
      "subject": "Bug 2066996 part 3 - Remove now unused TryNoteKind::ForOfIterClose. r=arai"
    },
    "D321798": {
      "author": "Andreas Farre",
      "avatar": "https://www.gravatar.com/avatar/5251913e02e39fe0d34962cae6373a9b?d=identicon\u0026s=64",
      "cl": "D321798",
      "clUrl": "https://phabricator.services.mozilla.com/D321798",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D321798",
      "email": "farre@mozilla.com",
      "hash": "3aa51796e508426ba3f826430405700056e31dce",
      "subject": "Bug 2064957 - Dialogs aren't enabled if there's no viewer. r=dom-core-reviewers,vhilla"
    },
    "D321799": {
      "author": "Martin Stransky",
      "avatar": "https://www.gravatar.com/avatar/1ad575baf124ff5058f4d44d5b066a29?d=identicon\u0026s=64",
      "cl": "D321799",
      "clUrl": "https://phabricator.services.mozilla.com/D321799",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D321799",
      "email": "stransky@redhat.com",
      "hash": "e89bb99780c40f04525e37408be3550672904824",
      "subject": "Bug 2054811 [Linux] Blit only actual content of VA-API texures r=emilio,gtk-reviewers"
    },
    "D321811": {
      "author": "Valentin Gosu",
      "avatar": "https://www.gravatar.com/avatar/dedff9d4500fcbc5cdd1cd270f044b33?d=identicon\u0026s=64",
      "cl": "D321811",
      "clUrl": "https://phabricator.services.mozilla.com/D321811",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D321811",
      "email": "valentin.gosu@gmail.com",
      "hash": "330d4f24353a511ad6eeaacc937bdfb694cd5f41",
      "subject": "Bug 2067049 - Alert on test_trr_bench.js r=necko-reviewers,mozperftest-reviewers,perftest-reviewers,kershaw,sparky"
    },
    "D321816": {
      "author": "Segun Famisa",
      "avatar": "https://www.gravatar.com/avatar/ce9ff32b0db44f5692a673fddca3a516?d=identicon\u0026s=64",
      "cl": "D321816",
      "clUrl": "https://phabricator.services.mozilla.com/D321816",
      "description": "We previously had the sync states accessed directly via functions, so this commit unifies those accesses behind a storage API.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321816",
      "email": "sfamisa@mozilla.com",
      "hash": "ed368522dfe1e2f9a18ad96dd80f8de9439aa9ad",
      "subject": "Bug 2065168 - Create SyncStateStorage that will contain information about the sync state r=android-reviewers,twhite"
    },
    "D321817": {
      "author": "Segun Famisa",
      "avatar": "https://www.gravatar.com/avatar/ce9ff32b0db44f5692a673fddca3a516?d=identicon\u0026s=64",
      "cl": "D321817",
      "clUrl": "https://phabricator.services.mozilla.com/D321817",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D321817",
      "email": "sfamisa@mozilla.com",
      "hash": "0b3b487c90f5f3452c4970bc23b6740cb6aae9b3",
      "subject": "Bug 2065168 - Update direct access of syncPrefs to use the SyncStateStorage API r=android-reviewers,twhite"
    },
    "D321819": {
      "author": "Valentin Gosu",
      "avatar": "https://www.gravatar.com/avatar/dedff9d4500fcbc5cdd1cd270f044b33?d=identicon\u0026s=64",
      "cl": "D321819",
      "clUrl": "https://phabricator.services.mozilla.com/D321819",
      "description": "Running ./mach perfdocs --generate failed with the following for test_trr_bench.js\n```\n  AppConstants.platform == \"android\" ? \"10.0.2.2\" : \"127.0.0.1\";\n               ^\n\nTypeError: Cannot read properties of undefined (reading 'platform')\n    at evalmachine.\u003canonymous\u003e:13:16\n    at Script.runInContext (node:vm:149:12)\n    at Object.runInContext (node:vm:301:6)\n    at [eval]:21:12\n    at runScriptInThisContext (node:internal/vm:219:10)\n    at node:internal/process/execution:451:12\n    at [eval]-wrapper:6:24\n    at runScriptInContext (node:internal/process/execution:449:60)\n    at evalFunction (node:internal/process/execution:283:30)\n    at evalTypeScript (node:internal/process/execution:295:3)\n```\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321819",
      "email": "valentin.gosu@gmail.com",
      "hash": "ef95cdf41b3d030a1b974b5ca7ab4a964d7536f1",
      "subject": "Bug 2067049 - fix perfdocs node error r=mozperftest-reviewers,sparky"
    },
    "D321829": {
      "author": "Johannes Salas Schmidt",
      "avatar": "https://www.gravatar.com/avatar/6793e1db22abe181664726808800b218?d=identicon\u0026s=64",
      "cl": "D321829",
      "clUrl": "https://phabricator.services.mozilla.com/D321829",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D321829",
      "email": "joschmidt@mozilla.com",
      "hash": "3c4ad8f1ad8f58557831678e819826a787914815",
      "subject": "Bug 2065079 - add test for unexpected PrP prompts r=dimi"
    },
    "D321830": {
      "author": "Johannes Salas Schmidt",
      "avatar": "https://www.gravatar.com/avatar/6793e1db22abe181664726808800b218?d=identicon\u0026s=64",
      "cl": "D321830",
      "clUrl": "https://phabricator.services.mozilla.com/D321830",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D321830",
      "email": "joschmidt@mozilla.com",
      "hash": "562343eb3f13bd81cd65a1d17cc7bc0f9f915e0e",
      "subject": "Bug 2065441 - filter autofill login candidates without decryption r=dimi"
    },
    "D321863": {
      "author": "RebecaTudor",
      "avatar": "https://www.gravatar.com/avatar/258abb9db67261f9763865cba2eb9969?d=identicon\u0026s=64",
      "cl": "D321863",
      "clUrl": "https://phabricator.services.mozilla.com/D321863",
      "description": "Move the main Firefox wordmark text drawables to drawable-nodpi so\nthey use the same resource qualifier as the build-type overrides.\n\nThis ensures the channel-specific wordmarks properly override the\nmain resources and prevents the \"Preview\" wordmark from appearing\nin shipped builds.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321863",
      "email": "rebecatudor273@gmail.com",
      "hash": "0923fe276d168409e72367e16cea190f95dac9f7",
      "subject": "Bug 2066693 - Move main wordmark resources to drawable-nodpi r=android-reviewers,twhite"
    },
    "D321869": {
      "author": "Manuel Bucher",
      "avatar": "https://www.gravatar.com/avatar/fe2c2192f4fabf01f2d2e700631bb8fe?d=identicon\u0026s=64",
      "cl": "D321869",
      "clUrl": "https://phabricator.services.mozilla.com/D321869",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D321869",
      "email": "manuel@mozilla.com",
      "hash": "f9442f708b484d83ca0f9e1d067a28e819f92e4b",
      "subject": "Bug 1932948 - Remove outdated flash-block-lists page from source-docs r=timhuang"
    },
    "D321889": {
      "author": "Dão Gottwald",
      "avatar": "https://www.gravatar.com/avatar/45dfe136efbb8e5f89eb0b21775ab195?d=identicon\u0026s=64",
      "cl": "D321889",
      "clUrl": "https://phabricator.services.mozilla.com/D321889",
      "description": "The reported defect does not reproduce, so this lands as coverage only.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321889",
      "email": "dao@mozilla.com",
      "hash": "7420de8186f81a94a3a95297c297df3dac7f8940",
      "subject": "Bug 2066405 - Test dismissing a recent search in the newtab search bar. r=daleharvey,urlbar-reviewers"
    },
    "D321894": {
      "author": "Segun Famisa",
      "avatar": "https://www.gravatar.com/avatar/ce9ff32b0db44f5692a673fddca3a516?d=identicon\u0026s=64",
      "cl": "D321894",
      "clUrl": "https://phabricator.services.mozilla.com/D321894",
      "description": "As part of 'sync decoupling' bug 1977876, we need to be able to communicate with firefox accounts so they can determine when to enforce generation of keys during authentication. `keys_optional=true` is the way we do this, and this commit adds that capability.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321894",
      "email": "sfamisa@mozilla.com",
      "hash": "576979d20bae230ff2d9bf492b491cc0963d056b",
      "subject": "Bug 2064408 - Add `keys_optional` fxa_status capability r=android-reviewers,gmalekpour"
    },
    "D321904": {
      "author": "Florian Quèze",
      "avatar": "https://www.gravatar.com/avatar/0ffa237c82d28773736b6c9688b404e3?d=identicon\u0026s=64",
      "cl": "D321904",
      "clUrl": "https://phabricator.services.mozilla.com/D321904",
      "description": "A load triggered by browser UI counts as user interaction for the entry\nbeing left, so that the back button stays enabled. nsDocShell::LoadURI\nrecords this from the content process hosting that entry, and the parent\napplies it to whichever entry is active when the message arrives. For a\nprocess switching load the entry this load adds is committed by a\ndifferent content process over a different channel, so it can win the\nrace and collect the flag instead, leaving the back button disabled.\n\nDoing it in the parent applies it synchronously, while the entry being\nleft is still the active one. DocumentLoadListener::Open already does\nthe same, but only for loads it cannot redirect into a content process;\nrelaxing that guard would still miss the loads that never reach\nDocumentLoadListener, so BrowsingContext::LoadURI covers them all\ninstead.\n\nSession history loads are excluded, as nsDocShell::LoadURI already does:\nback, forward and reload carry the target entry's original triggering\nprincipal, which is the system principal for anything loaded from\nbrowser UI, and must not mark the entry being left. The other early\nreturns in nsDocShell::LoadURI depend on docshell state the parent does\nnot have, so a load that is rejected later now flags the entry.\n\nAlso removes the Linux debug skip-if added in this bug.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321904",
      "email": "florian@queze.net",
      "hash": "53d52da7f2676780300976618b1c8c76b4c6ab6c",
      "subject": "Bug 1934436 - Flag the current session history entry as interacted with in the parent process, r=smaug."
    },
    "D321905": {
      "author": "Florian Quèze",
      "avatar": "https://www.gravatar.com/avatar/0ffa237c82d28773736b6c9688b404e3?d=identicon\u0026s=64",
      "cl": "D321905",
      "clUrl": "https://phabricator.services.mozilla.com/D321905",
      "description": "listenForTestNotification installs a single global listener, so a FormProcessed that\nno task waited for resolves the next task's wait. That task then types into the form\nbefore LoginManagerChild has attached its input listeners, and no capture doorhanger\nis ever created.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321905",
      "email": "florian@queze.net",
      "hash": "8940eefca7b4c2b4bee66cc2888e4f391193bb88",
      "subject": "Bug 1984820 - Wait for FormProcessed after each navigation in browser_formless_submit_chrome.js, r=credential-management-reviewers,dimi."
    },
    "D321906": {
      "author": "Florian Quèze",
      "avatar": "https://www.gravatar.com/avatar/0ffa237c82d28773736b6c9688b404e3?d=identicon\u0026s=64",
      "cl": "D321906",
      "clUrl": "https://phabricator.services.mozilla.com/D321906",
      "description": "form_basic.html has no action, so submitting navigates to a page with a login form of\nits own. That FormProcessed outlives the task and resolves the next task's wait, which\nthen hangs waiting for a PasswordEditedOrGenerated that never comes.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321906",
      "email": "florian@queze.net",
      "hash": "1fac3b4e887e522ad8d3dcba924faa5b08b21272",
      "subject": "Bug 1984820 - Wait for FormProcessed after submitting in browser_doorhanger_dismissed_for_ccnumber.js, r=credential-management-reviewers,dimi."
    },
    "D321907": {
      "author": "Florian Quèze",
      "avatar": "https://www.gravatar.com/avatar/0ffa237c82d28773736b6c9688b404e3?d=identicon\u0026s=64",
      "cl": "D321907",
      "clUrl": "https://phabricator.services.mozilla.com/D321907",
      "description": "Such a notification belongs to a page nobody is waiting on any more, and resolving on\nit lets the caller run before its own page has been processed. Ignore those and fail\nthe file from cleanup, so a task that does not wait for the notification it causes is\nreported instead of silently corrupting a later task. No test in the tree trips it.\n\nLoginManagerParent passes the browsing context with all four notifications; three of\nthem sent an empty payload, which would have left the check covering FormProcessed\nonly. For ShowDoorhanger it has to be read before the await, because the actor can be\ndestroyed before the doorhanger is dealt with.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321907",
      "email": "florian@queze.net",
      "hash": "a13410553b7b545ecfad8e4ffd330d556ec4dd1e",
      "subject": "Bug 1984820 - Report test notifications that arrive from a closed tab, r=credential-management-reviewers,dimi."
    },
    "D321908": {
      "author": "Florian Quèze",
      "avatar": "https://www.gravatar.com/avatar/0ffa237c82d28773736b6c9688b404e3?d=identicon\u0026s=64",
      "cl": "D321908",
      "clUrl": "https://phabricator.services.mozilla.com/D321908",
      "description": "The permafail there is the bug 1984820 race.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321908",
      "email": "florian@queze.net",
      "hash": "eb094dd78c91a18c166ad62754ca8001c14350ad",
      "subject": "Bug 2062458 - Re-enable browser_formless_submit_chrome.js on macOS 15 aarch64, r=credential-management-reviewers,dimi."
    },
    "D321913": {
      "author": "Florian Quèze",
      "avatar": "https://www.gravatar.com/avatar/0ffa237c82d28773736b6c9688b404e3?d=identicon\u0026s=64",
      "cl": "D321913",
      "clUrl": "https://phabricator.services.mozilla.com/D321913",
      "description": "The test asserts that the preload is cancelled with parent-connect-timeout,\nwhich requires the 1ms timer started by EarlyHintPreloader::Register() to beat\nthe content process connecting back for the hint. On a machine that completes\nthe connect-back in under a millisecond the timer loses, the channel is adopted\nrather than cancelled, and canceledReason is empty. That is most macOS runs and\noccasionally Windows.\n\nAn image document has no nsContentSink, so ProcessHTTPHeaders never runs and\nthe hint is never processed in the content process. The connect-back then\ncannot happen and the timer is the only thing that can cancel the preload.\nThe test now also asserts that earlyhints-connectback never fires, so that\nreintroducing the race fails loudly instead of silently going back to\nmeasuring it.\n\nThis replaces the 500ms delay added in D294363, which could not help: Register()\nstarts the timer at the 200 response, so delaying the 200 delays the timer too.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321913",
      "email": "florian@queze.net",
      "hash": "2b6d35749dbe65f9b069d8494ff0ca9d31bdc385",
      "subject": "Bug 1829935 - Serve an image document in browser_103_cleanup.js so the early hint is never connected back, r=valentin,necko-reviewers."
    },
    "D321950": {
      "author": "Rob Wu",
      "avatar": "https://www.gravatar.com/avatar/30e26944b9b786ea16fce8b18394c6e4?d=identicon\u0026s=64",
      "cl": "D321950",
      "clUrl": "https://phabricator.services.mozilla.com/D321950",
      "description": "This fixes two bugs in the implementation and adds test coverage that\nverifies both fixes. For details, see\nhttps://bugzilla.mozilla.org/show_bug.cgi?id=2065230#c3\n\nDifferential Revision: https://phabricator.services.mozilla.com/D321950",
      "email": "rob@robwu.nl",
      "hash": "d3ccc05ae75710a44587fe748549e65d54930d12",
      "subject": "Bug 2065230 - Fix data corruption after filter.disconnect() r=necko-reviewers,valentin"
    },
    "D321957": {
      "author": "Leo Tenenbaum",
      "avatar": "https://www.gravatar.com/avatar/191826fbebe3973ebd6d6eb595ddb5c2?d=identicon\u0026s=64",
      "cl": "D321957",
      "clUrl": "https://phabricator.services.mozilla.com/D321957",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D321957",
      "email": "ltenenbaum@mozilla.com",
      "hash": "980e89fdcb3cfe520f7bace6ec4db17f4b47c997",
      "subject": "Bug 2067230 - Set white-space:pre on EditContext anonymous element. r=masayuki"
    },
    "D321971": {
      "author": "Michael Kaply",
      "avatar": "https://www.gravatar.com/avatar/dc84c7d304a23e0a62a86580dd08c587?d=identicon\u0026s=64",
      "cl": "D321971",
      "clUrl": "https://phabricator.services.mozilla.com/D321971",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D321971",
      "email": "mozilla@kaply.com",
      "hash": "674ab89622d796e216e1d41b5a5ff7e4bfc62d51",
      "subject": "Bug 2067099 - Contain unresolvable Handlers entries so later entries are still processed. r=bsmth"
    },
    "D322052": {
      "author": "Exploding-Joysticks",
      "avatar": "https://www.gravatar.com/avatar/1ba79b33017b89958b6d1fc35256c809?d=identicon\u0026s=64",
      "cl": "D322052",
      "clUrl": "https://phabricator.services.mozilla.com/D322052",
      "description": "The bug also mentions the --disable-av1 and --disable-fmp4 flags, but it seems those have been removed already.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D322052",
      "email": "ExplodingJoysticks@proton.me",
      "hash": "a8664303447293d52c61b505dbbc2735891c5d6a",
      "subject": "Bug 1578480 - Remove the unused --disable-wmf and --disable-ffmpeg flags on moz.configure r=firefox-build-system-reviewers,sergesanspaille"
    },
    "D322056": {
      "author": "Andrew Osmond",
      "avatar": "https://www.gravatar.com/avatar/bff3d32989145dfc299efa3b8dac36f7?d=identicon\u0026s=64",
      "cl": "D322056",
      "clUrl": "https://phabricator.services.mozilla.com/D322056",
      "description": "This allows us to match, via the downloadable blocklist, entries to\nthe secondary adapter, or a wildcard to match any adapter. This is\nuseful for situations like hardware encoding, where the primary\ndevice may be acceptable (e.g. NVIDIA) but the secondary device is\nnot (e.g. old Intel), and the platform encoder may end up using the\nsecondary for hardware encoding.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D322056",
      "email": "aosmond@mozilla.com",
      "hash": "158f247b4db1b3e11ace0177faf6cb5e136c8b66",
      "subject": "Bug 2067364 - Part 1. Implement adapter match selection from the gfx blocklist. r=gfx-reviewers,nical"
    },
    "D322057": {
      "author": "Andrew Osmond",
      "avatar": "https://www.gravatar.com/avatar/bff3d32989145dfc299efa3b8dac36f7?d=identicon\u0026s=64",
      "cl": "D322057",
      "clUrl": "https://phabricator.services.mozilla.com/D322057",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D322057",
      "email": "aosmond@mozilla.com",
      "hash": "72b784813f5f33d79105a846e604f2c2b490f242",
      "subject": "Bug 2067364 - Part 2. Add tests for gfx blocklist adapter matching. r=gfx-reviewers,nical"
    },
    "D322058": {
      "author": "Andrew Osmond",
      "avatar": "https://www.gravatar.com/avatar/bff3d32989145dfc299efa3b8dac36f7?d=identicon\u0026s=64",
      "cl": "D322058",
      "clUrl": "https://phabricator.services.mozilla.com/D322058",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D322058",
      "email": "aosmond@mozilla.com",
      "hash": "d02caf81ab6ef0bbe70fcbe4e6388923d1744e96",
      "subject": "Bug 2048390 - Block old Intel/AMD devices/drivers from hardware encoding distilled from crash reports. r=gfx-reviewers,media-playback-reviewers,nical,padenot"
    },
    "D322068": {
      "author": "Ryan VanderMeulen",
      "avatar": "https://www.gravatar.com/avatar/51823ded02903fa76c961fe2a3c1318a?d=identicon\u0026s=64",
      "cl": "D322068",
      "clUrl": "https://phabricator.services.mozilla.com/D322068",
      "description": "Every read of sInitialized happens inside a MOZ_ASSERT, so opt builds only ever write to it. clang 23\nflags that under -Wunused-but-set-global, which -Wall now enables transitively via\n-Wunused-but-set-variable, busting the plain clang-trunk build.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D322068",
      "email": "rvandermeulen@mozilla.com",
      "hash": "0c383a8505dbe24fa5e178a7818eb149ca3f13a8",
      "subject": "Bug 2067405 - mark hal's sInitialized as maybe_unused. r=gsvelto"
    },
    "D322069": {
      "author": "Calixte Denizet",
      "avatar": "https://www.gravatar.com/avatar/4546427c28f29c34fe095c40c137ef35?d=identicon\u0026s=64",
      "cl": "D322069",
      "clUrl": "https://phabricator.services.mozilla.com/D322069",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D322069",
      "email": "calixte.denizet@gmail.com",
      "hash": "be2c1653f292494470ba369fd7559ffc9b9b78e6",
      "subject": "Bug 2067413 - Update PDF.js to new version c3257df8db58845021faea9642b0237f7c2e5101 r=pdfjs-reviewers,marco"
    },
    "D322091": {
      "author": "Tymur Boiko",
      "avatar": "https://www.gravatar.com/avatar/e5455cbc9ccf5951783c79fc29beda3c?d=identicon\u0026s=64",
      "cl": "D322091",
      "clUrl": "https://phabricator.services.mozilla.com/D322091",
      "description": "Stop forcing MOZ_FFVPX_AUDIOONLY on Linux/BSD aarch64 so VP8/VP9/AV1\n(and VAAPI/Vulkan when enabled) build like other aarch64 targets, and\nenable CONFIG_LIBDAV1D in config_unix_aarch64.h to match unix64.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D322091",
      "email": "tboiko@nvidia.com",
      "hash": "277eb5ff66bbffa04202d6e6166e9bbcb5709d0c",
      "subject": "Bug 2066032 - Add aarch64 video decode support to ffvpx. r=padenot,stransky,media-playback-reviewers"
    },
    "D322111": {
      "author": "Kershaw Chang",
      "avatar": "https://www.gravatar.com/avatar/608e04ebca94be52b05c003d51d43e07?d=identicon\u0026s=64",
      "cl": "D322111",
      "clUrl": "https://phabricator.services.mozilla.com/D322111",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D322111",
      "email": "kershaw@mozilla.com",
      "hash": "9e16b3bb2897d8467ce378ef2fde2c6e29e004fe",
      "subject": "Bug 2067488 - Enable network.http.happy_eyeballs_enabled on nightly only, r=mxinden"
    },
    "D322116": {
      "author": "Jens Stutte",
      "avatar": "https://www.gravatar.com/avatar/9dcff4a8838b41f34d204c2f4cadbcc4?d=identicon\u0026s=64",
      "cl": "D322116",
      "clUrl": "https://phabricator.services.mozilla.com/D322116",
      "description": "nsHttp::DestroyAtomTable() was only reached from ~nsHttpHandler, which does not\nrun while anything else still holds a reference to the handler. The atom table\nthen still has its entries when its own static destructor runs at exit(), and\nreleasing their string buffers that late goes through NS_LogRelease in debug\nbuilds, which locks gTraceLog after it has already been destroyed.\n\nCall an explicit Shutdown() from the shutdown hook that already cleared\ngHttpHandler, so the teardown no longer depends on the refcount reaching zero.\n\nThe bug suggests the smaller fix of never destroying sAtomTable at all. That\nwould hide the symptom along with the crash: entries left this late mean\nsomething did not get torn down, and they would still be alive when\nNS_LogTerm() closes leak accounting, trading the crash for leak reports.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D322116",
      "email": "jstutte@mozilla.com",
      "hash": "accf295417cc38b50b1078d06ffe589a1123b8cd",
      "subject": "Bug 2040442 - Shut nsHttpHandler down explicitly rather than from its destructor. r=necko-reviewers,valentin"
    },
    "D322146": {
      "author": "giddeon",
      "avatar": "https://www.gravatar.com/avatar/69d058e414d273e746d70d7d443dcd2a?d=identicon\u0026s=64",
      "cl": "D322146",
      "clUrl": "https://phabricator.services.mozilla.com/D322146",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D322146",
      "email": "s.giddeon.card@gmail.com",
      "hash": "5c44cb6ca110b934ea6bb680a8c93b32e3d45ec9",
      "subject": "Bug 2067328 - Removed duplicate method from TestTreeManager.cpp. r=botond"
    },
    "D322180": {
      "author": "Gopalarathnam Venkatesan",
      "avatar": "https://www.gravatar.com/avatar/f756192b8138a062f328c2e256b84325?d=identicon\u0026s=64",
      "cl": "D322180",
      "clUrl": "https://phabricator.services.mozilla.com/D322180",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D322180",
      "email": "gopal@g13n.net",
      "hash": "a747f976517eb34fe78d58dac2d40e16b44e3bdb",
      "subject": "Bug 2042432 - Fix clippy warnings in toolkit/crashreporter/mozannotation_client/src/lib.rs r=sylvestre"
    },
    "D322182": {
      "author": "Christoph Moench-Tegeder",
      "avatar": "https://www.gravatar.com/avatar/89e98d5955f340a78c4a8445f48a292e?d=identicon\u0026s=64",
      "cl": "D322182",
      "clUrl": "https://phabricator.services.mozilla.com/D322182",
      "description": "Pull in the code we already have in FreeBSD builds.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D322182",
      "email": "cmt@burggraben.net",
      "hash": "2a3aa78f2b1ac6b0eaaa94ed57b703b843a67919",
      "subject": "Bug 2067591 - Enable resolving of HTTPS RRs on FreeBSD r=valentin,necko-reviewers"
    },
    "D322197": {
      "author": "Emilio Cobos Álvarez",
      "avatar": "https://www.gravatar.com/avatar/1d91d22a4892f16f744b31fd4286144e?d=identicon\u0026s=64",
      "cl": "D322197",
      "clUrl": "https://phabricator.services.mozilla.com/D322197",
      "description": "This was used in the following commits.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D322197",
      "email": "emilio@crisal.io",
      "hash": "0f740f387321b4af5906f934548525380ad3e086",
      "subject": "Bug 2067607 - Allow cargo fix to run and fix particular crates. r=firefox-build-system-reviewers,sergesanspaille"
    },
    "D322230": {
      "author": "Makoto Kato",
      "avatar": "https://www.gravatar.com/avatar/1875645d5594d36bca29657d51d24ed6?d=identicon\u0026s=64",
      "cl": "D322230",
      "clUrl": "https://phabricator.services.mozilla.com/D322230",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D322230",
      "email": "m_kato@ga2.so-net.ne.jp",
      "hash": "f601d09ece2964b08e7be2a6b05f0fb57e567876",
      "subject": "Bug 2027336 - Always call forget. r=platform-i18n-reviewers,nordzilla"
    },
    "D322240": {
      "author": "Jens Stutte",
      "avatar": "https://www.gravatar.com/avatar/9dcff4a8838b41f34d204c2f4cadbcc4?d=identicon\u0026s=64",
      "cl": "D322240",
      "clUrl": "https://phabricator.services.mozilla.com/D322240",
      "description": "An #ifdef MOZ_MEMORY split the if/else chain, so the else that resets the\nmodifier hangs off the background test rather than the foreground one: a\nforeground content process sets 4 and zeroes it again in the next statement,\na no-op since Firefox 137. Decide the modifier once and apply it once.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D322240",
      "email": "jstutte@mozilla.com",
      "hash": "08f4f4f8df86cab5c2b4503ff457ff588f081196",
      "subject": "Bug 2067590 - Set the max dirty page modifier once per process priority. r=smaug"
    },
    "D322242": {
      "author": "Dão Gottwald",
      "avatar": "https://www.gravatar.com/avatar/45dfe136efbb8e5f89eb0b21775ab195?d=identicon\u0026s=64",
      "cl": "D322242",
      "clUrl": "https://phabricator.services.mozilla.com/D322242",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D322242",
      "email": "dao@mozilla.com",
      "hash": "8b31ac1f65f34e791bd6f3a805b1eb18aee575c2",
      "subject": "Bug 2067637 - Change the view's scrollbar-width from auto to thin. r=daleharvey,urlbar-reviewers"
    },
    "D322247": {
      "author": "Dão Gottwald",
      "avatar": "https://www.gravatar.com/avatar/45dfe136efbb8e5f89eb0b21775ab195?d=identicon\u0026s=64",
      "cl": "D322247",
      "clUrl": "https://phabricator.services.mozilla.com/D322247",
      "description": "The results are no longer frozen, and tsc enforces the required properties in place of the constructor's runtime check.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D322247",
      "email": "dao@mozilla.com",
      "hash": "d11234d499fc6e3c45510b5ac8f2d6d30c506fbc",
      "subject": "Bug 2052621 - Convert ActionsResult from a class to a plain object and a typedef. r=daleharvey"
    },
    "f9d1d8f9edc8": {
      "author": "agoloman",
      "avatar": "https://www.gravatar.com/avatar/cd12c4a70c28dead95af1f72ff892316?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 5cc395ac1e6702238799f74ce7da25a8119e1b28.",
      "email": "agoloman@mozilla.com",
      "hash": "f9d1d8f9edc85925694540411ea48b38315623ef",
      "subject": "Revert \"Bug 2066087 - Fix ANR and layout issues in tabs popup r=android-reviewers,avirvara\" for causing bc failures @browser_context_menu_iframe.js."
    }
  },
  "date": "2026-08-31",
  "days": 1,
  "generatedAt": "2026-08-31T22:06:39Z",
  "markdown": "## Highlights\n- **Media** Firefox now blocklists hardware video encoding on crash-prone older Intel and AMD GPUs, cutting a known source of encoder instability. [Phab D322058](https://phabricator.services.mozilla.com/D322058) [bug 2048390](https://bugzilla.mozilla.org/show_bug.cgi?id=2048390)\n- **Mobile** Android's AwesomeBar got a real usability pass with current-tab actions, reload/edit/copy/share flows, and tighter sizing that makes address entry faster. [Phab D319169](https://phabricator.services.mozilla.com/D319169) [bug 2058212](https://bugzilla.mozilla.org/show_bug.cgi?id=2058212)\n- **Networking** Happy Eyeballs is now enabled on Nightly only, a controlled step toward faster dual-stack connection setup without overexposing risk. [Phab D322111](https://phabricator.services.mozilla.com/D322111) [bug 2067488](https://bugzilla.mozilla.org/show_bug.cgi?id=2067488)\n- **Privacy** Service worker resistFingerprinting coverage expanded to timer precision and navigator spoofing, tightening test protection around anti-fingerprinting behavior. [Phab D316822](https://phabricator.services.mozilla.com/D316822) [bug 2061233](https://bugzilla.mozilla.org/show_bug.cgi?id=2061233)\n- **Security** Content processes can no longer send parent-only Client operations, closing off an IPC misuse path. [Phab D321169](https://phabricator.services.mozilla.com/D321169) [bug 2061777](https://bugzilla.mozilla.org/show_bug.cgi?id=2061777)\n- **Media** ffvpx gained aarch64 video decode support, improving codec coverage on ARM64 systems. [Phab D322091](https://phabricator.services.mozilla.com/D322091) [bug 2066032](https://bugzilla.mozilla.org/show_bug.cgi?id=2066032)\n- **GPU** Wayland now uses the layer compositor on Linux, a meaningful compositor-path shift for graphics behavior on that stack. [Phab D321495](https://phabricator.services.mozilla.com/D321495) [bug 2066679](https://bugzilla.mozilla.org/show_bug.cgi?id=2066679)\n- **Perf** nsHttpHandler now shuts down explicitly instead of waiting for destructor teardown, making Necko shutdown more deterministic. [Phab D322116](https://phabricator.services.mozilla.com/D322116) [bug 2040442](https://bugzilla.mozilla.org/show_bug.cgi?id=2040442)\n- **Mobile** Firefox Android replaced broad coroutine globals with structured application scopes across Fenix, Focus, and Android Components, reducing background task footguns. [Phab D297657](https://phabricator.services.mozilla.com/D297657) [bug 1990613](https://bugzilla.mozilla.org/show_bug.cgi?id=1990613)\n\n## What landed by area\n\n### Android UI\n- **Mobile** AwesomeBar now shows current tab data directly in the address surface. [Phab D319169](https://phabricator.services.mozilla.com/D319169) [bug 2058212](https://bugzilla.mozilla.org/show_bug.cgi?id=2058212)\n- **Mobile** A new Nimbus-driven addressbar focus mode landed to support experiment-driven AwesomeBar behavior. [Phab D319170](https://phabricator.services.mozilla.com/D319170) [bug 2058212](https://bugzilla.mozilla.org/show_bug.cgi?id=2058212)\n- **Mobile** AwesomeBar can now share the current website details. [Phab D319171](https://phabricator.services.mozilla.com/D319171) [bug 2058212](https://bugzilla.mozilla.org/show_bug.cgi?id=2058212)\n- **Mobile** AwesomeBar can now copy current website details. [Phab D319172](https://phabricator.services.mozilla.com/D319172) [bug 2058212](https://bugzilla.mozilla.org/show_bug.cgi?id=2058212)\n- **Mobile** AwesomeBar can now edit the current website URL in place. [Phab D319173](https://phabricator.services.mozilla.com/D319173) [bug 2058212](https://bugzilla.mozilla.org/show_bug.cgi?id=2058212)\n- **Mobile** AwesomeBar can now reload the current website from the address UI. [Phab D319556](https://phabricator.services.mozilla.com/D319556) [bug 2058212](https://bugzilla.mozilla.org/show_bug.cgi?id=2058212)\n- **UI** AwesomeBar width is now capped at 600dp for more controlled tablet and large-screen layout. [Phab D319174](https://phabricator.services.mozilla.com/D319174) [bug 2058212](https://bugzilla.mozilla.org/show_bug.cgi?id=2058212)\n- **UI** Spacing between AwesomeBar items was reduced to tighten scanability. [Phab D319751](https://phabricator.services.mozilla.com/D319751) [bug 2064605](https://bugzilla.mozilla.org/show_bug.cgi?id=2064605)\n- **Mobile** History items on Android are now grouped by exact date. [Phab D318438](https://phabricator.services.mozilla.com/D318438) [bug 2011543](https://bugzilla.mozilla.org/show_bug.cgi?id=2011543)\n- **UI** Tabs popup ANR and layout fixes landed for Android, though rollout proved unstable enough to get backed out later. [Phab D321549](https://phabricator.services.mozilla.com/D321549) [bug 2066087](https://bugzilla.mozilla.org/show_bug.cgi?id=2066087)\n- **Build** AwesomeBar test tags were grouped into a dedicated class to clean up test structure. [Phab D319554](https://phabricator.services.mozilla.com/D319554) [bug 2058212](https://bugzilla.mozilla.org/show_bug.cgi?id=2058212)\n- **UI** Main Android wordmark assets moved to drawable-nodpi for more consistent resource handling. [Phab D321863](https://phabricator.services.mozilla.com/D321863) [bug 2066693](https://bugzilla.mozilla.org/show_bug.cgi?id=2066693)\n\n### Android architecture and sync\n- **Refactor** Fenix replaced GlobalScope with a structured applicationScope for app-wide background work. [Phab D297657](https://phabricator.services.mozilla.com/D297657) [bug 1990613](https://bugzilla.mozilla.org/show_bug.cgi?id=1990613)\n- **Refactor** Focus introduced a structured applicationScope in FocusApplication and Components. [Phab D297656](https://phabricator.services.mozilla.com/D297656) [bug 1990613](https://bugzilla.mozilla.org/show_bug.cgi?id=1990613)\n- **Refactor** Android Components replaced GlobalScope and coroutineContext with explicit application-provided CoroutineScope wiring. [Phab D297659](https://phabricator.services.mozilla.com/D297659) [bug 1990613](https://bugzilla.mozilla.org/show_bug.cgi?id=1990613)\n- **Refactor** Android Components sample apps were updated to structured CoroutineScope usage too. [Phab D297658](https://phabricator.services.mozilla.com/D297658) [bug 1990613](https://bugzilla.mozilla.org/show_bug.cgi?id=1990613)\n- **Mobile** SyncStateStorage was introduced as the new home for sync state data. [Phab D321816](https://phabricator.services.mozilla.com/D321816) [bug 2065168](https://bugzilla.mozilla.org/show_bug.cgi?id=2065168)\n- **Refactor** Direct syncPrefs access now goes through the SyncStateStorage API. [Phab D321817](https://phabricator.services.mozilla.com/D321817) [bug 2065168](https://bugzilla.mozilla.org/show_bug.cgi?id=2065168)\n- **Mobile** Firefox Accounts capabilities now include keys_optional in fxa_status. [Phab D321894](https://phabricator.services.mozilla.com/D321894) [bug 2064408](https://bugzilla.mozilla.org/show_bug.cgi?id=2064408)\n\n### Networking and protocols\n- **Networking** HTTPS RR resolution was enabled on FreeBSD. [Phab D322182](https://phabricator.services.mozilla.com/D322182) [bug 2067591](https://bugzilla.mozilla.org/show_bug.cgi?id=2067591)\n- **Networking** Happy Eyeballs is Nightly-only for now, limiting exposure while the stack is exercised. [Phab D322111](https://phabricator.services.mozilla.com/D322111) [bug 2067488](https://bugzilla.mozilla.org/show_bug.cgi?id=2067488)\n- **Networking** nsHttpHandler now shuts down explicitly instead of via destructor side effects. [Phab D322116](https://phabricator.services.mozilla.com/D322116) [bug 2040442](https://bugzilla.mozilla.org/show_bug.cgi?id=2040442)\n- **Networking** Stream filter corruption after filter.disconnect() was fixed. [Phab D321950](https://phabricator.services.mozilla.com/D321950) [bug 2065230](https://bugzilla.mozilla.org/show_bug.cgi?id=2065230)\n- **Perf** test_trr_bench.js now alerts, adding visibility to DNS-over-HTTPS performance regressions. [Phab D321811](https://phabricator.services.mozilla.com/D321811) [bug 2067049](https://bugzilla.mozilla.org/show_bug.cgi?id=2067049)\n- **Build** A perfdocs node error was fixed to keep perf documentation tooling healthy. [Phab D321819](https://phabricator.services.mozilla.com/D321819) [bug 2067049](https://bugzilla.mozilla.org/show_bug.cgi?id=2067049)\n- **Networking** A browser cleanup test now serves an image document so an early hint never reconnects back into the tested path. [Phab D321913](https://phabricator.services.mozilla.com/D321913) [bug 1829935](https://bugzilla.mozilla.org/show_bug.cgi?id=1829935)\n\n### Media, graphics, and compositing\n- **Media** Older Intel and AMD devices and drivers are now blocked from hardware encoding based on crash data. [Phab D322058](https://phabricator.services.mozilla.com/D322058) [bug 2048390](https://bugzilla.mozilla.org/show_bug.cgi?id=2048390)\n- **GPU** gfx blocklist adapter matching was implemented, enabling more precise blocklist targeting. [Phab D322056](https://phabricator.services.mozilla.com/D322056) [bug 2067364](https://bugzilla.mozilla.org/show_bug.cgi?id=2067364)\n- **Testing** Adapter matching tests were added for the gfx blocklist logic. [Phab D322057](https://phabricator.services.mozilla.com/D322057) [bug 2067364](https://bugzilla.mozilla.org/show_bug.cgi?id=2067364)\n- **Media** ffvpx gained aarch64 video decode support. [Phab D322091](https://phabricator.services.mozilla.com/D322091) [bug 2066032](https://bugzilla.mozilla.org/show_bug.cgi?id=2066032)\n- **GPU** On Linux, VA-API blits now copy only the actual texture content. [Phab D321799](https://phabricator.services.mozilla.com/D321799) [bug 2054811](https://bugzilla.mozilla.org/show_bug.cgi?id=2054811)\n- **GPU** Wayland now uses the layer compositor on Linux. [Phab D321495](https://phabricator.services.mozilla.com/D321495) [bug 2066679](https://bugzilla.mozilla.org/show_bug.cgi?id=2066679)\n- **Media** PDF.js was updated to a newer upstream snapshot. [Phab D322069](https://phabricator.services.mozilla.com/D322069) [bug 2067413](https://bugzilla.mozilla.org/show_bug.cgi?id=2067413)\n- **Media** A gtest now exercises immediate AudioCallbackDriver stream name changes. [Phab D305796](https://phabricator.services.mozilla.com/D305796) [bug 2042242](https://bugzilla.mozilla.org/show_bug.cgi?id=2042242)\n\n### DOM, editor, and session behavior\n- **Web Platform** EditContext's anonymous element now uses white-space: pre, aligning rendering behavior with editable text expectations. [Phab D321957](https://phabricator.services.mozilla.com/D321957) [bug 2067230](https://bugzilla.mozilla.org/show_bug.cgi?id=2067230)\n- **Web Platform** Dialogs stay disabled when there is no viewer. [Phab D321798](https://phabricator.services.mozilla.com/D321798) [bug 2064957](https://bugzilla.mozilla.org/show_bug.cgi?id=2064957)\n- **Web Platform** Documents loaded as data no longer fire doc element created notifications. [Phab D318718](https://phabricator.services.mozilla.com/D318718) [bug 2063284](https://bugzilla.mozilla.org/show_bug.cgi?id=2063284)\n- **UI** The current session history entry is now marked as interacted with in the parent process. [Phab D321904](https://phabricator.services.mozilla.com/D321904) [bug 1934436](https://bugzilla.mozilla.org/show_bug.cgi?id=1934436)\n- **Testing** browser_test_position_sticky.js was re-enabled under Nova. [Phab D316627](https://phabricator.services.mozilla.com/D316627) [bug 2055043](https://bugzilla.mozilla.org/show_bug.cgi?id=2055043)\n- **Testing** browser_ext_browserAction_popup_resize_bottom.js was unskipped on Nova except for linux22.04 Wayland jobs. [Phab D316894](https://phabricator.services.mozilla.com/D316894) [bug 2057843](https://bugzilla.mozilla.org/show_bug.cgi?id=2057843)\n- **Testing** An automated test landed for bug 2022026. [Phab D287522](https://phabricator.services.mozilla.com/D287522) [bug 2022026](https://bugzilla.mozilla.org/show_bug.cgi?id=2022026)\n- **Testing** A reported testcase landed for bug 2023927. [Phab D292279](https://phabricator.services.mozilla.com/D292279) [bug 2023927](https://bugzilla.mozilla.org/show_bug.cgi?id=2023927)\n\n### Security, privacy, and storage\n- **Security** Parent-only Client operations from content processes are now rejected. [Phab D321169](https://phabricator.services.mozilla.com/D321169) [bug 2061777](https://bugzilla.mozilla.org/show_bug.cgi?id=2061777)\n- **Privacy** ResistFingerprinting service worker tests now cover timer precision and navigator spoofing. [Phab D316822](https://phabricator.services.mozilla.com/D316822) [bug 2061233](https://bugzilla.mozilla.org/show_bug.cgi?id=2061233)\n- **Security** Login autofill candidates are now filtered without decryption, reducing unnecessary secret handling in that path. [Phab D321830](https://phabricator.services.mozilla.com/D321830) [bug 2065441](https://bugzilla.mozilla.org/show_bug.cgi?id=2065441)\n- **Testing** A test landed for unexpected PrP prompts in the credential flow. [Phab D321829](https://phabricator.services.mozilla.com/D321829) [bug 2065079](https://bugzilla.mozilla.org/show_bug.cgi?id=2065079)\n- **Perf** OriginInfo changes no longer race because the storage mutex is held continuously through the update. [Phab D314958](https://phabricator.services.mozilla.com/D314958) [bug 2056841](https://bugzilla.mozilla.org/show_bug.cgi?id=2056841)\n- **Testing** browser_formless_submit_chrome.js now waits for FormProcessed after each navigation. [Phab D321905](https://phabricator.services.mozilla.com/D321905) [bug 1984820](https://bugzilla.mozilla.org/show_bug.cgi?id=1984820)\n- **Testing** browser_doorhanger_dismissed_for_ccnumber.js now waits for FormProcessed after submit. [Phab D321906](https://phabricator.services.mozilla.com/D321906) [bug 1984820](https://bugzilla.mozilla.org/show_bug.cgi?id=1984820)\n- **Testing** Notifications arriving from a closed tab are now reported in credential manager tests. [Phab D321907](https://phabricator.services.mozilla.com/D321907) [bug 1984820](https://bugzilla.mozilla.org/show_bug.cgi?id=1984820)\n- **Testing** browser_formless_submit_chrome.js was re-enabled on macOS 15 aarch64. [Phab D321908](https://phabricator.services.mozilla.com/D321908) [bug 2062458](https://bugzilla.mozilla.org/show_bug.cgi?id=2062458)\n\n### Browser UI and UX\n- **UI** about:addons now adds block margin around the global-warnings webcomponent. [Phab D321233](https://phabricator.services.mozilla.com/D321233) [bug 2066436](https://bugzilla.mozilla.org/show_bug.cgi?id=2066436)\n- **UI** about:addons now adds block margin between message-bar-stack and themes mode. [Phab D321234](https://phabricator.services.mozilla.com/D321234) [bug 2066436](https://bugzilla.mozilla.org/show_bug.cgi?id=2066436)\n- **UI** The trust panel now closes on navigation. [Phab D321075](https://phabricator.services.mozilla.com/D321075) [bug 2058199](https://bugzilla.mozilla.org/show_bug.cgi?id=2058199)\n- **UI** The newtab search bar now has test coverage for dismissing a recent search. [Phab D321889](https://phabricator.services.mozilla.com/D321889) [bug 2066405](https://bugzilla.mozilla.org/show_bug.cgi?id=2066405)\n- **UI** A view switched its scrollbar-width from auto to thin. [Phab D322242](https://phabricator.services.mozilla.com/D322242) [bug 2067637](https://bugzilla.mozilla.org/show_bug.cgi?id=2067637)\n- **Refactor** ActionsResult was simplified from a class into a plain object plus typedef. [Phab D322247](https://phabricator.services.mozilla.com/D322247) [bug 2052621](https://bugzilla.mozilla.org/show_bug.cgi?id=2052621)\n- **Refactor** Copy Clean Link renamed its origins array to the more accurate hosts. [Phab D321344](https://phabricator.services.mozilla.com/D321344) [bug 2064455](https://bugzilla.mozilla.org/show_bug.cgi?id=2064455)\n\n### JavaScript engine and platform plumbing\n- **V8** The debugger's IsInCatchScopeMatcher got a small bug fix in for-of related work. [Phab D321785](https://phabricator.services.mozilla.com/D321785) [bug 2066996](https://bugzilla.mozilla.org/show_bug.cgi?id=2066996)\n- **V8** for-of IteratorClose bytecode is now emitted after the loop. [Phab D321786](https://phabricator.services.mozilla.com/D321786) [bug 2066996](https://bugzilla.mozilla.org/show_bug.cgi?id=2066996)\n- **V8** The now-unused TryNoteKind::ForOfIterClose was removed. [Phab D321787](https://phabricator.services.mozilla.com/D321787) [bug 2066996](https://bugzilla.mozilla.org/show_bug.cgi?id=2066996)\n- **Refactor** Unresolvable Handlers entries are now contained so later entries still get processed. [Phab D321971](https://phabricator.services.mozilla.com/D321971) [bug 2067099](https://bugzilla.mozilla.org/show_bug.cgi?id=2067099)\n- **Refactor** A duplicate method was removed from TestTreeManager.cpp. [Phab D322146](https://phabricator.services.mozilla.com/D322146) [bug 2067328](https://bugzilla.mozilla.org/show_bug.cgi?id=2067328)\n- **Refactor** hal's sInitialized is now marked maybe_unused. [Phab D322068](https://phabricator.services.mozilla.com/D322068) [bug 2067405](https://bugzilla.mozilla.org/show_bug.cgi?id=2067405)\n- **Refactor** The i18n path now always calls forget where needed. [Phab D322230](https://phabricator.services.mozilla.com/D322230) [bug 2027336](https://bugzilla.mozilla.org/show_bug.cgi?id=2027336)\n- **Web Platform** OffscreenCanvas.convertToBlob now has a test asserting NaN quality matches the unspecified case. [Phab D303384](https://phabricator.services.mozilla.com/D303384) [bug 2049325](https://bugzilla.mozilla.org/show_bug.cgi?id=2049325)\n\n### Build, tooling, and maintenance\n- **Build** cargo fix can now run and target particular crates. [Phab D322197](https://phabricator.services.mozilla.com/D322197) [bug 2067607](https://bugzilla.mozilla.org/show_bug.cgi?id=2067607)\n- **Build** moz.configure dropped the unused --disable-wmf and --disable-ffmpeg flags, though that change was later backed out for bustage. [Phab D322052](https://phabricator.services.mozilla.com/D322052) [bug 1578480](https://bugzilla.mozilla.org/show_bug.cgi?id=1578480)\n- **Build** encoding_rs was updated ahead of 0.8.40. [Phab D316770](https://phabricator.services.mozilla.com/D316770) [bug 2061103](https://bugzilla.mozilla.org/show_bug.cgi?id=2061103)\n- **Build** Clippy warnings were fixed in mozannotation_client's Rust code. [Phab D322180](https://phabricator.services.mozilla.com/D322180) [bug 2042432](https://bugzilla.mozilla.org/show_bug.cgi?id=2042432)\n- **Build** jittests were turned off on macOS hardware machines and left running only on VMs. [Phab D319650](https://phabricator.services.mozilla.com/D319650) [bug 2064552](https://bugzilla.mozilla.org/show_bug.cgi?id=2064552)\n- **Build** parser/html's make translate flow was fixed. [Phab D320534](https://phabricator.services.mozilla.com/D320534) [bug 2065594](https://bugzilla.mozilla.org/show_bug.cgi?id=2065594)\n- **Refactor** Glean is now shut down for storage gtests. [Phab D319045](https://phabricator.services.mozilla.com/D319045) [bug 2063990](https://bugzilla.mozilla.org/show_bug.cgi?id=2063990)\n- **Build** test_new_profile.js updated its mock to account for the current install on MSIX. [Phab D321406](https://phabricator.services.mozilla.com/D321406) [bug 2062143](https://bugzilla.mozilla.org/show_bug.cgi?id=2062143)\n- **Refactor** The outdated flash-block-lists source-docs page was removed. [Phab D321869](https://phabricator.services.mozilla.com/D321869) [bug 1932948](https://bugzilla.mozilla.org/show_bug.cgi?id=1932948)\n- **Perf** The max dirty page modifier is now set once per process priority. [Phab D322240](https://phabricator.services.mozilla.com/D322240) [bug 2067590](https://bugzilla.mozilla.org/show_bug.cgi?id=2067590)\n\n## Reverts \u0026 Reapplies\n- **Revert** Reverted filtering autofill login candidates without decryption after bc failures in browser_context_menu_iframe.js. [bug 2065441](https://bugzilla.mozilla.org/show_bug.cgi?id=2065441)\n- **Revert** Reverted the Android tabs popup ANR and layout fix after bc failures in browser_context_menu_iframe.js. [bug 2066087](https://bugzilla.mozilla.org/show_bug.cgi?id=2066087)\n- **Revert** Reverted removal of moz.configure's unused media disable flags after build bustage in DecoderDoctorDiagnostics.cpp. [bug 1578480](https://bugzilla.mozilla.org/show_bug.cgi?id=1578480)",
  "repo": "firefox",
  "repoDisplay": "Firefox",
  "rollGroups": [
    {
      "name": "No",
      "count": 3
    },
    {
      "name": "Automatic",
      "count": 1
    }
  ],
  "since": "2026-08-31",
  "totals": {
    "commits": 84,
    "features": 80,
    "rolls": 4
  },
  "until": "2026-08-31"
}