{
  "commits": {
    "067811669c38": {
      "author": "Cosmin Sabou",
      "avatar": "https://www.gravatar.com/avatar/392cb3f0cf45743e207bd4bcde85f272?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 87da108b960276302d942da94a2aa1db8b2405da.",
      "email": "csabou@mozilla.com",
      "hash": "067811669c388e719566372e7822749508957b78",
      "subject": "Revert \"Bug 2044741 - [devtools] Delay devtools JSProcess actor unregistration. r=devtools-reviewers,nchevobbe\" for causing frequent assertion failures as in bug 1756240."
    },
    "113c476278d4": {
      "author": "pstanciu",
      "avatar": "https://www.gravatar.com/avatar/cd361de239f63fe1459e93f742450a3d?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 22c05c2eb5ec9dc7531587161d31cbc156acdb1f.",
      "email": "pstanciu@mozilla.com",
      "hash": "113c476278d4cd7479c0e67776218efdca4e4856",
      "subject": "Revert \"Bug 2051499 - Fix Smart Window strings before exposing for localization, r=flozia\" for a followup fix as requested by flod"
    },
    "17f4ed4a0f11": {
      "author": "Serban Stanca",
      "avatar": "https://www.gravatar.com/avatar/977312186062f329a7e4302ab972ae7b?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 32f55162dcaf84058660f0dffeef51881b1538c4.\n\nThis reverts commit 3c6b176eef4728b97382df65536f4aec8e22ee25.\n\nThis reverts commit 0a014c5f2eed89b7fa13df39531f768f2634b4f2.\n\nThis reverts commit 1132215a19535b0ab8946df0fcbf1fa85287cd4e.\n\nThis reverts commit 54d87f3811b33e806513cf0a6ade45fb9ea2eb1d.",
      "email": "sstanca@mozilla.com",
      "hash": "17f4ed4a0f1138ddc9d1c6b90de185133f237db4",
      "subject": "Revert \"Bug 2049363 - Port blend filters from brushes to quads. r=gw\" for causing reftests failures in jetstream-scroll-ref.html."
    },
    "454fa888ce4e": {
      "author": "Alexandru Marc",
      "avatar": "https://www.gravatar.com/avatar/f90e8bfbc9c1383d73053a8809b77e48?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 711f475966215a91932f5124b96a9ceb0f6c0cb1.\n\nRevert \"Bug 1977950 - Add isolated-process variants to taskcluster tasks. r=geckoview-reviewers,taskgraph-reviewers,ohall,ahal\"\n\nThis reverts commit 4826c013d59fba1892604ae0a37f203eebf521bf.\n\nRevert \"Bug 1977950 - Add --enable-isolated-process to run unit tests with isolated process modde, not using build options. r=jmaher,geckoview-reviewers,ohall\"\n\nThis reverts commit cf6d95fb4eeedab505ebc1fe691cfac16d3bdf72.",
      "email": "amarc@mozilla.com",
      "hash": "454fa888ce4eb9efce04f310e0e4094aa6c305bd",
      "subject": "Revert \"Bug 1977950 - Get rid of MOZ_ANDROID_CONTENT_SERVICE_ISOLATED_PROCESS. r=geckoview-reviewers,taskgraph-reviewers,nalexander,jmaher\" for causing wd failures @ detect_crash.py"
    },
    "6184ebc5afbc": {
      "author": "Serban Stanca",
      "avatar": "https://www.gravatar.com/avatar/977312186062f329a7e4302ab972ae7b?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit f394c1bf2d76b73b4c903d40c263b5d18a306346.",
      "email": "sstanca@mozilla.com",
      "hash": "6184ebc5afbc0e4a4d35574ed2937575d6793a93",
      "subject": "Revert \"Bug 1898891 - Use 204 returning captive portal endpoint r=necko-reviewers,kershaw\" for causing xpcshell failures in test_ext_captivePortal.js."
    },
    "80b16e8fb3cc": {
      "author": "Silaghi",
      "avatar": "https://www.gravatar.com/avatar/81acf29bb88b2a0ded61f47b93c59dea?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit d19029a20f0f705bd270b421084061053ec96d87.",
      "email": "asilaghi@mozilla.com",
      "hash": "80b16e8fb3cc42e1b08a7ee24fa04a80ecdeb806",
      "subject": "Revert \"Bug 2010071 - Add Thunderbird support to 'mach try'. r=releng-reviewers,ahal\" for causing try tests failures at tryselect"
    },
    "8f32236509ad": {
      "author": "Alexandru Marc",
      "avatar": "https://www.gravatar.com/avatar/f90e8bfbc9c1383d73053a8809b77e48?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 2a11aeed1404c04250653db236645c7288dd99b3.",
      "email": "amarc@mozilla.com",
      "hash": "8f32236509ad69212073099f585d3bc90e260909",
      "subject": "Revert \"Bug 1293741 - Move active pseudo activation to pointerdown handler r=emilio,dom-core-reviewers,smaug\" for causing wpt failures @ select-picker-hover-active-pseudo.html"
    },
    "99297e21b4e0": {
      "author": "Cosmin Sabou",
      "avatar": "https://www.gravatar.com/avatar/392cb3f0cf45743e207bd4bcde85f272?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit b87ecd50c3a9f8bf4087de42e7425b003d5b623d.",
      "email": "csabou@mozilla.com",
      "hash": "99297e21b4e051bb3e1fd393e5bb72648b7ec177",
      "subject": "Revert \"Bug 2005072 - Implement proposed loading attribute for video and audio elements. r=dom-core-reviewers,media-playback-reviewers,webidl,layout-reviewers,smaug,emilio,pehrsons,alwu,keithamus\" for causing wpt leaks."
    },
    "D209782": {
      "author": "Valentin Gosu",
      "avatar": "https://www.gravatar.com/avatar/dedff9d4500fcbc5cdd1cd270f044b33?d=identicon\u0026s=64",
      "cl": "D209782",
      "clUrl": "https://phabricator.services.mozilla.com/D209782",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D209782",
      "email": "valentin.gosu@gmail.com",
      "hash": "f394c1bf2d76b73b4c903d40c263b5d18a306346",
      "subject": "Bug 1898891 - Use 204 returning captive portal endpoint r=necko-reviewers,kershaw"
    },
    "D265098": {
      "author": "Makoto Kato",
      "avatar": "https://www.gravatar.com/avatar/1875645d5594d36bca29657d51d24ed6?d=identicon\u0026s=64",
      "cl": "D265098",
      "clUrl": "https://phabricator.services.mozilla.com/D265098",
      "description": "Currently, MOZ_ANDROID_CONTENT_SERVICE_ISOLATED_PROCESS is used for test\nrunner. I would like to replace it with test runner's option that is\n`--enable-isolated-process`.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D265098",
      "email": "m_kato@ga2.so-net.ne.jp",
      "hash": "cf6d95fb4eeedab505ebc1fe691cfac16d3bdf72",
      "subject": "Bug 1977950 - Add --enable-isolated-process to run unit tests with isolated process modde, not using build options. r=jmaher,geckoview-reviewers,ohall"
    },
    "D265099": {
      "author": "Makoto Kato",
      "avatar": "https://www.gravatar.com/avatar/1875645d5594d36bca29657d51d24ed6?d=identicon\u0026s=64",
      "cl": "D265099",
      "clUrl": "https://phabricator.services.mozilla.com/D265099",
      "description": "Remove debug-isolated-process build type, then add isolated-process\nvariants like the following:\n\n- geckoview-isolated-process\n- geckoview-isolated-process+no-fission\n\nDifferential Revision: https://phabricator.services.mozilla.com/D265099",
      "email": "m_kato@ga2.so-net.ne.jp",
      "hash": "4826c013d59fba1892604ae0a37f203eebf521bf",
      "subject": "Bug 1977950 - Add isolated-process variants to taskcluster tasks. r=geckoview-reviewers,taskgraph-reviewers,ohall,ahal"
    },
    "D265100": {
      "author": "Makoto Kato",
      "avatar": "https://www.gravatar.com/avatar/1875645d5594d36bca29657d51d24ed6?d=identicon\u0026s=64",
      "cl": "D265100",
      "clUrl": "https://phabricator.services.mozilla.com/D265100",
      "description": "This build config option is no longer needed since we move this to\nGeckoRuntimeSettings.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D265100",
      "email": "m_kato@ga2.so-net.ne.jp",
      "hash": "711f475966215a91932f5124b96a9ceb0f6c0cb1",
      "subject": "Bug 1977950 - Get rid of MOZ_ANDROID_CONTENT_SERVICE_ISOLATED_PROCESS. r=geckoview-reviewers,taskgraph-reviewers,nalexander,jmaher"
    },
    "D281221": {
      "author": "Jens Stutte",
      "avatar": "https://www.gravatar.com/avatar/9dcff4a8838b41f34d204c2f4cadbcc4?d=identicon\u0026s=64",
      "cl": "D281221",
      "clUrl": "https://phabricator.services.mozilla.com/D281221",
      "description": "Any call to DBUS is async, but our current idle service abstraction expects\nall calls to be sync. As changing the API would affect quite a lot of callers,\nwe can get away by spinning the event loop and having a timeout for DBUS only.\n\nIf the DBUS proxy cannot be created during probe, we fall back to\nIDLE_SERVICE_XSCREENSAVER as before. Once probed successfully, poll errors\nare transient and do not trigger a fallback.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D281221",
      "email": "jstutte@mozilla.com",
      "hash": "dc8812d7ce8a7e11726a61382badddb65e1724c8",
      "subject": "Bug 1962438 - Add caching logic and sync wait to UserIdleServiceMutter. r=Thinker"
    },
    "D294872": {
      "author": "Daniel Darnell",
      "avatar": "https://www.gravatar.com/avatar/4e9c00df5bdd8f53a84225c7dcd88151?d=identicon\u0026s=64",
      "cl": "D294872",
      "clUrl": "https://phabricator.services.mozilla.com/D294872",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D294872",
      "email": "daniel@thunderbird.net",
      "hash": "d19029a20f0f705bd270b421084061053ec96d87",
      "subject": "Bug 2010071 - Add Thunderbird support to 'mach try'. r=releng-reviewers,ahal"
    },
    "D295439": {
      "author": "Randell Jesup",
      "avatar": "https://www.gravatar.com/avatar/707a3249883bc1c42dbd54339c8daf44?d=identicon\u0026s=64",
      "cl": "D295439",
      "clUrl": "https://phabricator.services.mozilla.com/D295439",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D295439",
      "email": "rjesup@mozilla.com",
      "hash": "0196001b628cb38c0d6daa6f9ec398a97b11e096",
      "subject": "Bug 2033181: Check for active ServiceWorkers r=necko-reviewers,dom-storage-reviewers,dom-worker-reviewers,valentin,edenchuang"
    },
    "D296211": {
      "author": "Nicholas Rishel",
      "avatar": "https://www.gravatar.com/avatar/9693993b5d7ce54adb1f646327403198?d=identicon\u0026s=64",
      "cl": "D296211",
      "clUrl": "https://phabricator.services.mozilla.com/D296211",
      "description": "STA initialization was initially introduced to nsWindowsShellService when pin checks were moved to a background thread in D106346, and only for `IsCurrentAppPinnedToTaskbarAsync`.  Notably neither `PinCurrentAppToTaskbar` nor `CheckPinCurrentAppToTaskbar` enforce either main thread or STA, though the Taskband Pin COM API can only be created on an STA thread.\n\nNo Windows API called by `IsCurrentAppPinnedToTaskbarAsync` are documented or observed to rely on STA, notably `ShellLink` has `ThreadingModel=Both` in `HKCR\\CLSID\\{00021401-0000-0000-C000-000000000046}\\InProcServer32`. `00021401-0000-0000-C000-000000000046` is UUID associated to `CLSID_ShellLink`.\n\nNeither `ShellExecute` nor shell dialog opening functions are used herein. These are the two common sources of shell functions erring from `E_NOINTERFACE` on MTA threads as documented in \"Calling shell functions and interfaces from a multithreaded apartment\" at https://learn.microsoft.com/en-us/previous-versions/troubleshoot/windows/win32/shell-functions-multithreaded-apartment.\n\nThis initial use of STA predates implicit MTA on background threads introduced in Bug 1707954 by a few months.\n\nGiven the above context it is likely that the original intent was only to ensure COM was initialized for the background thread. It is unlikely STA was an intentional choice, and instead the result of choosing the smaller API between `CoInitialize` and `CoInitializeEx`.\n\nRemaining STA initialization seems to have copy/pasted this original example without further consideration.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D296211",
      "email": "nrishel@mozilla.com",
      "hash": "3948d74e5376eb24f644e9ec0dd8eb42f319b0ee",
      "subject": "Bug 2034609 - Remove remaining unnecessary STA initialization from nsWindowsShellService. r=win-reviewers,handyman"
    },
    "D300497": {
      "author": "Ashley Hale",
      "avatar": "https://www.gravatar.com/avatar/8c78c371fa9a40753be0e245499b5474?d=identicon\u0026s=64",
      "cl": "D300497",
      "clUrl": "https://phabricator.services.mozilla.com/D300497",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D300497",
      "email": "ahale@mozilla.com",
      "hash": "7f61a94bf1d6c4540f6c7e1978b324e122d8090c",
      "subject": "Bug 2037689 - Use a D3D11 shader for HDR video conversions r=gfx-reviewers,sotaro"
    },
    "D301300": {
      "author": "giorga",
      "avatar": "https://www.gravatar.com/avatar/97f54ef8626093cb5e017281ae27e350?d=identicon\u0026s=64",
      "cl": "D301300",
      "clUrl": "https://phabricator.services.mozilla.com/D301300",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D301300",
      "email": "giorga@mozilla.com",
      "hash": "59c4e72227e54c4e1b9090d7428d89e057cddc25",
      "subject": "Bug 2029227 - [Tab Groups] Add Glean telemetry probes for tab group metadata and editing interactions r=android-reviewers,007"
    },
    "D301351": {
      "author": "Arnaud Bienner",
      "avatar": "https://www.gravatar.com/avatar/4ce6cc4210e212c94d690c9c8c5c19bb?d=identicon\u0026s=64",
      "cl": "D301351",
      "clUrl": "https://phabricator.services.mozilla.com/D301351",
      "description": "Bug 2025350 (D290388) fixes a security issue by preventing integer overflows (by adding checks), before calling `JS_WriteUint32Pair`.\nFollow up bug 2027871 (D290702) was about changing `JS_WriteUint32Pair` directly to check the value here, to prevent possible similar bugs to happen (i.e. add more coverage).\n\nThis bug is about removing the initial checks, which are now redundant. I should probably have removed them as part of bug 2027871.\n\nNote: we will probably want to wait a bit (once 152 has been released for a bit of time) to be sure the follow up didn't introduce any regression, before landing this.\n\nBut I'm creating the bug/patch now to not forget about it.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D301351",
      "email": "abienner@mozilla.com",
      "hash": "859dbf2ade6cdb12394d1fd4f25eac5a66e08099",
      "subject": "Bug 2040696 - Revert bug 2025350 now bug 2027871 has been shipped r=nika"
    },
    "D301435": {
      "author": "Dre Grant",
      "avatar": "https://www.gravatar.com/avatar/766f0b780d039fe61b18c3a95137d8ea?d=identicon\u0026s=64",
      "cl": "D301435",
      "clUrl": "https://phabricator.services.mozilla.com/D301435",
      "description": "Depends on the parent strings patch. Keeps the per-row action buttons in\nthe accessibility tree (visually hidden, revealed on hover/focus) and\ngives each row in the edit panel a city/nickname aria-label so VoiceOver\ncan land on the Edit/Remove controls of every clock, not just the first.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D301435",
      "email": "dgrant@mozilla.com",
      "hash": "b4d827aac009f63a7c93fdd1cb06eaad809e756e",
      "subject": "Bug 2040677 - VO edit remove not reachable in world clock r=reemhamz"
    },
    "D301566": {
      "author": "Johannes Salas Schmidt",
      "avatar": "https://www.gravatar.com/avatar/6793e1db22abe181664726808800b218?d=identicon\u0026s=64",
      "cl": "D301566",
      "clUrl": "https://phabricator.services.mozilla.com/D301566",
      "description": "Introduces LoginStorageMigrator, a state machine that runs migration at startup\nand selects the active login storage backend.\n\nTo enable Rust storage locally:\nServices.prefs.setBoolPref(\"signon.storage.rust.enabled\", true);\n\nDifferential Revision: https://phabricator.services.mozilla.com/D301566",
      "email": "joschmidt@mozilla.com",
      "hash": "b9a8b8a4eb5b155ae7193b3bf6185d798b2bcd13",
      "subject": "Bug 2041353 - Add LoginStorageMigrator r=dimi"
    },
    "D301568": {
      "author": "Alexandre Poirot",
      "avatar": "https://www.gravatar.com/avatar/da6d769a219551f618ed95bff2c36aca?d=identicon\u0026s=64",
      "cl": "D301568",
      "clUrl": "https://phabricator.services.mozilla.com/D301568",
      "description": "This will help in following changeset to use int pref for netmonitor size\nlimits\n\nDifferential Revision: https://phabricator.services.mozilla.com/D301568",
      "email": "poirot.alex@gmail.com",
      "hash": "a64eb2b517d9d1aa67070f4dac15f7e1eb8facbe",
      "subject": "Bug 2040892 - [devtools] Supports all preference type in target/thread configurations. r=devtools-reviewers,jdescottes"
    },
    "D301569": {
      "author": "Alexandre Poirot",
      "avatar": "https://www.gravatar.com/avatar/da6d769a219551f618ed95bff2c36aca?d=identicon\u0026s=64",
      "cl": "D301569",
      "clUrl": "https://phabricator.services.mozilla.com/D301569",
      "description": "While doing this, also migrate this logic to target configuration\nso that we stop reading devtools frontend prefs from the server\nand are working correctly on remote debugging.\n\nThis will help have a single preference and setting exposed in the\noptions panel.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D301569",
      "email": "poirot.alex@gmail.com",
      "hash": "a4e85532002f76419ec8a2c25e3d2b37bf3b82f5",
      "subject": "Bug 2040892 - [devtools] Unify both request and request body limit into a single preference. r=devtools-reviewers,jdescottes"
    },
    "D301570": {
      "author": "Alexandre Poirot",
      "avatar": "https://www.gravatar.com/avatar/da6d769a219551f618ed95bff2c36aca?d=identicon\u0026s=64",
      "cl": "D301570",
      "clUrl": "https://phabricator.services.mozilla.com/D301570",
      "description": "Body limit configuration may truncate encoded response to no body at all,\nin which case, we weren't showing any warning.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D301570",
      "email": "poirot.alex@gmail.com",
      "hash": "ee870164a97deec5c32ec9b679e035d8a0014595",
      "subject": "Bug 2040892 - [devtools] Display truncated warning on requests with no content. r=devtools-reviewers,devtools-backward-compat-reviewers,jdescottes"
    },
    "D301571": {
      "author": "Alexandre Poirot",
      "avatar": "https://www.gravatar.com/avatar/da6d769a219551f618ed95bff2c36aca?d=identicon\u0026s=64",
      "cl": "D301571",
      "clUrl": "https://phabricator.services.mozilla.com/D301571",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D301571",
      "email": "poirot.alex@gmail.com",
      "hash": "5b26e114954e4b4ada897ab925400499c5c05f3a",
      "subject": "Bug 2040892 - [devtools] Expose request/response body size limit in DevTools Settings. r=devtools-reviewers,fluent-reviewers,bolsson,jdescottes,nchevobbe"
    },
    "D302650": {
      "author": "Nicholas Rishel",
      "avatar": "https://www.gravatar.com/avatar/9693993b5d7ce54adb1f646327403198?d=identicon\u0026s=64",
      "cl": "D302650",
      "clUrl": "https://phabricator.services.mozilla.com/D302650",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D302650",
      "email": "nrishel@mozilla.com",
      "hash": "61bc1613748cc81c84c40621d6ed297d5a1a4f38",
      "subject": "Bug 1977202 - Pre 1: Expose DOM Promise reject with nsresult API for Rust and extend Rust Promise to allow resolving with undefined or rejecting with nsresult. r=xpcom-reviewers,emilio"
    },
    "D302651": {
      "author": "Nicholas Rishel",
      "avatar": "https://www.gravatar.com/avatar/9693993b5d7ce54adb1f646327403198?d=identicon\u0026s=64",
      "cl": "D302651",
      "clUrl": "https://phabricator.services.mozilla.com/D302651",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D302651",
      "email": "nrishel@mozilla.com",
      "hash": "9387902412ea1cb557ae64a320b9d3fda82d0969",
      "subject": "Bug 1977202 - Pre 2: Add async wrapper for nsITimer. r=saschanaz"
    },
    "D302652": {
      "author": "Nicholas Rishel",
      "avatar": "https://www.gravatar.com/avatar/9693993b5d7ce54adb1f646327403198?d=identicon\u0026s=64",
      "cl": "D302652",
      "clUrl": "https://phabricator.services.mozilla.com/D302652",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D302652",
      "email": "nrishel@mozilla.com",
      "hash": "ea11cb944da456f126369fa4aad1c1dddcd52977",
      "subject": "Bug 1977202 - Migrate Windows pinning to async Rust API. r=handyman"
    },
    "D302653": {
      "author": "Nicholas Rishel",
      "avatar": "https://www.gravatar.com/avatar/9693993b5d7ce54adb1f646327403198?d=identicon\u0026s=64",
      "cl": "D302653",
      "clUrl": "https://phabricator.services.mozilla.com/D302653",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D302653",
      "email": "nrishel@mozilla.com",
      "hash": "c923c22da33b68213bdfc57a88bd8f24d25225ee",
      "subject": "Bug 1977202 - Post: Autoformat, dos2unix, and comment cleanup. r=dmcintosh"
    },
    "D304215": {
      "author": "Sylvestre Ledru",
      "avatar": "https://www.gravatar.com/avatar/fb0fd07485efdfc05e02987075fdbab0?d=identicon\u0026s=64",
      "cl": "D304215",
      "clUrl": "https://phabricator.services.mozilla.com/D304215",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D304215",
      "email": "sylvestre@debian.org",
      "hash": "a9f3aead907bf84c7111f9641cf5e36c52e39034",
      "subject": "Bug 2038819 - Update docs/setup/contributing_code.md ref to push-a-change r=firefox-source-docs-reviewers,ahal DONTBUILD"
    },
    "D304513": {
      "author": "Sylvestre Ledru",
      "avatar": "https://www.gravatar.com/avatar/fb0fd07485efdfc05e02987075fdbab0?d=identicon\u0026s=64",
      "cl": "D304513",
      "clUrl": "https://phabricator.services.mozilla.com/D304513",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D304513",
      "email": "sylvestre@debian.org",
      "hash": "9bd9437c8571df361dd260a5911413dbed70b375",
      "subject": "Bug 2031965 - sccache: set SCCACHE_BASEDIRS for cross-worktree caching r=firefox-build-system-reviewers,ahochheiden"
    },
    "D305795": {
      "author": "Karl Tomlinson",
      "avatar": "https://www.gravatar.com/avatar/3646e8b4ac97898b1b389b12bda9d6ed?d=identicon\u0026s=64",
      "cl": "D305795",
      "clUrl": "https://phabricator.services.mozilla.com/D305795",
      "description": "mAudioStream might be null here if Init() fails.\ncubeb_stream_set_name() safely handles a null stream pointer.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D305795",
      "email": "karlt+@karlt.net",
      "hash": "59a5981fc3c4ca73bef4617f8c06d059158a7613",
      "subject": "Bug 2042242 Remove non-null mAudioStream assert in SetCubebStreamName() r=pehrsons."
    },
    "D305881": {
      "author": "Jens Stutte",
      "avatar": "https://www.gravatar.com/avatar/9dcff4a8838b41f34d204c2f4cadbcc4?d=identicon\u0026s=64",
      "cl": "D305881",
      "clUrl": "https://phabricator.services.mozilla.com/D305881",
      "description": "This is mostly meant to make you aware that the eventual impact of D305093\nhas been checked. Landing this comment may not be needed unless you plan to\nchange your pref names for more clarity.\n\n\"network.url.simple_uri_unknown_schemes\", \"network.dns.disablePrefetch\",\n\"network.proxy.socks\", and \"network.dnsCacheExpiration\" are each a\nstring-prefix of sibling prefs, but not a dot-bounded prefix. Under the new\nsegment-bounded CallbackTrie they fire only for the exact pref and\ndot-bounded children, which is the intended behavior. The sibling prefs are\neither StaticPrefs (needing no callback) or have their own explicit observers.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D305881",
      "email": "jstutte@mozilla.com",
      "hash": "df570bd50325790a2406336da4958daebe0576db",
      "subject": "Bug 2048050 - [pref-trie-audit] Annotate ambiguous prefix observer registrations in Necko r=necko-reviewers,valentin"
    },
    "D305882": {
      "author": "Jens Stutte",
      "avatar": "https://www.gravatar.com/avatar/9dcff4a8838b41f34d204c2f4cadbcc4?d=identicon\u0026s=64",
      "cl": "D305882",
      "clUrl": "https://phabricator.services.mozilla.com/D305882",
      "description": "The browser toolbox launcher registers a \"devtools.debugger.log\" pref\nobserver whose handler re-read whatever pref name triggered it\n(getBoolPref(args.pop())). Under the old prefix-matching rule that could\nfire for and read a sibling pref such as \"devtools.debugger.log-actions\".\nRead the exact \"devtools.debugger.log\" pref instead so the observer only\nreacts to the one preference it cares about.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D305882",
      "email": "jstutte@mozilla.com",
      "hash": "be4a3e37aa6d2af85631c646759cafe916c0282d",
      "subject": "Bug 2048050 - Only react to the exact devtools.debugger.log pref in the browser toolbox launcher r=devtools-reviewers,ochameau"
    },
    "D305884": {
      "author": "Jens Stutte",
      "avatar": "https://www.gravatar.com/avatar/9dcff4a8838b41f34d204c2f4cadbcc4?d=identicon\u0026s=64",
      "cl": "D305884",
      "clUrl": "https://phabricator.services.mozilla.com/D305884",
      "description": "The homepage pref observer in beforeDisableAddon is registered as a prefix\nobserver, so it fires not only for \"browser.startup.homepage\" but also for\nany pref nested under it (e.g. browser.startup.homepage.abouthome_cache.*).\nGuard the callback so it only triggers the homepage navigation for the\nhomepage pref itself.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D305884",
      "email": "jstutte@mozilla.com",
      "hash": "4a58760e480eeba1a753b1a780dfb25440e2f149",
      "subject": "Bug 2048050 - Only react to the exact homepage pref in chrome-settings-overrides r=extension-reviewers,robwu"
    },
    "D305885": {
      "author": "Jens Stutte",
      "avatar": "https://www.gravatar.com/avatar/9dcff4a8838b41f34d204c2f4cadbcc4?d=identicon\u0026s=64",
      "cl": "D305885",
      "clUrl": "https://phabricator.services.mozilla.com/D305885",
      "description": "This is mostly meant to make you aware that the eventual impact of D305093\nhas been checked. Landing this comment may not be needed unless you plan to\nchange your pref names for more clarity.\n\n\"dom.security.https_only_mode\" and \"dom.security.https_first\" are each\nstring-prefixes of several sibling prefs. Under the new segment-bounded\nCallbackTrie they fire only for the exact pref; all siblings have their own\nregistrations. \"browser.startup.homepage\" similarly prefixes the\nhomepage_override prefs; all handlers are exact-pref-guarded or use\ndefineLazyPreferenceGetter which has a built-in exact-match guard.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D305885",
      "email": "jstutte@mozilla.com",
      "hash": "3034dbde507941a9ffcf84ca089e25545bb2e44f",
      "subject": "Bug 2048050 - [pref-trie-audit] Annotate ambiguous prefix observer registrations in browser chrome r=hjones"
    },
    "D305888": {
      "author": "Jens Stutte",
      "avatar": "https://www.gravatar.com/avatar/9dcff4a8838b41f34d204c2f4cadbcc4?d=identicon\u0026s=64",
      "cl": "D305888",
      "clUrl": "https://phabricator.services.mozilla.com/D305888",
      "description": "This is mostly meant to make you aware that the eventual impact of D305093\nhas been checked. Landing this comment may not be needed unless you plan to\nchange your pref names for more clarity.\n\n\"accessibility.browsewithcaret\" is a string-prefix of\n\"accessibility.browsewithcaret_shortcut.enabled\" (not a dot-bounded child);\nthe sibling is absent from the PrefObserver Map so the observe() handler\nreturns early for it anyway. \"pdfjs.enableAltText\" is a string-prefix of\n\"pdfjs.enableAltTextForEnglish\" and \"pdfjs.enableAltTextModelDownload\";\nthe latter has its own Map entry, the former has no handler.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D305888",
      "email": "jstutte@mozilla.com",
      "hash": "122e86b93dc28915dbbb9e4c2f5f31be5d11bf36",
      "subject": "Bug 2048050 - [pref-trie-audit] Annotate ambiguous prefix observer registrations in PDF.js r=pdfjs-reviewers,calixte"
    },
    "D306395": {
      "author": "Artur Iunusov",
      "avatar": "https://www.gravatar.com/avatar/df47efa3986884c43ed81c2abb7e5514?d=identicon\u0026s=64",
      "cl": "D306395",
      "clUrl": "https://phabricator.services.mozilla.com/D306395",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D306395",
      "email": "aiunusov@mozilla.com",
      "hash": "57bd319ddaaa15adda44feb4793d4ad527184289",
      "subject": "Bug 2021434 - relax ASSERT due to shutdown r=dom-storage-reviewers,hsingh"
    },
    "D306573": {
      "author": "serge-sans-paille",
      "avatar": "https://www.gravatar.com/avatar/9cdfdfc05249440f57269a0d26487253?d=identicon\u0026s=64",
      "cl": "D306573",
      "clUrl": "https://phabricator.services.mozilla.com/D306573",
      "description": "The change is rather mechanical, and it greatly improves readability.\nUsing concept is out-of-scope but would make sense in some situations.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D306573",
      "email": "sguelton@mozilla.com",
      "hash": "74021c8a85317f01bfb8c9b6111a1a5d0ce00498",
      "subject": "Bug 2047315 - Replace std::enable_if by requires clause from C++20 in mfbt r=nika"
    },
    "D306631": {
      "author": "Anna Weine",
      "avatar": "https://www.gravatar.com/avatar/99c4bba5c9c286febe66fd11d7ca2edf?d=identicon\u0026s=64",
      "cl": "D306631",
      "clUrl": "https://phabricator.services.mozilla.com/D306631",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D306631",
      "email": "anna.weine@mozilla.com",
      "hash": "bfa4ed6ba7a18b93dec60b5dc03b7377882506a5",
      "subject": "Bug 2047439: Use PK11_CreatePrivateKeyFromTemplate instead of the CreateGenericObject/FindKeyByKeyID workaround r=jschanck"
    },
    "D306692": {
      "author": "serge-sans-paille",
      "avatar": "https://www.gravatar.com/avatar/9cdfdfc05249440f57269a0d26487253?d=identicon\u0026s=64",
      "cl": "D306692",
      "clUrl": "https://phabricator.services.mozilla.com/D306692",
      "description": "Interestingly this can raise issue while checking concepts, which is not\nwhat we're looking for. But it's also a performance hog, so let's not\ncheck them anyway.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D306692",
      "email": "sguelton@mozilla.com",
      "hash": "53fa6ba09d7a1749891e46dd817ec66cde9e8e99",
      "subject": "Bug 2047315 - Do not run CanRunScriptChecker on third party r=sylvestre"
    },
    "D306699": {
      "author": "Andrea Di Stefano",
      "avatar": "https://www.gravatar.com/avatar/934200c1d66eb15e6ae4f102ecf590d3?d=identicon\u0026s=64",
      "cl": "D306699",
      "clUrl": "https://phabricator.services.mozilla.com/D306699",
      "description": "Servers that apply a transfer-level gzip on top of already-compressed\ncontent (e.g. .tar.gz, .gz) caused Firefox to save double-compressed\nfiles, because nsExternalHelperAppService::ApplyDecodingForExtension\ndisabled content conversion whenever the URL extension matched the\nencoding (.gz/.tgz/.zip/.z/.svgz). Honor the Content-Encoding by default,\nmatching Chrome, gated by the new pref\nnetwork.http.decode_content_for_known_compressed_extensions (default\ntrue). Setting the pref to false preserves the legacy behavior.\n\nThe download xpcshell tests are updated accordingly: the new behavior is\ncovered by test_with_content_encoding_matching_extension, and the legacy\nbehavior is still covered by test_with_content_encoding_ignore_extension\nwith the pref disabled.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D306699",
      "email": "andrea.distefano@outlook.com",
      "hash": "bca87fa82d9e45546889d315db2015abf439ea66",
      "subject": "Bug 1470011 - Decode Content-Encoding on download even when the file extension matches the encoding, behind a pref. r=valentin,Gijs"
    },
    "D306762": {
      "author": "Andrea Marchesini",
      "avatar": "https://www.gravatar.com/avatar/dfb8d0427dd67216b2664131a5c31421?d=identicon\u0026s=64",
      "cl": "D306762",
      "clUrl": "https://phabricator.services.mozilla.com/D306762",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D306762",
      "email": "amarchesini@mozilla.com",
      "hash": "fcc3fd9554ad8f182d20535e2cd410f7fc18149b",
      "subject": "Bug 2047614 - Containers: introduce the 'add new container' feature in context menu r=desktop-theme-reviewers,tabbrowser-reviewers,tgiles,fluent-reviewers,bolsson,jsudiaman"
    },
    "D306809": {
      "author": "Akhil Pindiprolu",
      "avatar": "https://www.gravatar.com/avatar/39a1f7e1eb42defa633a5ea7489cb341?d=identicon\u0026s=64",
      "cl": "D306809",
      "clUrl": "https://phabricator.services.mozilla.com/D306809",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D306809",
      "email": "apindiprolu@mozilla.com",
      "hash": "a9e89fdec231a85961fd240df3b7dad89d17aa9b",
      "subject": "Bug 2038709 - [WebCompat Reporter v3] Make problem description mandatory for \"Something else\" dropdown reason r=android-reviewers,android-l10n-reviewers,flod,calu"
    },
    "D306821": {
      "author": "Kelly Cochrane",
      "avatar": "https://www.gravatar.com/avatar/f989c265f3463d5df9e699d0dca074b0?d=identicon\u0026s=64",
      "cl": "D306821",
      "clUrl": "https://phabricator.services.mozilla.com/D306821",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D306821",
      "email": "kcochrane@mozilla.com",
      "hash": "ac27f370c97a359ab3f8a10671474548209e72ea",
      "subject": "Bug 2047653 - Add a dropdown for switching sidebar panels when sidebar.revamp is true r=fluent-reviewers,sclements,echa,bolsson,firefox-desktop-core-reviewers"
    },
    "D306984": {
      "author": "Makoto Kato",
      "avatar": "https://www.gravatar.com/avatar/1875645d5594d36bca29657d51d24ed6?d=identicon\u0026s=64",
      "cl": "D306984",
      "clUrl": "https://phabricator.services.mozilla.com/D306984",
      "description": "For readability and maintainability, we want to move the device sensor\nfeature to its own class.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D306984",
      "email": "m_kato@ga2.so-net.ne.jp",
      "hash": "f979ac1b31237c7d32495aa2f5fdb1bdf2aa1c36",
      "subject": "Bug 2046280 - Move device sensor feature to own class. r=geckoview-reviewers,owlish"
    },
    "D306985": {
      "author": "Makoto Kato",
      "avatar": "https://www.gravatar.com/avatar/1875645d5594d36bca29657d51d24ed6?d=identicon\u0026s=64",
      "cl": "D306985",
      "clUrl": "https://phabricator.services.mozilla.com/D306985",
      "description": "Currently, we enable the rotation vector sensor and the game rotation\nvector sensor for `deviceorientation` event. This is not necessary and\nwill cause extra power consumption. Although he rotation vector sensor\nis for bug 1356921's workaround that is a device/vendor bug, if gyroscope\nsensor isn't available, it is unnecessary to enable the game rotation\nvector sensor since this sensor requires the gyroscope sensor.\n\nSo I would like to check to use the game rotation vector sensor whether\nthe gyroscope sensor is available. If not available, we use the rotation\nvector sensor or rotation sensor.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D306985",
      "email": "m_kato@ga2.so-net.ne.jp",
      "hash": "5a3bbd04aa4c908fbb2c33b18b04713f8cc252a8",
      "subject": "Bug 2046280 - Don't enable the rotation vector for deviceorientation event. r=dom-core-reviewers,geckoview-reviewers,smaug,owlish"
    },
    "D307211": {
      "author": "Eden Chuang",
      "avatar": "https://www.gravatar.com/avatar/3afcbed8f1748e0ae0da0bc4cabddcaf?d=identicon\u0026s=64",
      "cl": "D307211",
      "clUrl": "https://phabricator.services.mozilla.com/D307211",
      "description": "mRunnable was a plain RefPtr read on the main thread (GetCacheCreator and the\nother accessors) and cleared on the worker thread by ReleaseRequest() with no\nsynchronization. When the worker's store dropped the last reference to the\nshared ScriptLoaderRunnable, the main thread could dereference the already-freed\npointer, producing a heap-use-after-free.\n\nGuard mRunnable with a Mutex (enforced via MOZ_GUARDED_BY). ReleaseRequest() and\nthe new SetRunnable() mutate it under the lock, releasing the runnable outside\nthe lock so it is never destroyed while the mutex is held. Each main-thread\naccessor copies mRunnable into a local strong reference under the lock and bails\nif it was already released. GetCacheCreator() now returns a strong CacheCreator\nreference taken under the lock, so the caller keeps it alive across DeleteCache()\neven if the runnable is released on the worker thread afterwards.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D307211",
      "email": "echuang@mozilla.com",
      "hash": "d61a14089ebd93595145c475cb5566837f36bdd2",
      "subject": "Bug 2026301 - Synchronize ThreadSafeRequestHandle::mRunnable to fix cross-thread use-after-free r=dom-worker-reviewers,asuth"
    },
    "D307445": {
      "author": "Anna Kulyk",
      "avatar": "https://www.gravatar.com/avatar/2c28c953ecebb4b478e4cd8e21ab56ff?d=identicon\u0026s=64",
      "cl": "D307445",
      "clUrl": "https://phabricator.services.mozilla.com/D307445",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D307445",
      "email": "akulyk@mozilla.com",
      "hash": "b777671fa8749b5273797924c68adc71a9e1557a",
      "subject": "Bug 2024035 - Handle elements in reorderable moz-box-groups are missing HCM styles r=desktop-theme-reviewers,hjones"
    },
    "D307737": {
      "author": "Nicholas Rishel",
      "avatar": "https://www.gravatar.com/avatar/9693993b5d7ce54adb1f646327403198?d=identicon\u0026s=64",
      "cl": "D307737",
      "clUrl": "https://phabricator.services.mozilla.com/D307737",
      "description": "The check only flag was introduced during the first iteration of taskbar pinning in D104779. The purpose was to do a dry run to validate pinning was possible. This meant verifying the Windows version was supported, verifying the necessary shortcuts existed, and verifying the COM API existed.\n\nThe check only flag's original purpose is unclear, possibly only for testing, and was unused in the original revision stack.\n\nSince then the API was used to verify we can pin to the taskbar. Over time we also made attempts to pin create the necessary shortcuts in order to succeed. The pattern of adding a check only flag was then propagated to other interfaces unnecessarily.\n\nThe sole use today is verifying we can pin. We don't need to do a full dry run to validate this, we can just check that the necessary APIs are available. This allows us to remove the check only special case peppered throughout pinning code, and allows us to verify without consideration for the current AUMID which is unnecessary to validate API availability.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D307737",
      "email": "nrishel@mozilla.com",
      "hash": "b0cd40a86bff29ff674d5dbf23635b204dde2ebf",
      "subject": "Bug 2048824 - Reduce scope of taskbar pin check to verifying whether the necessary APIs are available, removing the \"check only\" flag. r=handyman,omc-reviewers,sachung"
    },
    "D307738": {
      "author": "Nicholas Rishel",
      "avatar": "https://www.gravatar.com/avatar/9693993b5d7ce54adb1f646327403198?d=identicon\u0026s=64",
      "cl": "D307738",
      "clUrl": "https://phabricator.services.mozilla.com/D307738",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D307738",
      "email": "nrishel@mozilla.com",
      "hash": "6116bcc74df11940a0cef7c5303c658cab1c4a76",
      "subject": "Bug 2048824 - Post: Remove unused `aCheckOnly` parameter on `pinCurrentAppToStartMenuAsync`. r=handyman"
    },
    "D307739": {
      "author": "Nicholas Rishel",
      "avatar": "https://www.gravatar.com/avatar/9693993b5d7ce54adb1f646327403198?d=identicon\u0026s=64",
      "cl": "D307739",
      "clUrl": "https://phabricator.services.mozilla.com/D307739",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D307739",
      "email": "nrishel@mozilla.com",
      "hash": "42b8bc1912963a75f21a826fb097fc50be79d2f1",
      "subject": "Bug 2048854 - Clean up redundant `...Async` naming and comments in and around `nsIWindowsShellService`. r=hsohaney,omc-reviewers,sachung"
    },
    "D307748": {
      "author": "AndiAJ",
      "avatar": "https://www.gravatar.com/avatar/b4ea35e4d5d0c51e2affc0dc2515853c?d=identicon\u0026s=64",
      "cl": "D307748",
      "clUrl": "https://phabricator.services.mozilla.com/D307748",
      "description": "After [[ https://phabricator.services.mozilla.com/D307748 | D307748 ]] landed, the \"Set as default browser\" prompt is being turned off for tests.\n\nBecause at the moment we don't have a clear STR, let's disable it.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309533",
      "email": "andiaj@users.noreply.github.com",
      "hash": "507610e5f1d7de769540c6e3ca7aabce9e1c1387",
      "subject": "Bug 2051502 - Temporarily disable verifyTheSetAsDefaultBrowserOnboardingCardFunctionalityTest UI test r=aaronmt"
    },
    "D307895": {
      "author": "Jack Brown",
      "avatar": "https://www.gravatar.com/avatar/9390fad805dd5d2471db8ce47f8d239d?d=identicon\u0026s=64",
      "cl": "D307895",
      "clUrl": "https://phabricator.services.mozilla.com/D307895",
      "description": "Adds three extra keys to the `security.ui.neterror.load_aboutneterror` Glean event to differentiate between online vs. offline users who hit dnsNotFound (~3.1M DAU), which is currently invisible in telemetry.\n\nNew fields:\n- `no_connectivity`: whether Firefox classifies the user as offline via the OS link bit.\n- `captive_portal_state`: confirms the user is actually online.\n- `trr_only`: whether this is a TRR-only (DoH strict mode) failure.\n\nUsing the existing sendAsyncMessage/RPMAddMessageListener pattern for `captive_portal_state` like the other request-response pairs.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D307895",
      "email": "jbrown@mozilla.com",
      "hash": "fbdc7c9cdcca31aefda6014e22e798485135eb78",
      "subject": "Bug 2048027 - Add no_connectivity, captive_portal_state, and trr_only to load_aboutneterror - r=rking"
    },
    "D308128": {
      "author": "Nicolas Silva",
      "avatar": "https://www.gravatar.com/avatar/a375423648d373880fdd9e4eccc6b920?d=identicon\u0026s=64",
      "cl": "D308128",
      "clUrl": "https://phabricator.services.mozilla.com/D308128",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308128",
      "email": "nsilva@mozilla.com",
      "hash": "0a014c5f2eed89b7fa13df39531f768f2634b4f2",
      "subject": "Bug 2049363 - Use quads for non-masked pictures with a non-axis-aligned transform. r=gw"
    },
    "D308129": {
      "author": "Nicolas Silva",
      "avatar": "https://www.gravatar.com/avatar/a375423648d373880fdd9e4eccc6b920?d=identicon\u0026s=64",
      "cl": "D308129",
      "clUrl": "https://phabricator.services.mozilla.com/D308129",
      "description": "A picture's clip mask is drawn onto its source render task. Avoid reapplying the same clip via the regular quad clipping path when the picture is composited into its parent by clearing needs_mask on the clip chain.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308129",
      "email": "nsilva@mozilla.com",
      "hash": "3c6b176eef4728b97382df65536f4aec8e22ee25",
      "subject": "Bug 2049363 - Port source-masked pictures and blits to the quad path. r=gw"
    },
    "D308130": {
      "author": "Nicolas Silva",
      "avatar": "https://www.gravatar.com/avatar/a375423648d373880fdd9e4eccc6b920?d=identicon\u0026s=64",
      "cl": "D308130",
      "clUrl": "https://phabricator.services.mozilla.com/D308130",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308130",
      "email": "nsilva@mozilla.com",
      "hash": "32f55162dcaf84058660f0dffeef51881b1538c4",
      "subject": "Bug 2049363 - Port blend filters from brushes to quads. r=gw"
    },
    "D308177": {
      "author": "Nicholas Rishel",
      "avatar": "https://www.gravatar.com/avatar/9693993b5d7ce54adb1f646327403198?d=identicon\u0026s=64",
      "cl": "D308177",
      "clUrl": "https://phabricator.services.mozilla.com/D308177",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308177",
      "email": "nrishel@mozilla.com",
      "hash": "36fbe8f595955b6d61c0a2cf32c7078c36db6ec8",
      "subject": "Bug 1977202 - Pre 3: Generalize Glean's use of xpc::IsInAutomation into the xpcom crate. r=chutten"
    },
    "D308198": {
      "author": "serge-sans-paille",
      "avatar": "https://www.gravatar.com/avatar/9cdfdfc05249440f57269a0d26487253?d=identicon\u0026s=64",
      "cl": "D308198",
      "clUrl": "https://phabricator.services.mozilla.com/D308198",
      "description": "Both now have `moz.yaml` config, so `mach vendor` can be used to update\nthem.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308198",
      "email": "sguelton@mozilla.com",
      "hash": "d2f32735c3edb6ae9b3a92fc5e3b2b8cbe20f86e",
      "subject": "Bug 2049593 - Obsolete client.py as a mean to update nss and nspr r=sylvestre"
    },
    "D308509": {
      "author": "Nicolas Silva",
      "avatar": "https://www.gravatar.com/avatar/a375423648d373880fdd9e4eccc6b920?d=identicon\u0026s=64",
      "cl": "D308509",
      "clUrl": "https://phabricator.services.mozilla.com/D308509",
      "description": "Currently, the coverage of quad primitives if defined by the intersection of the local rect and local clip rect.\nThe coordinate space of the pattern is affected by the bounds of the local rect, sometimes partially overriden by a stretch size parameter.\n\nEdges that are not anti-aliased are snapped to the pixel grid to simplify a bunch of things in indirect rendering strategies. To make this work without introducing cracks we have to round both the local rect and the local clip rect which slightly offsets and stretches the pattern.\n\nTo avoid affecting the pattern coordinate space, this patch changes the representation.\nWe now have a single coverage rect which represents the intersection of the local rect and local clip rect. This rect can be modified without changing the pattern position and size.\nIn addition, a pattern rect controls the position and size of the pattern. Snapping this rect would change the look of the pattern so it's probably never a good idea to do so.\n\nWith this representatoin, the stretch size parameter is entirely redundant so it could be removed in the future.\nIt also lets us naturaly express offsets in repeated pattern (currently we have a hacky way of tweaking the local rect and local clip rect to achieve that).\n\nThis patch only does this at quad prepare/shader level but I plan to move this representation all the way to the display list.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308509",
      "email": "nsilva@mozilla.com",
      "hash": "54d87f3811b33e806513cf0a6ade45fb9ea2eb1d",
      "subject": "Bug 2049363 - Change the representation of prim coverage in quad shaders.r=gw"
    },
    "D308520": {
      "author": "Florian Quèze",
      "avatar": "https://www.gravatar.com/avatar/0ffa237c82d28773736b6c9688b404e3?d=identicon\u0026s=64",
      "cl": "D308520",
      "clUrl": "https://phabricator.services.mozilla.com/D308520",
      "description": "Add profiler_schedule_dump_to_file / profiler_cancel_scheduled_dump (exposed\non nsIProfiler as scheduleDumpToFile / cancelScheduledDump), backed by a\none-shot deadline the SamplerThread checks each tick and serializes off the\nmain thread via profiler_save_profile_to_file.\n\nUnlike a main-thread timer this still fires when the main thread is wedged in a\nlong synchronous run, so a caller can get a profile from a process that would\notherwise be force-killed without one.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308520",
      "email": "florian@queze.net",
      "hash": "93441d72dd1e84c670ba3f38af4e4d243d88df7c",
      "subject": "Bug 2050049 - Add a profiler API to dump a profile off the main thread after a deadline, r=profiler-reviewers,mstange."
    },
    "D308521": {
      "author": "Florian Quèze",
      "avatar": "https://www.gravatar.com/avatar/0ffa237c82d28773736b6c9688b404e3?d=identicon\u0026s=64",
      "cl": "D308521",
      "clUrl": "https://phabricator.services.mozilla.com/D308521",
      "description": "Arm the profiler's scheduled off-main-thread dump (scheduleDumpToFile) shortly\nbefore the harness timeout fires, so a test wedged in a synchronous run -- where\nthe main-thread nsITimer in head.js could never fire -- still leaves a profile.\n\nThe harness picks the artifact path, giving a retried run a _retry suffix (and a\nnumeric counter on collision) so it doesn't overwrite an earlier run's profile,\nand reports the written file via a structured test_status so it becomes a\nFAIL-named TestStatus marker the dashboards read and is downgraded to expected\non a retried run.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308521",
      "email": "florian@queze.net",
      "hash": "b9b3c5a7164a1789403d9556c93aa643f0e761db",
      "subject": "Bug 2050049 - Dump and report a profile when an xpcshell test is about to time out, r=ahal."
    },
    "D308525": {
      "author": "Dimi",
      "avatar": "https://www.gravatar.com/avatar/bd10912fd8637cc64f00edd465ca8b0d?d=identicon\u0026s=64",
      "cl": "D308525",
      "clUrl": "https://phabricator.services.mozilla.com/D308525",
      "description": "Wire up the passport data type in the Form Autofill engine, independent of\nany storage backend:\n\n- Register a passport descriptor in the data-type registry.\n- Detect passport fields (number, name, country, and issue/expiry dates as\n  either a single field or split month/day/year parts) via regexp rules in\n  HeuristicsRegExp; the default storage returns an empty passports collection.\n- Add FormAutofillPassportSection and passport capture handling.\n- Add a browser test for passport detection.\n\nThe passport regexp rules are a temporary heuristic and will be removed once\nthe ML model supports passport fields.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308525",
      "email": "dlee@mozilla.com",
      "hash": "ef0b269e7db4dcc84f57f653b7bbf6481f03e4df",
      "subject": "Bug 2050037 - Support passport fields detection r=NeilDeakin,credential-management-reviewers"
    },
    "D308535": {
      "author": "Johannes Salas Schmidt",
      "avatar": "https://www.gravatar.com/avatar/6793e1db22abe181664726808800b218?d=identicon\u0026s=64",
      "cl": "D308535",
      "clUrl": "https://phabricator.services.mozilla.com/D308535",
      "description": "Introduce RustPasswordEngine, a BridgedEngine backed by the Rust logins\ncomponent, used instead of the legacy JS PasswordEngine when the pref\nsignon.storage.rust.active is set.\n\nNote: lastSync is not migrated from the legacy \"\u003cengine\u003e.lastSync\" pref\ninto the Rust meta table, so the first sync after switching backends does\na full re-download. This is a one-time, reset-like behavior.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308535",
      "email": "joschmidt@mozilla.com",
      "hash": "1e136a29d5f49f49ccb440364bb0e3e4051ca626",
      "subject": "Bug 2050064 - Add Rust-backed logins Sync engine r=sync-reviewers,credential-management-reviewers,dimi,markh"
    },
    "D308565": {
      "author": "yazan",
      "avatar": "https://www.gravatar.com/avatar/245b769556bb6cfddcaf1e7bcf95ef9a?d=identicon\u0026s=64",
      "cl": "D308565",
      "clUrl": "https://phabricator.services.mozilla.com/D308565",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308565",
      "email": "yalmacki@mozilla.com",
      "hash": "f217a64c80f22b6f81c49b0e8506968f4c0cce20",
      "subject": "Bug 2050111 - Fix RTL progress bar direction in onboarding checklist. r=jprickett,omc-reviewers"
    },
    "D308600": {
      "author": "Dre Grant",
      "avatar": "https://www.gravatar.com/avatar/766f0b780d039fe61b18c3a95137d8ea?d=identicon\u0026s=64",
      "cl": "D308600",
      "clUrl": "https://phabricator.services.mozilla.com/D308600",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308600",
      "email": "dgrant@mozilla.com",
      "hash": "64ca81b62743ae598aa854fc2f3c1e6deb24c315",
      "subject": "Bug 2049798 - Show semi-finals variant in wallpaper feature highlight. r=maxx"
    },
    "D308677": {
      "author": "Noah Bond",
      "avatar": "https://www.gravatar.com/avatar/fc3c20df151bbad67c4e98bbc6b50c1d?d=identicon\u0026s=64",
      "cl": "D308677",
      "clUrl": "https://phabricator.services.mozilla.com/D308677",
      "description": "This involved:\n- Removing TabsTrayStore from Tab Manager Composables.\n- Marking some state data classes as \"Immutable\" as these only change when the entire UI data model updates.\n- Flattening some Composable APIs by passing in the state wrapper data classes instead of individual properties.\n- Flattening some Composable APIs by passing in an `onAction()` lambda to provide a catch-all for Store dispatches.\n- Re-tooling how the final UI data model got generated so there were not any vars or mutable lists\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308677",
      "email": "nbond@mozilla.com",
      "hash": "8bb5d86733441c36dbb410eef815fdaa00d84f1a",
      "subject": "Bug 2041123 - Increase the stability of the Tab Manager's composables r=android-reviewers,calu"
    },
    "D308750": {
      "author": "Keith Cirkel",
      "avatar": "https://www.gravatar.com/avatar/87a4065b580b6f1e43858ab49d98c109?d=identicon\u0026s=64",
      "cl": "D308750",
      "clUrl": "https://phabricator.services.mozilla.com/D308750",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308750",
      "email": "keithamus@users.noreply.github.com",
      "hash": "2a11aeed1404c04250653db236645c7288dd99b3",
      "subject": "Bug 1293741 - Move active pseudo activation to pointerdown handler r=emilio,dom-core-reviewers,smaug"
    },
    "D308761": {
      "author": "Nikolas Wipper",
      "avatar": "https://www.gravatar.com/avatar/171e99754de86ddc21550dbc7759882c?d=identicon\u0026s=64",
      "cl": "D308761",
      "clUrl": "https://phabricator.services.mozilla.com/D308761",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308761",
      "email": "nwipper@mozilla.com",
      "hash": "34e0f2aabb601c0fc4020d0682751e1f1bf294e5",
      "subject": "Bug 2047503 - Replace the lockstore PBKDF2 implementation with a call to NSS. r=bbeurdouche"
    },
    "D308787": {
      "author": "Andreas Pehrson",
      "avatar": "https://www.gravatar.com/avatar/906f005aaa08b2d109a3fa9e1b83000d?d=identicon\u0026s=64",
      "cl": "D308787",
      "clUrl": "https://phabricator.services.mozilla.com/D308787",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308787",
      "email": "apehrson@mozilla.com",
      "hash": "5f6ac9a4251d014107685bc45bfc637ba0a497db",
      "subject": "Bug 2049310 - Add moz-WPT for fractional gUM framerate decimation. r=jib"
    },
    "D308788": {
      "author": "Andreas Pehrson",
      "avatar": "https://www.gravatar.com/avatar/906f005aaa08b2d109a3fa9e1b83000d?d=identicon\u0026s=64",
      "cl": "D308788",
      "clUrl": "https://phabricator.services.mozilla.com/D308788",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308788",
      "email": "apehrson@mozilla.com",
      "hash": "5c0ebc3bf96e8cc5dc4b265e4e1c87b222183aff",
      "subject": "Bug 2049310 - Do fractional framerate decimation for cameras to reach requested rate on average. r=jib"
    },
    "D309033": {
      "author": "Sylvestre Ledru",
      "avatar": "https://www.gravatar.com/avatar/fb0fd07485efdfc05e02987075fdbab0?d=identicon\u0026s=64",
      "cl": "D309033",
      "clUrl": "https://phabricator.services.mozilla.com/D309033",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309033",
      "email": "sylvestre@debian.org",
      "hash": "a9d8b684f1f70fa5b713c055bfa44b40965ffce8",
      "subject": "Bug 2038819 - Fix rumdl markdown lint warnings in devtools/docs r=devtools-reviewers,nchevobbe"
    },
    "D309046": {
      "author": "AndiAJ",
      "avatar": "https://www.gravatar.com/avatar/b4ea35e4d5d0c51e2affc0dc2515853c?d=identicon\u0026s=64",
      "cl": "D309046",
      "clUrl": "https://phabricator.services.mozilla.com/D309046",
      "description": "Refactored the UI test by removing the custom functions used for interacting with and verifying specific elements.\nInstead, it transitions the test steps to use the framework's existing, generic funtions.\n\nThe UI test successfully passed 10x on Firebase ✅\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309046",
      "email": "andiaj@users.noreply.github.com",
      "hash": "b533920daf7fc86a75f9ab3c24307e83e7c895f4",
      "subject": "Bug 2050833 - Replace custom element functions from verifyTheSaveToCollectionSubMenuOptionTest r=aaronmt"
    },
    "D309056": {
      "author": "Titouan Thibaud",
      "avatar": "https://www.gravatar.com/avatar/968f8efd6bc3bd81eaf677cd2184bc5b?d=identicon\u0026s=64",
      "cl": "D309056",
      "clUrl": "https://phabricator.services.mozilla.com/D309056",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309056",
      "email": "tthibaud@mozilla.com",
      "hash": "a3ebd550f60a69f863aca9906c73cb64a737e571",
      "subject": "Bug 2050581 - Create a version of FloatingActionButton that accepts a custom icon composable. r=android-reviewers,007"
    },
    "D309092": {
      "author": "Matthew Gaudet",
      "avatar": "https://www.gravatar.com/avatar/0c4c6c72545e010e29e8da0e3bb229ee?d=identicon\u0026s=64",
      "cl": "D309092",
      "clUrl": "https://phabricator.services.mozilla.com/D309092",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309092",
      "email": "mgaudet@mozilla.com",
      "hash": "e818ba95b88d20d3362289037d2f687a60372dbd",
      "subject": "Bug 2048840 - Skip JitcodeGlobalTable BaselineEntry registration when Gecko profiler instrumentation is disabled r=jandem"
    },
    "D309097": {
      "author": "Harrison Oglesby",
      "avatar": "https://www.gravatar.com/avatar/3956d10b2535af542f91f0a11834b064?d=identicon\u0026s=64",
      "cl": "D309097",
      "clUrl": "https://phabricator.services.mozilla.com/D309097",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309097",
      "email": "oglesby.harrison@gmail.com",
      "hash": "a01c4e0c45e0d3c88219381937eb627d5899d421",
      "subject": "Bug 2050888 - Enable Google Lens by default in nightly and in secret settings in beta r=android-reviewers,petru"
    },
    "D309103": {
      "author": "Segun Famisa",
      "avatar": "https://www.gravatar.com/avatar/ce9ff32b0db44f5692a673fddca3a516?d=identicon\u0026s=64",
      "cl": "D309103",
      "clUrl": "https://phabricator.services.mozilla.com/D309103",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309103",
      "email": "sfamisa@mozilla.com",
      "hash": "2288e1753832ed76722272ab2ca944d5b6004d1f",
      "subject": "Bug 2050527 - Move SyncEngine \u0026 SyncConfig to sync-concept r=android-reviewers,matt-tighe"
    },
    "D309124": {
      "author": "Jon Oliver",
      "avatar": "https://www.gravatar.com/avatar/2ceb46c1e98ede12e718f2bdc966aa45?d=identicon\u0026s=64",
      "cl": "D309124",
      "clUrl": "https://phabricator.services.mozilla.com/D309124",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309124",
      "email": "jooliver@mozilla.com",
      "hash": "dfc1d5c29d02c12acbc8db1672510ae10b684d51",
      "subject": "Bug 2049599 - fix selected color for menu items r=desktop-theme-reviewers,hjones"
    },
    "D309131": {
      "author": "mimi",
      "avatar": "https://www.gravatar.com/avatar/dd65e4af4102c8c53e42ed83c2843ba7?d=identicon\u0026s=64",
      "cl": "D309131",
      "clUrl": "https://phabricator.services.mozilla.com/D309131",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309131",
      "email": "mjung@mozilla.com",
      "hash": "a9eca7a24e72053e5046011154216246be99537d",
      "subject": "Bug 2050909 - Remove import checkbox from easy setup screens and allow embedded import to always be shown r=omc-reviewers,jprickett"
    },
    "D309214": {
      "author": "mike a",
      "avatar": "https://www.gravatar.com/avatar/fdb71788c694eea6a9e8a29cddd6e606?d=identicon\u0026s=64",
      "cl": "D309214",
      "clUrl": "https://phabricator.services.mozilla.com/D309214",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309214",
      "email": "mavduevskiy@mozilla.com",
      "hash": "b160173744d03974d409c81fa5256dbb61f2fa09",
      "subject": "Bug 2050083 - Don't short-circuit vpn entitlemnet for unauth users r=android-reviewers,gmalekpour"
    },
    "D309238": {
      "author": "Jan Varga",
      "avatar": "https://www.gravatar.com/avatar/d0903078e50c5ff651923837464991d8?d=identicon\u0026s=64",
      "cl": "D309238",
      "clUrl": "https://phabricator.services.mozilla.com/D309238",
      "description": "Enable the CSS Typed OM preference by default in Nightly and update the\ncorresponding interface exposure tests to reflect the new default.\n\nThe implementation has matured enough for broader Nightly testing while\nremaining functionality and follow-up improvements continue to be implemented.\n\nIf unexpected issues affecting the Nightly experience are reported, the\npreference can be temporarily disabled again while they are addressed.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309238",
      "email": "jvarga@igalia.com",
      "hash": "deceb98d9ba8f43e67087849fac961a0481cac78",
      "subject": "Bug 2051047 - Enable CSS Typed OM by default in Nightly; r=emilio,webidl,dom-worker-reviewers,saschanaz,edenchuang"
    },
    "D309246": {
      "author": "Masayuki Nakano",
      "avatar": "https://www.gravatar.com/avatar/900caab146bc7a489b3854cf10acf93f?d=identicon\u0026s=64",
      "cl": "D309246",
      "clUrl": "https://phabricator.services.mozilla.com/D309246",
      "description": "`IMEContentObserver` handles differently between `contenteditable` and\n`designMode` so that `IMEContentObserver` should be recreated for the\nsafe.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309246",
      "email": "masayuki@d-toybox.com",
      "hash": "cad8f52b9153aef8468a32e9bae33fc0d897721b",
      "subject": "Bug 2050572 - Don't reuse `IMEContentObserver` if design mode has been changed r=jjaschke"
    },
    "D309250": {
      "author": "Jan Varga",
      "avatar": "https://www.gravatar.com/avatar/d0903078e50c5ff651923837464991d8?d=identicon\u0026s=64",
      "cl": "D309250",
      "clUrl": "https://phabricator.services.mozilla.com/D309250",
      "description": "Add WPT coverage for parsing simple numbers, percentages, angles, and times\nwith CSSNumericValue.parse().\n\nThese tests cover additional numeric value types that are expected to be\nsupported by CSSNumericValue.parse(), providing coverage ahead of the\nimplementation.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309250",
      "email": "jvarga@igalia.com",
      "hash": "97fc196ef21dc946793350248a4ff5d43ac143d6",
      "subject": "Bug 2051120 - Add WPT coverage for additional CSSNumericValue.parse() value types; r=firefox-style-system-reviewers,boris"
    },
    "D309251": {
      "author": "Jan Varga",
      "avatar": "https://www.gravatar.com/avatar/d0903078e50c5ff651923837464991d8?d=identicon\u0026s=64",
      "cl": "D309251",
      "clUrl": "https://phabricator.services.mozilla.com/D309251",
      "description": "Extend CSSNumericValue.parse() to support simple numbers, percentages, angles,\nand times in addition to the already-supported length values.\n\nAlso parse the whole input so strings with trailing tokens are rejected, and\nupdate WPT expectations for tests that now pass with the additional numeric\nvalue support.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309251",
      "email": "jvarga@igalia.com",
      "hash": "fb0bccfa4ba6775cb09feb2e8a14c8f0f2c26363",
      "subject": "Bug 2051120 - Support additional numeric values in CSSNumericValue.parse(); r=emilio,firefox-style-system-reviewers"
    },
    "D309271": {
      "author": "Ryan VanderMeulen",
      "avatar": "https://www.gravatar.com/avatar/51823ded02903fa76c961fe2a3c1318a?d=identicon\u0026s=64",
      "cl": "D309271",
      "clUrl": "https://phabricator.services.mozilla.com/D309271",
      "description": "The ub18-libc6, ub18-python-dbus, ub18-pygobject and ub18-pyatspi packages\nare no longer consumed by any docker image, so remove them along with the\npatch files that only they referenced.\n\nAlso switch the remaining ub18-python-psutil and ub18-coreutils packages off\nlaunchpad.net source URLs in favour of snapshot.ubuntu.com.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309271",
      "email": "rvandermeulen@mozilla.com",
      "hash": "4faafe4b9135c124c5dda35a131cb6064282686e",
      "subject": "Bug 2051165 - Remove unused ub18 packages and drop launchpad source URLs r=firefox-build-system-reviewers,sergesanspaille"
    },
    "D309290": {
      "author": "Dão Gottwald",
      "avatar": "https://www.gravatar.com/avatar/45dfe136efbb8e5f89eb0b21775ab195?d=identicon\u0026s=64",
      "cl": "D309290",
      "clUrl": "https://phabricator.services.mozilla.com/D309290",
      "description": "`[hidden]` is implemented as a low-priority presentation attribute (see the\ncomment in layout/style/res/html.css), so any author rule setting `display`\nsilently overrides it. A lot of chrome/in-content CSS therefore guards\ndisplay-setting rules with `:not([hidden])` so the element still hides when the\n`hidden` attribute is set.\n\nAdd a `:where([hidden]) { display: none !important }` rule to the two base\nstylesheets -- global-shared.css (chrome) and in-content/common-shared.css\n(in-content pages) -- so callers can set a `display` type unconditionally, and\ndrop the redundant `:not([hidden])` guards. `:where()` keeps the selector at\nzero specificity, so the rare element that must stay shown can override it with\na plain `!important`: findbar[hidden] (slide transition), treecol[hidden] in\nxul.css (column collapse), and setting-control[hidden]:has(\u003e moz-message-bar).\n\nGuards are kept where the base rule can't reach: shadow-DOM widgets, the\nnewtab/activity-stream bundle, browser/fxr/*, and mixed-coverage sheets injected\ninto content documents or shadow roots (urlbar view sheets via the smartbar,\nfeature-callout sheets). Structural `:not([hidden])` uses (sibling/descendant\ncombinators) are untouched.\n\nAlso fix the moreFromMozilla QR-code box, which showed itself by setting\nhidden=\"false\". Since bug 1979014 made `hidden` a regular boolean attribute,\nthat value is actually hidden, so it now removes the attribute instead (and the\nmatching :not([hidden=\"true\"]) CSS guards become a plain selector).\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309290",
      "email": "dao@mozilla.com",
      "hash": "f37be02e7cb91c6a0f79d8da4055fdae25ca4981",
      "subject": "Bug 2051196 - Add a global [hidden] { display: none !important } rule instead of :not([hidden]) display guards r=desktop-theme-reviewers,emilio"
    },
    "D309302": {
      "author": "Jari Jalkanen",
      "avatar": "https://www.gravatar.com/avatar/2b84b1a415615d22d7afc6554020d164?d=identicon\u0026s=64",
      "cl": "D309302",
      "clUrl": "https://phabricator.services.mozilla.com/D309302",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309302",
      "email": "jjalkanen@mozilla.com",
      "hash": "d7af90a2b719b6c3240c82d475d6f8acf6d0a0ca",
      "subject": "Bug 2048936: IDB state machine enhancements. r=dom-storage-reviewers,asuth"
    },
    "D309314": {
      "author": "Sotaro Ikeda",
      "avatar": "https://www.gravatar.com/avatar/a0c6bcb88fdc08a4e55f4fcf65cf0428?d=identicon\u0026s=64",
      "cl": "D309314",
      "clUrl": "https://phabricator.services.mozilla.com/D309314",
      "description": "The STR expects  expects gfx::SurfaceFormat::R8G8B8X8.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309314",
      "email": "sotaro.ikeda.g@gmail.com",
      "hash": "acb1c23819b2405fc852301c39e00e876e66c706",
      "subject": "Bug 2051208 - Use gfx::SurfaceFormat::R8G8B8X8 in AndroidImageReader::UpdateTexImage() r=gfx-reviewers,lsalzman"
    },
    "D309316": {
      "author": "Nicolas Silva",
      "avatar": "https://www.gravatar.com/avatar/a375423648d373880fdd9e4eccc6b920?d=identicon\u0026s=64",
      "cl": "D309316",
      "clUrl": "https://phabricator.services.mozilla.com/D309316",
      "description": "the quad code requires the local rect to precisely match the bounds of the render task for patterns that sample images. Previously an inconsistency with adjusted snapshots that was papered over by rounding coordinates in prepare_quad. As we no longer do that, the inconsistency becomes more apparent and has to be addressed explicitly.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309316",
      "email": "nsilva@mozilla.com",
      "hash": "1132215a19535b0ab8946df0fcbf1fa85287cd4e",
      "subject": "Bug 2049363 - Ensure that VT snapshots are snapped in a consistent way. r=gw"
    },
    "D309323": {
      "author": "Nina Pypchenko",
      "avatar": "https://www.gravatar.com/avatar/d4af23165fd08129f80a4a6aef515048?d=identicon\u0026s=64",
      "cl": "D309323",
      "clUrl": "https://phabricator.services.mozilla.com/D309323",
      "description": "The timer state is shared across all open newtab/home pages, but each page ran\nits own end-of-session handler and toggled the type relative to the shared\nvalue. With more than one page open (e.g. about:home plus a preloaded\nabout:newtab), the toggles cancelled out and the timer stuck on the\njust-finished type.\n\nCapture the type of the session that just ended and set the next type\nabsolutely, so any number of pages completing the same session converge instead\nof cancelling.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309323",
      "email": "npypchenko@mozilla.com",
      "hash": "54093316d6ac251b686a347f5ccf0c0dbbbaf45e",
      "subject": "Bug 2051187 - Focus Timer widget: make focus/break transition reliable r=Dre"
    },
    "D309341": {
      "author": "giorga",
      "avatar": "https://www.gravatar.com/avatar/97f54ef8626093cb5e017281ae27e350?d=identicon\u0026s=64",
      "cl": "D309341",
      "clUrl": "https://phabricator.services.mozilla.com/D309341",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309341",
      "email": "giorga@mozilla.com",
      "hash": "810b52efd63604d82e3d45227305d0b9b11ffbdf",
      "subject": "Bug 2051090 - Fix crashed-tab UI \"submit crash report to Mozilla\" checkbox. r=android-reviewers,007"
    },
    "D309347": {
      "author": "Tom Schuster",
      "avatar": "https://www.gravatar.com/avatar/643f0847a3bf01b6ac23263f1661d14e?d=identicon\u0026s=64",
      "cl": "D309347",
      "clUrl": "https://phabricator.services.mozilla.com/D309347",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309347",
      "email": "tschuster@mozilla.com",
      "hash": "c95b4db694d5be9efd7ad0de37b99846059cb1e8",
      "subject": "Bug 2051276 - Sanitizer: Update web-platform-tests. r=freddyb"
    },
    "D309362": {
      "author": "Tom Schuster",
      "avatar": "https://www.gravatar.com/avatar/643f0847a3bf01b6ac23263f1661d14e?d=identicon\u0026s=64",
      "cl": "D309362",
      "clUrl": "https://phabricator.services.mozilla.com/D309362",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309362",
      "email": "tschuster@mozilla.com",
      "hash": "66e9354ea8bb8cda9cd4b5c56bf92665a55b20cf",
      "subject": "Bug 2008369 - Validate principal in PContent::LoadURIExternal. r=nika"
    },
    "D309369": {
      "author": "acreskeyMoz",
      "avatar": "https://www.gravatar.com/avatar/0a42c30d7e02d9f553bfbf0e694e3f4a?d=identicon\u0026s=64",
      "cl": "D309369",
      "clUrl": "https://phabricator.services.mozilla.com/D309369",
      "description": "The IsFromCache branch in nsPrefetchNode::OnStartRequest forced the load event\nunconditionally, overriding the tainting-based decision. Only force it when the\nchannel status is success, so a failed CORS check still fires error.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309369",
      "email": "acreskey@mozilla.com",
      "hash": "aa0f14678b65962a01668729c8ee38684a4678f4",
      "subject": "Bug 2050993 - Only fire the prefetch load event from cache when the channel succeeded. r=necko-reviewers,valentin"
    },
    "D309391": {
      "author": "Andrew McCreight",
      "avatar": "https://www.gravatar.com/avatar/0a70c84cd33dba0151fe15f2f8773137?d=identicon\u0026s=64",
      "cl": "D309391",
      "clUrl": "https://phabricator.services.mozilla.com/D309391",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309391",
      "email": "continuation@gmail.com",
      "hash": "767520f8f4998dab91bf6641277b3ea319c7ed98",
      "subject": "Bug 2051319 - Add a comment spelling out that isNumberRepresentable returns false for NaN. r=jandem DONTBUILD"
    },
    "D309392": {
      "author": "az",
      "avatar": "https://www.gravatar.com/avatar/788a42b35c139431ccaf9575c6626a93?d=identicon\u0026s=64",
      "cl": "D309392",
      "clUrl": "https://phabricator.services.mozilla.com/D309392",
      "description": "PDMFactorySupport registered pref and gfxVar invalidation listeners while\nholding sInstanceMutex. That setup may require main thread initialization,\nincluding gfxVars initialization.\n\nMove listener registration before taking sInstanceMutex and initialize gfxVars\nas part of that main thread setup. Instance() now returns nullptr if\nregistration cannot complete or shutdown begins during the main thread hop to\navoid holding the mutex across work that can dispatch to the main thread.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309392",
      "email": "azebrowski@mozilla.com",
      "hash": "c6ecf300c13466e298b2f35142e48e0a68e6e37a",
      "subject": "Bug 2050110 - Avoid holding PDMFactorySupport mutex while registering invalidation listeners r=alwu"
    },
    "D309403": {
      "author": "Ben Hearsum",
      "avatar": "https://www.gravatar.com/avatar/7bb9fa0687c2864f6d7ccf2c3b68a6a1?d=identicon\u0026s=64",
      "cl": "D309403",
      "clUrl": "https://phabricator.services.mozilla.com/D309403",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309403",
      "email": "ben@mozilla.com",
      "hash": "0e87b122d8e9222b1e3f596bc4a676590e47ed3b",
      "subject": "Bug 2051335: stop hardcoding channel and app name in update integrity tests r=taskgraph-reviewers,ahal"
    },
    "D309408": {
      "author": "Florian Quèze",
      "avatar": "https://www.gravatar.com/avatar/0ffa237c82d28773736b6c9688b404e3?d=identicon\u0026s=64",
      "cl": "D309408",
      "clUrl": "https://phabricator.services.mozilla.com/D309408",
      "description": "shouldCapture() previously bailed out on the nightly channel, which meant the\nmochitest-browser-screenshots jobs running on autoland and mozilla-central never\ncaptured anything. Gate on MOZ_UPLOAD_DIR instead, so screenshots are captured\nin CI (where there is a directory to upload them to) and skipped on local builds.\n\nAlso upload to MOZ_UPLOAD_DIR unconditionally rather than excluding integration\nbranches, so the images are available as artifacts on every branch that runs.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309408",
      "email": "florian@queze.net",
      "hash": "3cf0cca0b19a691a2cd35e2d851e1d4c4cb913d7",
      "subject": "Bug 2051353 - Capture and upload mozscreenshots screenshots whenever there is an upload directory. r=firefox-desktop-core-reviewers ,Gijs"
    },
    "D309409": {
      "author": "Florian Quèze",
      "avatar": "https://www.gravatar.com/avatar/0ffa237c82d28773736b6c9688b404e3?d=identicon\u0026s=64",
      "cl": "D309409",
      "clUrl": "https://phabricator.services.mozilla.com/D309409",
      "description": "_screenshotOSX() ran an osascript to look up the frontmost window's id before\ncapturing. Sending that Apple Event requires the macOS Automation permission,\nwhich CI workers don't grant, so it timed out (AppleEvent timed out, -1712) and\nthe suite expanded to consume its whole timeout budget. This is the root cause\nbehind the long-standing macOS mozscreenshots skips (see bug 1554821).\n\nThe window id was never actually used by the capture (screencapture already grabs\nthe whole screen), so drop the osascript step and call screencapture -x directly,\nmatching what the Linux and Windows paths do.\n\nDrop the macOS skips on browser_primaryUI.js, browser_controlCenter.js and\nbrowser_preferences.js now that this timeout is fixed. The remaining skips only\ncovered Intel macs, where the screenshots suite is no longer scheduled.\n\nbrowser_screenshots_cropping.js compares canvas-cropped images against reference\nPNGs; on Apple Silicon the cropped output differs from the references by a small\nnumber of edge pixels. Skip it on macosx1500-aarch64 for now; this is independent\nof the capture mechanism and was never exercised while the suite was disabled.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309409",
      "email": "florian@queze.net",
      "hash": "0d95ba0f3690cfabe70542fe5f815f16a9624d86",
      "subject": "Bug 2051353 - Fix mozscreenshots screen capture on macOS. r=firefox-desktop-core-reviewers ,Gijs"
    },
    "D309410": {
      "author": "Florian Quèze",
      "avatar": "https://www.gravatar.com/avatar/0ffa237c82d28773736b6c9688b404e3?d=identicon\u0026s=64",
      "cl": "D309410",
      "clUrl": "https://phabricator.services.mozilla.com/D309410",
      "description": "Test tasks could not be indexed: the test description schema had no index field.\nAdd one (reusing the job description's IndexSchema) and thread it through to the\njob description.\n\nBecause the same suite runs on several test platforms, append the test-platform\nto the index job-name so the per-platform tasks get distinct index paths instead\nof clobbering each other, and skip indexing the confirm-failure (-cf) copies,\nwhich never run on real branches.\n\nAdd a 'test' gecko-v2 index product (the existing 'source' product is for the\nsource-test kind) and give mochitest-browser-screenshots an index block using it,\nso its captured artifacts are discoverable at\nindex.gecko.v2.\u003cproject\u003e.latest.test.mochitest-browser-screenshots.\u003ctest-platform\u003e.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309410",
      "email": "florian@queze.net",
      "hash": "f036d006abb5ced2ff90c18d79c78ac4db7cf260",
      "subject": "Bug 2051353 - Add per-platform Taskcluster index routes to test tasks. r=taskgraph-reviewers,ahal"
    },
    "D309411": {
      "author": "Florian Quèze",
      "avatar": "https://www.gravatar.com/avatar/0ffa237c82d28773736b6c9688b404e3?d=identicon\u0026s=64",
      "cl": "D309411",
      "clUrl": "https://phabricator.services.mozilla.com/D309411",
      "description": "Run mochitest-browser-screenshots on Windows (windows11-64-25h2) and macOS\n(macosx1500-aarch64) in addition to Linux, and add the desktop-screenshot-capture\ntest set to macosx1500-aarch64/opt so the suite is scheduled there.\n\nDrop the no-fission variant: Fission is the default and the extra variant adds no\nuseful coverage for these screenshots.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309411",
      "email": "florian@queze.net",
      "hash": "4b38a1e2e3679de31d63270d43fea485488b5294",
      "subject": "Bug 2051353 - Run the mozscreenshots jobs on Windows and macOS. r=taskgraph-reviewers,ahal"
    },
    "D309415": {
      "author": "Dre Grant",
      "avatar": "https://www.gravatar.com/avatar/766f0b780d039fe61b18c3a95137d8ea?d=identicon\u0026s=64",
      "cl": "D309415",
      "clUrl": "https://phabricator.services.mozilla.com/D309415",
      "description": "SHOW_PERSONALIZE now carries an optional wallpaperCategory, which is\nstored in App state and consumed by WallpaperCategories to open that\ncategory's subpanel. The wallpaper feature highlight CTA uses this to\nopen the Firefox category instead of stopping at the top-level Customize\npanel. Known category ids are centralized in WALLPAPER_CATEGORIES.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309415",
      "email": "dgrant@mozilla.com",
      "hash": "b5949d610aa912d32940974e030fdb97f460cb65",
      "subject": "Bug 2051348 - Deep-link highlight CTAs into the Firefox wallpaper category. r=maxx"
    },
    "D309421": {
      "author": "Segun Famisa",
      "avatar": "https://www.gravatar.com/avatar/ce9ff32b0db44f5692a673fddca3a516?d=identicon\u0026s=64",
      "cl": "D309421",
      "clUrl": "https://phabricator.services.mozilla.com/D309421",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309421",
      "email": "sfamisa@mozilla.com",
      "hash": "ecb8034d4dcf5f474f2a7f138bbd562cd4e24815",
      "subject": "Bug 2051360 - Scaffold service-sync module r=android-reviewers,matt-tighe"
    },
    "D309431": {
      "author": "Oriol Brufau",
      "avatar": "https://www.gravatar.com/avatar/64a9f64c594c8e42bec604698a2122f4?d=identicon\u0026s=64",
      "cl": "D309431",
      "clUrl": "https://phabricator.services.mozilla.com/D309431",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309431",
      "email": "obrufau@igalia.com",
      "hash": "6a9983244af01e707473ff59db13a9a49a0175a3",
      "subject": "Bug 2051394 - Don't use Gecko-specific code for link parameters in parts of Stylo shared with Servo. r=firefox-style-system-reviewers,dshin"
    },
    "D309433": {
      "author": "Micah Killoran",
      "avatar": "https://www.gravatar.com/avatar/917b1186aad4798d910d24f25629d145?d=identicon\u0026s=64",
      "cl": "D309433",
      "clUrl": "https://phabricator.services.mozilla.com/D309433",
      "description": "The autocomplete icons were rendered too large after bug 2023223. Default the row item icons to --icon-size instead of --icon-size-large, and give payment-type rows a wider --icon-width so their icons keep the correct aspect ratio. Also only fall back to the history icon when the entry's style is \"fromhistory\", so non-history results no longer get a stray icon.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309433",
      "email": "mtigley@mozilla.com",
      "hash": "a4fb6eac1f05935098617f92f92a3ab94aa70db5",
      "subject": "Bug 2051370 - Reduce autocomplete row item icon size. r=dimi,desktop-theme-reviewers,emilio"
    },
    "D309438": {
      "author": "Gabriel Luong",
      "avatar": "https://www.gravatar.com/avatar/8d4b3dd6d3dd0178956876e108d984c6?d=identicon\u0026s=64",
      "cl": "D309438",
      "clUrl": "https://phabricator.services.mozilla.com/D309438",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309438",
      "email": "gabriel.luong@gmail.com",
      "hash": "3d1bf3a882b49c4d341277c572ed3f0ce227fa0c",
      "subject": "Bug 2051321 - Remove the Menu CFR r=android-reviewers,android-l10n-reviewers,adhingra,flod"
    },
    "D309442": {
      "author": "Andrew McCreight",
      "avatar": "https://www.gravatar.com/avatar/0a70c84cd33dba0151fe15f2f8773137?d=identicon\u0026s=64",
      "cl": "D309442",
      "clUrl": "https://phabricator.services.mozilla.com/D309442",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309442",
      "email": "continuation@gmail.com",
      "hash": "de73a4de09fd85cdf18bd0eeb6c4bc79591fdc50",
      "subject": "Bug 2051417 - Ignore web driver leakcheck failures. r=whimboo DONTBUILD"
    },
    "D309459": {
      "author": "Hiroyuki Ikezoe",
      "avatar": "https://www.gravatar.com/avatar/9ec516861853d265a973cd0ef66735cf?d=identicon\u0026s=64",
      "cl": "D309459",
      "clUrl": "https://phabricator.services.mozilla.com/D309459",
      "description": "The test scrolls an unrelated container and then asserts that its\nscrollTop is exactly equal to the expected scroll offset, where the\nexpected value is taken from the second .snaparea's offsetTop.\n\nElement.offsetTop is defined as a long, so the expected value is rounded\nto a whole pixel, whereas the actual scroll offset can be fractional.\nWhen a classic (space-taking) scrollbar is present, the container's\ncontent/client geometry can land the snap target on a fractional offset,\nso the equality assertion fails by a sub-pixel amount.\n\nSet scrollbar-width: none so the scrollbar no longer takes space, keeping\nthe snap offsets integral and matching offsetTop.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309459",
      "email": "hikezoe.birchill@mozilla.com",
      "hash": "efe341f2b990a450e66ab313927b82fa200e3f9e",
      "subject": "Bug 2051398 - Hide the scrollbar in unrelated-gesture-scroll-during-snap.html. r=botond"
    },
    "D309464": {
      "author": "Jan-Ivar Bruaroey",
      "avatar": "https://www.gravatar.com/avatar/a239c931feb9b0f2bef30d333a6b767c?d=identicon\u0026s=64",
      "cl": "D309464",
      "clUrl": "https://phabricator.services.mozilla.com/D309464",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309464",
      "email": "jan-ivar@users.noreply.github.com",
      "hash": "6f2ef7fb46d59672321ab7790b1919a44f0a1718",
      "subject": "Bug 2051437 - Extend intervention to https://test-connectivity.riverside.fm. r=twisniewski,webcompat-reviewers"
    },
    "D309467": {
      "author": "Emilio Cobos Álvarez",
      "avatar": "https://www.gravatar.com/avatar/1d91d22a4892f16f744b31fd4286144e?d=identicon\u0026s=64",
      "cl": "D309467",
      "clUrl": "https://phabricator.services.mozilla.com/D309467",
      "description": "Not calling PrintTarget::Finish() is not the choice I would've made\nbut seems harmless specially for SkPDF...\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309467",
      "email": "emilio@crisal.io",
      "hash": "2c646b547a1593ad1e8c49df26abe825824b669a",
      "subject": "Bug 2050691 - Make PrintTargetSkPDF::Finish consistent with PrintTargetPDF::Finish. r=lsalzman"
    },
    "D309473": {
      "author": "Emilio Cobos Álvarez",
      "avatar": "https://www.gravatar.com/avatar/1d91d22a4892f16f744b31fd4286144e?d=identicon\u0026s=64",
      "cl": "D309473",
      "clUrl": "https://phabricator.services.mozilla.com/D309473",
      "description": "This should allow the toolbox to get the proper focus / window\nplacement, regardless of compositor heuristics or so.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309473",
      "email": "emilio@crisal.io",
      "hash": "55898fc52b6f0074e0b0e0c35b81362b5387f5ba",
      "subject": "Bug 2051444 - Request XDG activation token for launching the toolbox. r=devtools-reviewers,nchevobbe"
    },
    "D309476": {
      "author": "Ryan VanderMeulen",
      "avatar": "https://www.gravatar.com/avatar/51823ded02903fa76c961fe2a3c1318a?d=identicon\u0026s=64",
      "cl": "D309476",
      "clUrl": "https://phabricator.services.mozilla.com/D309476",
      "description": "Updates android-gradle-plugin to 9.2.1 (lint 32.2.1) and migrates off the\norg.jetbrains.kotlin.android plugin to AGP's built-in Kotlin, pinning the Kotlin version on each\nroot's buildscript classpath and applying the com.android.library/application plugins through the\nplugins DSL.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309476",
      "email": "rvandermeulen@mozilla.com",
      "hash": "d298e30fbf7c4dcb79334aa9f9df5ccad067d634",
      "subject": "Bug 2049916 - Bump AGP to 9.2.1 and migrate to built-in Kotlin. r=android-reviewers,mcarare"
    },
    "D309477": {
      "author": "Ryan VanderMeulen",
      "avatar": "https://www.gravatar.com/avatar/51823ded02903fa76c961fe2a3c1318a?d=identicon\u0026s=64",
      "cl": "D309477",
      "clUrl": "https://phabricator.services.mozilla.com/D309477",
      "description": "Move the kotlinx-serialization, parcelize, safeargs, KSP, jacoco, and maven-publish plugins from\nimperative apply syntax to the plugins {} block, using version-catalog aliases. Plugins supplied via\nthe buildscript classpath (parcelize, safeargs) use versionless catalog entries so the plugins DSL\ndoes not attempt a compatibility check against their unknown classpath version.\n\nApplying kotlinx-serialization through the plugins DSL also makes its dedicated buildscript classpath\ndependency redundant, so drop the now-vestigial buildscript blocks from the affected modules.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309477",
      "email": "rvandermeulen@mozilla.com",
      "hash": "237729103237c70483635c2cf61fbbc770b5320d",
      "subject": "Bug 2049916 - Migrate Android module plugin application to the plugins DSL. r=android-reviewers,mcarare"
    },
    "D309478": {
      "author": "Ryan VanderMeulen",
      "avatar": "https://www.gravatar.com/avatar/51823ded02903fa76c961fe2a3c1318a?d=identicon\u0026s=64",
      "cl": "D309478",
      "clUrl": "https://phabricator.services.mozilla.com/D309478",
      "description": "These `import org.jetbrains.kotlin.gradle.tasks.KotlinCompile` statements are not referenced by any\nbuild script; the type is unused, so drop the dead imports.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309478",
      "email": "rvandermeulen@mozilla.com",
      "hash": "6480e5a17dde163466fdd0906740cd3ffc6eabd7",
      "subject": "Bug 2049916 - Remove unused KotlinCompile imports from android-components build files. r=android-reviewers,mcarare"
    },
    "D309479": {
      "author": "Ryan VanderMeulen",
      "avatar": "https://www.gravatar.com/avatar/51823ded02903fa76c961fe2a3c1318a?d=identicon\u0026s=64",
      "cl": "D309479",
      "clUrl": "https://phabricator.services.mozilla.com/D309479",
      "description": "AGP 9 only creates unit tests for the debug test build type, so the :testRelease tasks the\nnightly/beta/release build-components graphs ran no longer exist. Update CI's remaining unit-test\ninvocations from testRelease to test (the default build-components graph and the dependency-fetch\nscript), and for the shipping graphs drop the unit-test task entirely rather than switch it to the\ndebug variant.\n\nSwitching release jobs to :test would force them to compile the debug variant, which they\notherwise never build as part of producing shipping artifacts. It also adds no signal: the\nandroid-components unit tests already run on every push via the default graph, so re-running them\non the shipping graphs is redundant. This matches the existing include-coverage configuration,\nwhich is already default-only.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309479",
      "email": "rvandermeulen@mozilla.com",
      "hash": "4a6600e992566e40dd93bb27091b22ca10c6a837",
      "subject": "Bug 2049916 - Stop running android-components unit tests on the shipping graphs. r=android-reviewers,mcarare"
    },
    "D309480": {
      "author": "Ryan VanderMeulen",
      "avatar": "https://www.gravatar.com/avatar/51823ded02903fa76c961fe2a3c1318a?d=identicon\u0026s=64",
      "cl": "D309480",
      "clUrl": "https://phabricator.services.mozilla.com/D309480",
      "description": "AGP 9 flips the default of android.dependency.useConstraints from true to false, so it no longer\nconstrains the androidTest compile classpath to the versions resolved on the androidTest runtime\nclasspath. Fenix pulls hamcrest 2.2 in transitively through espresso-contrib -\u003e\naccessibility-test-framework, but that is runtime-scoped, so it only reaches the runtime classpath.\nThe compile classpath therefore resolves the older hamcrest-core/hamcrest-library 1.3 (from junit and\nespresso). Under AGP 8 the constraint hid this by aligning compile to 2.2.\n\nThe result is a compile/runtime skew: instrumented-test code such as CoreMatchers.allOf(a, b) compiles\nagainst hamcrest 1.3's explicit two-argument allOf overload, which does not exist in the 2.2 runtime\n(varargs only), so the tests fail at runtime with NoSuchMethodError.\n\nConstrain hamcrest-core and hamcrest-library to 2.2 on androidTestImplementation so the compile\nclasspath matches runtime. Scoping it to androidTestImplementation leaves the unit-test classpath\nuntouched. Focus is unaffected: it does not depend on espresso-contrib and resolves hamcrest\nconsistently at 1.3.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309480",
      "email": "rvandermeulen@mozilla.com",
      "hash": "d18b7b4eae2fa0e68407b990ce39c7132f2abc9a",
      "subject": "Bug 2049916 - Pin hamcrest to 2.2 on the Fenix instrumented-test compile classpath. r=android-reviewers,mcarare"
    },
    "D309481": {
      "author": "Ryan VanderMeulen",
      "avatar": "https://www.gravatar.com/avatar/51823ded02903fa76c961fe2a3c1318a?d=identicon\u0026s=64",
      "cl": "D309481",
      "clUrl": "https://phabricator.services.mozilla.com/D309481",
      "description": "Lint 32 (bundled with AGP 9) reports pre-existing GeckoView lint findings that the android-lint task\nnow surfaces, most notably 37 new ThreadConstraint errors from its inter-procedural analysis. Most of\nthose are limitations of the check rather than defects - the @UiThread call is dispatched through\nThreadUtils.runOnUiThread(...) or made inside a UI-thread-bound GeckoResult callback, neither of which\nlint can model. A few are genuine pre-existing @AnyThread/@UiThread annotation inconsistencies\n(for example the @AnyThread delegate setters reach @UiThread GeckoSession.isOpen() through\nGeckoSessionHandler.setDelegate), but they are left for a separate GeckoView follow-up.\n\nRecord the existing findings in a lint baseline so the AGP 9 upgrade is not blocked, while leaving the\nchecks enabled so they still flag new violations.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309481",
      "email": "rvandermeulen@mozilla.com",
      "hash": "a9412e412b4066797ce4ec3e5c164e9c193a4616",
      "subject": "Bug 2049916 - Baseline GeckoView's existing lint findings. r=android-reviewers,mcarare"
    },
    "D309482": {
      "author": "Ryan VanderMeulen",
      "avatar": "https://www.gravatar.com/avatar/51823ded02903fa76c961fe2a3c1318a?d=identicon\u0026s=64",
      "cl": "D309482",
      "clUrl": "https://phabricator.services.mozilla.com/D309482",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309482",
      "email": "rvandermeulen@mozilla.com",
      "hash": "7752fe0e39840ad35e9924f4304152f30bc1c124",
      "subject": "Bug 2049916 - Refresh AC, Fenix, and Focus lint baselines. r=android-reviewers,mcarare"
    },
    "D309483": {
      "author": "Ryan VanderMeulen",
      "avatar": "https://www.gravatar.com/avatar/51823ded02903fa76c961fe2a3c1318a?d=identicon\u0026s=64",
      "cl": "D309483",
      "clUrl": "https://phabricator.services.mozilla.com/D309483",
      "description": "Also migrate the apilint plugin's docletJar configuration off the `creating`\ndelegate API, which Gradle 9.6 deprecates, to configurations.create().\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309483",
      "email": "rvandermeulen@mozilla.com",
      "hash": "0a28504065b03b09220b4c32ae96952ea63d3245",
      "subject": "Bug 2043922 - Update Gradle to version 9.6.1. r=android-reviewers,mcarare"
    },
    "D309485": {
      "author": "Timothy Nikkel",
      "avatar": "https://www.gravatar.com/avatar/0646a42110a02dd585f200f270716852?d=identicon\u0026s=64",
      "cl": "D309485",
      "clUrl": "https://phabricator.services.mozilla.com/D309485",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309485",
      "email": "tnikkel@gmail.com",
      "hash": "630899571ab77c81ad6f4a6b98073489f16234c9",
      "subject": "Bug 2051455. Mark CSS2/stacking-context/opacity-change-twice-stacking-context.html as fuzzy expected pass. r=layout-reviewers,emilio"
    },
    "D309489": {
      "author": "Timothy Nikkel",
      "avatar": "https://www.gravatar.com/avatar/0646a42110a02dd585f200f270716852?d=identicon\u0026s=64",
      "cl": "D309489",
      "clUrl": "https://phabricator.services.mozilla.com/D309489",
      "description": "These are all tests that I created, except for bitdepth-12bpc-reftest.html where I bumped the existing fuzz slightly.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309489",
      "email": "tnikkel@gmail.com",
      "hash": "f4e6e71e9c4deb3818880f2c8a22de09a92955ce",
      "subject": "Bug 2051460. Move fuzz from implementation specific to the test in some jxl tests. r=gfx-reviewers,lsalzman"
    },
    "D309494": {
      "author": "Nina Pypchenko",
      "avatar": "https://www.gravatar.com/avatar/d4af23165fd08129f80a4a6aef515048?d=identicon\u0026s=64",
      "cl": "D309494",
      "clUrl": "https://phabricator.services.mozilla.com/D309494",
      "description": "The Sports widget's Now tab now shows the current phase of the live match (Halftime, Extra time, Penalty shootout) below the score in the Large widget.\n\nDuring a live penalty shootout, the score pill on the Now tab now also shows the running shootout score in parentheses on either side of the main score, in both Medium and Large widgets.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309494",
      "email": "npypchenko@mozilla.com",
      "hash": "24e52d9437e3fc676335893e579624458bc34789",
      "subject": "Bug 2051457 - Sports widget: the \"Now\" tab missing live sub-state labels and live shootout score in the pill r=reemhamz"
    },
    "D309510": {
      "author": "Updatebot",
      "avatar": "https://www.gravatar.com/avatar/cd270ac15e761e2d4c08e9c9b7cfecca?d=identicon\u0026s=64",
      "cl": "D309510",
      "clUrl": "https://phabricator.services.mozilla.com/D309510",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309510",
      "email": "updatebot@mozilla.com",
      "hash": "1af01307f7f6f1022109b30eb4baf8d3a3da3ff2",
      "subject": "Bug 2051490 - Update PDF.js to 25eae30e4e23b89457b9d5b3166e97f75eef488c r=pdfjs-reviewers,calixte"
    },
    "D309511": {
      "author": "Mugurell",
      "avatar": "https://www.gravatar.com/avatar/3ad7e9b38bc893c28662af783f35cf2b?d=identicon\u0026s=64",
      "cl": "D309511",
      "clUrl": "https://phabricator.services.mozilla.com/D309511",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309511",
      "email": "Mugurell@users.noreply.github.com",
      "hash": "4b584e015e336cd964ba32ae9ec491c3755108a3",
      "subject": "Bug 2051489 - Render the home wallpaper behind ime height padded content r=android-reviewers,pollymce"
    },
    "D309512": {
      "author": "Gabriel Luong",
      "avatar": "https://www.gravatar.com/avatar/8d4b3dd6d3dd0178956876e108d984c6?d=identicon\u0026s=64",
      "cl": "D309512",
      "clUrl": "https://phabricator.services.mozilla.com/D309512",
      "description": "- A translated page can never also be a PDF or in reader view, so the DISABLED state in the isTranslated branch was unreachable.\n- Only use the ACTIVE state for the translated menu item and its badge.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309512",
      "email": "gabriel.luong@gmail.com",
      "hash": "bb7eb4dacdbf17ac4ac64d25b82b4a616baed4a0",
      "subject": "Bug 2009633 - Clean up unnecessary logic in TranslationMenuItem r=android-reviewers,adhingra"
    },
    "D309513": {
      "author": "Jens Stutte",
      "avatar": "https://www.gravatar.com/avatar/9dcff4a8838b41f34d204c2f4cadbcc4?d=identicon\u0026s=64",
      "cl": "D309513",
      "clUrl": "https://phabricator.services.mozilla.com/D309513",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309513",
      "email": "jstutte@mozilla.com",
      "hash": "728750bed8d0af05235876247e202ab2c5b3ebc4",
      "subject": "Bug 2051106 - Snapshot pref notification callbacks by strong reference. r=gstoll"
    },
    "D309523": {
      "author": "Francesco Lodolo",
      "avatar": "https://www.gravatar.com/avatar/b8faeedf9e5da17e6d0da433d0396b42?d=identicon\u0026s=64",
      "cl": "D309523",
      "clUrl": "https://phabricator.services.mozilla.com/D309523",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309523",
      "email": "flod@lodolo.net",
      "hash": "22c05c2eb5ec9dc7531587161d31cbc156acdb1f",
      "subject": "Bug 2051499 - Fix Smart Window strings before exposing for localization, r=flozia"
    },
    "D309541": {
      "author": "Nicolas Chevobbe",
      "avatar": "https://www.gravatar.com/avatar/f942478f2eaeb6cc42142cdd661976a7?d=identicon\u0026s=64",
      "cl": "D309541",
      "clUrl": "https://phabricator.services.mozilla.com/D309541",
      "description": "Use font-variant-numeric: tabular-nums for the cursor information fixes it.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309541",
      "email": "nchevobbe@mozilla.com",
      "hash": "be596da7d686e5aa89b7af6aa2acf9d1df8dca23",
      "subject": "Bug 2051517 - [devtools] Fix jumpiness in editor footer caused by cursor position. r=devtools-reviewers,bomsy."
    },
    "D309561": {
      "author": "Ryan Curran",
      "avatar": "https://www.gravatar.com/avatar/d0a37fafe20f8303f2651aadd8129247?d=identicon\u0026s=64",
      "cl": "D309561",
      "clUrl": "https://phabricator.services.mozilla.com/D309561",
      "description": "The previous skip used skip_if_no_user_session (launchctl print gui/\u003cuid\u003e),\nbut the macOS VM workers run cltbld in a logged-in Aqua session to render\ntests, so that launchd domain exists, the check returned False, and the skip\nnever fired -- the test kept failing intermittently (classified for bug\n1989258).\n\nThese headless VM workers also run a WindowServer and report a framebuffer,\nso by capability they are indistinguishable from bare metal; only the\nhardware model identifies them. Detect the VM directly via\n`sysctl -n hw.model` starting with \"VirtualMac\", and rename\nskip_if_no_user_session -\u003e skip_if_macos_vm (helper -\u003e _running_on_macos_vm).\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309561",
      "email": "rcurran@mozilla.com",
      "hash": "64efd68db913a39272413cbe8fa0d87062dd038d",
      "subject": "Bug 2048072 - Skip test_switch_tabs_for_new_background_window_without_focus_change by detecting the macOS VM, not a GUI session r=whimboo"
    },
    "D309576": {
      "author": "Michael Kaply",
      "avatar": "https://www.gravatar.com/avatar/dc84c7d304a23e0a62a86580dd08c587?d=identicon\u0026s=64",
      "cl": "D309576",
      "clUrl": "https://phabricator.services.mozilla.com/D309576",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309576",
      "email": "mozilla@kaply.com",
      "hash": "facecae672a1aff5036c7cf0e641879eb66c974a",
      "subject": "Bug 2046456 - Use an observer for policy _cleanup test notifications instead of console.log. r=jmendez"
    },
    "D309579": {
      "author": "Emilio Cobos Álvarez",
      "avatar": "https://www.gravatar.com/avatar/1d91d22a4892f16f744b31fd4286144e?d=identicon\u0026s=64",
      "cl": "D309579",
      "clUrl": "https://phabricator.services.mozilla.com/D309579",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309579",
      "email": "emilio@crisal.io",
      "hash": "b6c6801c304f11414afbda4c9f76f614bd5f8f55",
      "subject": "Bug 2051586 - Properly propagate null env vars to the toolbox. r=devtools-reviewers,ochameau"
    },
    "D309584": {
      "author": "Ania Safko",
      "avatar": "https://www.gravatar.com/avatar/58fd6a2bde43e1b553dcab4bfdf64166?d=identicon\u0026s=64",
      "cl": "D309584",
      "clUrl": "https://phabricator.services.mozilla.com/D309584",
      "description": "The sidebar.link labeled_counter is recorded by all three sidebar panels\n(Bookmarks, History, Synced Tabs), but its description only mentioned\nHistory. Update the description to enumerate all three labels so the\nGlean dictionary reflects what the metric actually captures.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309584",
      "email": "asafko@mozilla.com",
      "hash": "c30016fc353f10509265caf2c5eac64f952660d5",
      "subject": "Bug 2042861 - Fix description of sidebar.link metric to reflect all three labels r=nsharpley DONTBUILD"
    },
    "D309587": {
      "author": "John Bieling",
      "avatar": "https://www.gravatar.com/avatar/48839c54f769c8c451d0f0e4f852eed4?d=identicon\u0026s=64",
      "cl": "D309587",
      "clUrl": "https://phabricator.services.mozilla.com/D309587",
      "description": "Bug 2046258 made nsIPKCS11Token.login() asynchronous (it now takes a\nJSContext and returns a Promise) and updated the Firefox callers, but\nmissed the caller in the #ifdef MOZ_THUNDERBIRD block of\nnsXREDirProvider::DoStartup().\n\nThat caller must finish prompting for the primary password before any\nwindows open, to avoid the multiple-prompt race (bug 177175), so it\nneeds to remain synchronous. Rather than driving the async Promise,\nauthenticate the internal key slot directly with PK11_Authenticate()\n(the same call PKCS11Token::Login() ultimately makes), first obtaining\nthe NSS component so NSS is initialized this early in startup.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309587",
      "email": "john@thunderbird.net",
      "hash": "42a764fc9d5906055abe59ddf394547745625510",
      "subject": "Bug 2051597 - Adapt the MOZ_THUNDERBIRD master-password prompt in nsXREDirProvider for the async nsIPKCS11Token.login(). r=keeler,thunderbird-reviewers,edicharry"
    },
    "D309602": {
      "author": "Ryan VanderMeulen",
      "avatar": "https://www.gravatar.com/avatar/51823ded02903fa76c961fe2a3c1318a?d=identicon\u0026s=64",
      "cl": "D309602",
      "clUrl": "https://phabricator.services.mozilla.com/D309602",
      "description": "The service-sync module (added in this bug) applied org.jetbrains.kotlin.android via the imperative\napply syntax. AGP 9 (bug 2049916, recently landed) removes that plugin in favor of built-in Kotlin\nand fails the build when it is applied. Move the module to the plugins DSL to match the rest of\nandroid-components.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309602",
      "email": "rvandermeulen@mozilla.com",
      "hash": "b416ca916a6cff6773930ea48d13b9b29affeba9",
      "subject": "Bug 2051360 - Migrate service-sync to built-in Kotlin so it builds under AGP 9. r=bustage"
    },
    "be3508952608": {
      "author": "pstanciu",
      "avatar": "https://www.gravatar.com/avatar/cd361de239f63fe1459e93f742450a3d?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit ac27f370c97a359ab3f8a10671474548209e72ea.",
      "email": "pstanciu@mozilla.com",
      "hash": "be35089526084a0dcf4ce887c3a14f09a6e019df",
      "subject": "Revert \"Bug 2047653 - Add a dropdown for switching sidebar panels when sidebar.revamp is true r=fluent-reviewers,sclements,echa,bolsson,firefox-desktop-core-reviewers\" for causing mochitests failures @ browser_resize_sidebar.js"
    },
    "c681e91369f5": {
      "author": "Serban Stanca",
      "avatar": "https://www.gravatar.com/avatar/977312186062f329a7e4302ab972ae7b?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit fbdc7c9cdcca31aefda6014e22e798485135eb78.",
      "email": "sstanca@mozilla.com",
      "hash": "c681e91369f59d0efae43bdc465872b855e8b269",
      "subject": "Revert \"Bug 2048027 - Add no_connectivity, captive_portal_state, and trr_only to load_aboutneterror - r=rking\" for causing mochitests failures in test_aboutCrashed.xhtml."
    },
    "d7bb8e405d07": {
      "author": "Serban Stanca",
      "avatar": "https://www.gravatar.com/avatar/977312186062f329a7e4302ab972ae7b?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit d2f32735c3edb6ae9b3a92fc5e3b2b8cbe20f86e.",
      "email": "sstanca@mozilla.com",
      "hash": "d7bb8e405d07f72657974bd65bc142e91b1e4d16",
      "subject": "Revert \"Bug 2049593 - Obsolete client.py as a mean to update nss and nspr r=sylvestre\" for causing python failures."
    },
    "dd3399add913": {
      "author": "Silaghi",
      "avatar": "https://www.gravatar.com/avatar/81acf29bb88b2a0ded61f47b93c59dea?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 42b8bc1912963a75f21a826fb097fc50be79d2f1.\n\nRevert \"Bug 2048824 - Post: Remove unused `aCheckOnly` parameter on `pinCurrentAppToStartMenuAsync`. r=handyman\"\n\nThis reverts commit 6116bcc74df11940a0cef7c5303c658cab1c4a76.\n\nRevert \"Bug 2048824 - Reduce scope of taskbar pin check to verifying whether the necessary APIs are available, removing the \"check only\" flag. r=handyman,omc-reviewers,sachung\"\n\nThis reverts commit b0cd40a86bff29ff674d5dbf23635b204dde2ebf.\n\nRevert \"Bug 2034609 - Remove remaining unnecessary STA initialization from nsWindowsShellService. r=win-reviewers,handyman\"\n\nThis reverts commit 3948d74e5376eb24f644e9ec0dd8eb42f319b0ee.\n\nRevert \"Bug 1977202 - Post: Autoformat, dos2unix, and comment cleanup. r=dmcintosh\"\n\nThis reverts commit c923c22da33b68213bdfc57a88bd8f24d25225ee.\n\nRevert \"Bug 1977202 - Migrate Windows pinning to async Rust API. r=handyman\"\n\nThis reverts commit ea11cb944da456f126369fa4aad1c1dddcd52977.\n\nRevert \"Bug 1977202 - Pre 3: Generalize Glean's use of xpc::IsInAutomation into the xpcom crate. r=chutten\"\n\nThis reverts commit 36fbe8f595955b6d61c0a2cf32c7078c36db6ec8.\n\nRevert \"Bug 1977202 - Pre 2: Add async wrapper for nsITimer. r=saschanaz\"\n\nThis reverts commit 9387902412ea1cb557ae64a320b9d3fda82d0969.\n\nRevert \"Bug 1977202 - Pre 1: Expose DOM Promise reject with nsresult API for Rust and extend Rust Promise to allow resolving with undefined or rejecting with nsresult. r=xpcom-reviewers,emilio\"\n\nThis reverts commit 61bc1613748cc81c84c40621d6ed297d5a1a4f38.",
      "email": "asilaghi@mozilla.com",
      "hash": "dd3399add913c24ea95709c3c23089a0724c83bf",
      "subject": "Revert \"Bug 2048854, Bug 2034609, Bug 1977202, - Clean up redundant `...Async` naming and comments in and around `nsIWindowsShellService`. r=hsohaney,omc-reviewers,sachung\""
    },
    "ded7c9a0c335": {
      "author": "Nicholas Poon",
      "avatar": "https://www.gravatar.com/avatar/de8191595cff0507f38ca784b6613551?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "Pull request: https://github.com/mozilla-firefox/firefox/pull/309",
      "email": "npoon@mozilla.com",
      "hash": "ded7c9a0c3357900ca850f584916a91c33f08ebf",
      "subject": "Bug 2035772 - Add vertical scroll modifier to Page Summaries Settings Screen r=matt-tighe"
    },
    "df8598bfd2d3": {
      "author": "Alexandru Marc",
      "avatar": "https://www.gravatar.com/avatar/f90e8bfbc9c1383d73053a8809b77e48?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "",
      "email": "amarc@mozilla.com",
      "hash": "df8598bfd2d30277a4d4631de8052ff135dbaeca",
      "subject": "Bug 2050098 - update metadata for mousemove-action-interpolation.html.ini"
    },
    "e2ca4aaa0647": {
      "author": "Silaghi",
      "avatar": "https://www.gravatar.com/avatar/81acf29bb88b2a0ded61f47b93c59dea?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 182897a71dfa2e33afe97b9be851882e20659663.",
      "email": "asilaghi@mozilla.com",
      "hash": "e2ca4aaa06474ac68e796023da083cc7e8ad4a1f",
      "subject": "Revert \"Bug 2048648 - Added Mailto default handler targeting, update trigger, and specialMessageAction. r=omc-reviewers,emcminn,aminomancer\" for causing bc test failures at asrouter_targeting.js"
    },
    "eb99a12697e7": {
      "author": "pstanciu",
      "avatar": "https://www.gravatar.com/avatar/cd361de239f63fe1459e93f742450a3d?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 5c0ebc3bf96e8cc5dc4b265e4e1c87b222183aff.\n\nRevert \"Bug 2049310 - Add moz-WPT for fractional gUM framerate decimation. r=jib\"\n\nThis reverts commit 5f6ac9a4251d014107685bc45bfc637ba0a497db.",
      "email": "pstanciu@mozilla.com",
      "hash": "eb99a12697e7f420984555c7a18a43eb80bf56d1",
      "subject": "Revert \"Bug 2049310 - Do fractional framerate decimation for cameras to reach requested rate on average. r=jib\" for causing wpt failures @ getUserMedia-framerate-decimation.https.html"
    },
    "ee5fc2e1ef8c": {
      "author": "pstanciu",
      "avatar": "https://www.gravatar.com/avatar/cd361de239f63fe1459e93f742450a3d?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit f37be02e7cb91c6a0f79d8da4055fdae25ca4981.",
      "email": "pstanciu@mozilla.com",
      "hash": "ee5fc2e1ef8ca30f043c53e8cc7872667ef59ef9",
      "subject": "Revert \"Bug 2051196 - Add a global [hidden] { display: none !important } rule instead of :not([hidden]) display guards r=desktop-theme-reviewers,emilio\" for causing mochitests failures @ browser_webconsole_location_logpoint_debugger_link.js"
    }
  },
  "date": "2026-06-30",
  "days": 1,
  "generatedAt": "2026-06-30T22:06:42Z",
  "markdown": "## Highlights\n- **Web Platform** CSS Typed OM is now enabled by default in Nightly, putting low-level typed CSS values directly in reach for web app code and standards testing. [Phab D309238](https://phabricator.services.mozilla.com/D309238)\n- **Security** Firefox now validates principals in external URI loads, tightening a sensitive browser process boundary. [Phab D309362](https://phabricator.services.mozilla.com/D309362)\n- **Security** Cross-thread worker request handling got a synchronization fix for a use-after-free, closing off a nasty lifetime bug in worker plumbing. [Phab D307211](https://phabricator.services.mozilla.com/D307211)\n- **Rendering** WebRender pushed more picture and blend-filter work onto the quad path, a meaningful step toward simpler and faster rendering on transformed content. [Phab D308130](https://phabricator.services.mozilla.com/D308130)\n- **Networking** Service worker checks now gate relevant network behavior, improving correctness around active SW-controlled loads. [Phab D295439](https://phabricator.services.mozilla.com/D295439)\n- **DevTools** DevTools now exposes request and response body size limits in Settings, making large payload debugging less opaque. [Phab D301571](https://phabricator.services.mozilla.com/D301571)\n- **Security** Lockwise storage replaced its PBKDF2 implementation with NSS, reducing custom crypto surface in password handling. [Phab D308761](https://phabricator.services.mozilla.com/D308761)\n- **Media** Windows HDR video conversion now uses a D3D11 shader path, which should improve efficiency on HDR playback workloads. [Phab D300497](https://phabricator.services.mozilla.com/D300497)\n- **Mobile** Android Nightly now enables Google Lens by default, expanding visual search entry points in the browser UI. [Phab D309097](https://phabricator.services.mozilla.com/D309097)\n- **Build** Android moved further into the AGP 9 and built-in Kotlin transition, a broad build-system update touching GeckoView, Android Components, Fenix, and Focus. [Phab D309476](https://phabricator.services.mozilla.com/D309476)\n\n## What landed by area\n\n### Web Platform and DOM\n- **Web Platform** Active pseudo activation moved to the pointerdown handler to better match platform interaction timing, though it was later reverted after WPT fallout. [Phab D308750](https://phabricator.services.mozilla.com/D308750)\n- **Web Platform** CSSNumericValue.parse() now accepts additional numeric forms, broadening Typed OM parsing coverage. [Phab D309251](https://phabricator.services.mozilla.com/D309251)\n- **Web Platform** New WPT coverage landed for the expanded CSSNumericValue.parse() value support. [Phab D309250](https://phabricator.services.mozilla.com/D309250)\n- **Web Platform** Device sensor code was split into its own class, a cleanup that should make orientation feature behavior easier to reason about. [Phab D306984](https://phabricator.services.mozilla.com/D306984)\n- **Privacy** Firefox no longer enables the rotation vector for deviceorientation events, reducing sensor exposure. [Phab D306985](https://phabricator.services.mozilla.com/D306985)\n- **Web Platform** IMEContentObserver is no longer reused across designMode flips, fixing an editor state edge case. [Phab D309246](https://phabricator.services.mozilla.com/D309246)\n- **Web Platform** Sanitizer web-platform-tests were updated, keeping conformance coverage current. [Phab D309347](https://phabricator.services.mozilla.com/D309347)\n- **Web Platform** Mousemove action interpolation test metadata was updated for expected behavior tracking. [bug 2050098](https://bugzilla.mozilla.org/show_bug.cgi?id=2050098)\n\n### Rendering, Graphics, and Printing\n- **Rendering** Source-masked pictures and blits were ported to the quad path in WebRender. [Phab D308129](https://phabricator.services.mozilla.com/D308129)\n- **Rendering** Non-masked pictures with non-axis-aligned transforms now use quads too, extending the new path to harder cases. [Phab D308128](https://phabricator.services.mozilla.com/D308128)\n- **Rendering** Quad shader primitive coverage representation was changed, part of the same rendering pipeline modernization. [Phab D308509](https://phabricator.services.mozilla.com/D308509)\n- **Rendering** VT snapshots are now snapped consistently, reducing rendering instability in those captures. [Phab D309316](https://phabricator.services.mozilla.com/D309316)\n- **Rendering** A CSS2 stacking-context test was marked fuzzy-expected-pass to account for known rendering variance. [Phab D309485](https://phabricator.services.mozilla.com/D309485)\n- **GPU** AndroidImageReader::UpdateTexImage() now uses gfx::SurfaceFormat::R8G8B8X8. [Phab D309314](https://phabricator.services.mozilla.com/D309314)\n- **Media** JPEG XL test fuzz expectations were moved out of implementation-specific paths and into the tests themselves. [Phab D309489](https://phabricator.services.mozilla.com/D309489)\n- **UI** PrintTargetSkPDF::Finish now behaves consistently with PrintTargetPDF::Finish. [Phab D309467](https://phabricator.services.mozilla.com/D309467)\n\n### Networking, Storage, and Downloads\n- **Networking** Prefetch load events now only fire from cache when the underlying channel actually succeeded. [Phab D309369](https://phabricator.services.mozilla.com/D309369)\n- **Networking** Firefox switched to a 204-returning captive portal endpoint, though that rollout also triggered a temporary revert during test triage. [Phab D209782](https://phabricator.services.mozilla.com/D209782)\n- **Networking** about:neterror gained no_connectivity, captive_portal_state, and trr_only fields for richer error-page state, though that too saw a quick revert for test failures. [Phab D307895](https://phabricator.services.mozilla.com/D307895)\n- **Networking** Download code can now decode Content-Encoding even when the file extension matches the encoding, behind a pref. [Phab D306699](https://phabricator.services.mozilla.com/D306699)\n- **Networking** An intervention was extended to https://test-connectivity.riverside.fm for webcompat. [Phab D309464](https://phabricator.services.mozilla.com/D309464)\n- **Refactor** IndexedDB landed state machine enhancements, continuing internal cleanup in storage control flow. [Phab D309302](https://phabricator.services.mozilla.com/D309302)\n- **Refactor** A shutdown-time assert in storage code was relaxed to avoid a known teardown edge case. [Phab D306395](https://phabricator.services.mozilla.com/D306395)\n\n### Security, Crypto, and Identity\n- **Security** NSS key creation now uses PK11_CreatePrivateKeyFromTemplate instead of a generic object plus FindKeyByKeyID workaround. [Phab D306631](https://phabricator.services.mozilla.com/D306631)\n- **Security** The Thunderbird master-password prompt path in nsXREDirProvider was adapted for async nsIPKCS11Token.login(). [Phab D309587](https://phabricator.services.mozilla.com/D309587)\n- **Security** Passport fields detection was added to form and login handling. [Phab D308525](https://phabricator.services.mozilla.com/D308525)\n- **Security** Pref notification callbacks are now snapshotted by strong reference, preventing callback lifetime hazards. [Phab D309513](https://phabricator.services.mozilla.com/D309513)\n- **Refactor** Several pref-trie audit fixes narrowed observer registrations to exact prefs or documented ambiguous prefixes across PDF.js, browser chrome, Necko, extensions, and DevTools. [Phab D305888](https://phabricator.services.mozilla.com/D305888)\n- **Refactor** Browser chrome pref observers were annotated during the same pref-trie audit pass. [Phab D305885](https://phabricator.services.mozilla.com/D305885)\n- **Refactor** chrome-settings-overrides now reacts only to the exact homepage pref. [Phab D305884](https://phabricator.services.mozilla.com/D305884)\n- **Refactor** The browser toolbox launcher now reacts only to the exact devtools.debugger.log pref. [Phab D305882](https://phabricator.services.mozilla.com/D305882)\n- **Refactor** Necko pref observers were annotated for ambiguous prefix handling as well. [Phab D305881](https://phabricator.services.mozilla.com/D305881)\n\n### DevTools, Testing, and Tooling\n- **DevTools** Requests with no content now show a truncated warning where appropriate. [Phab D301570](https://phabricator.services.mozilla.com/D301570)\n- **DevTools** Request and request-body size limits were unified behind a single preference. [Phab D301569](https://phabricator.services.mozilla.com/D301569)\n- **DevTools** Target and thread configurations now support all preference types. [Phab D301568](https://phabricator.services.mozilla.com/D301568)\n- **DevTools** Null environment variables are now propagated correctly into the Browser Toolbox. [Phab D309579](https://phabricator.services.mozilla.com/D309579)\n- **DevTools** Toolbox launching now requests an XDG activation token on Linux desktops. [Phab D309473](https://phabricator.services.mozilla.com/D309473)\n- **DevTools** The editor footer no longer jumps around when cursor position updates. [Phab D309541](https://phabricator.services.mozilla.com/D309541)\n- **Testing** xpcshell can now dump and report a profile when a test is about to time out. [Phab D308521](https://phabricator.services.mozilla.com/D308521)\n- **Testing** A new profiler API can dump profiles off the main thread after a deadline. [Phab D308520](https://phabricator.services.mozilla.com/D308520)\n- **Testing** WebDriver leakcheck failures were temporarily ignored to deflake infrastructure. [Phab D309442](https://phabricator.services.mozilla.com/D309442)\n- **Testing** mozscreenshots now captures and uploads screenshots whenever an upload directory exists. [Phab D309408](https://phabricator.services.mozilla.com/D309408)\n- **Testing** mozscreenshots screen capture was fixed on macOS. [Phab D309409](https://phabricator.services.mozilla.com/D309409)\n- **Testing** Test tasks gained per-platform Taskcluster index routes. [Phab D309410](https://phabricator.services.mozilla.com/D309410)\n- **Testing** mozscreenshots jobs now run on Windows and macOS too. [Phab D309411](https://phabricator.services.mozilla.com/D309411)\n- **Testing** Update integrity tests stopped hardcoding channel and app name. [Phab D309403](https://phabricator.services.mozilla.com/D309403)\n\n### Android and Mobile\n- **Mobile** The home wallpaper now renders behind IME-height-padded content, smoothing layout when the keyboard is open. [Phab D309511](https://phabricator.services.mozilla.com/D309511)\n- **Mobile** Firefox for Android got a FloatingActionButton variant that accepts a custom icon composable. [Phab D309056](https://phabricator.services.mozilla.com/D309056)\n- **Mobile** WebCompat Reporter v3 now requires a description when users pick \"Something else\". [Phab D306809](https://phabricator.services.mozilla.com/D306809)\n- **Mobile** TranslationMenuItem had unnecessary logic cleaned out. [Phab D309512](https://phabricator.services.mozilla.com/D309512)\n- **Mobile** The Menu CFR was removed. [Phab D309438](https://phabricator.services.mozilla.com/D309438)\n- **Mobile** The crashed-tab UI checkbox for \"submit crash report to Mozilla\" was fixed. [Phab D309341](https://phabricator.services.mozilla.com/D309341)\n- **Mobile** VPN entitlement checks no longer short-circuit for unauthenticated users. [Phab D309214](https://phabricator.services.mozilla.com/D309214)\n- **Mobile** Tab Groups gained Glean telemetry for metadata and editing interactions. [Phab D301300](https://phabricator.services.mozilla.com/D301300)\n- **Mobile** The Tab Manager composables were hardened for stability. [Phab D308677](https://phabricator.services.mozilla.com/D308677)\n- **Mobile** Page Summaries Settings got vertical scroll support. [bug 2035772](https://bugzilla.mozilla.org/show_bug.cgi?id=2035772)\n- **Mobile** Service-sync module scaffolding landed ahead of broader sync work. [Phab D309421](https://phabricator.services.mozilla.com/D309421)\n- **Refactor** SyncEngine and SyncConfig moved into sync-concept. [Phab D309103](https://phabricator.services.mozilla.com/D309103)\n\n### Firefox Desktop UI, A11y, and Feature Work\n- **A11y** Reorderable moz-box-group elements got missing high-contrast mode styles. [Phab D307445](https://phabricator.services.mozilla.com/D307445)\n- **UI** Autocomplete row icons were reduced in size for a tighter suggestion list. [Phab D309433](https://phabricator.services.mozilla.com/D309433)\n- **UI** The onboarding checklist progress bar now runs in the correct direction in RTL locales. [Phab D308565](https://phabricator.services.mozilla.com/D308565)\n- **UI** Menu items had a selected-color fix. [Phab D309124](https://phabricator.services.mozilla.com/D309124)\n- **UI** Easy Setup screens dropped the import checkbox and now always allow embedded import to show. [Phab D309131](https://phabricator.services.mozilla.com/D309131)\n- **UI** Containers can now expose an \"add new container\" action directly from the context menu. [Phab D306762](https://phabricator.services.mozilla.com/D306762)\n- **UI** Sidebar revamp work added a dropdown for switching sidebar panels, though it was reverted after mochitest failures. [Phab D306821](https://phabricator.services.mozilla.com/D306821)\n- **UI** Smart Window strings were adjusted before localization exposure, then reverted for a follow-up fix. [Phab D309523](https://phabricator.services.mozilla.com/D309523)\n- **A11y** VoiceOver can now reach the edit-remove action in World Clock. [Phab D301435](https://phabricator.services.mozilla.com/D301435)\n- **UI** Focus Timer widget transitions between focus and break states were made reliable. [Phab D309323](https://phabricator.services.mozilla.com/D309323)\n- **UI** Sports widget now shows live sub-state labels and live shootout score in the \"Now\" pill. [Phab D309494](https://phabricator.services.mozilla.com/D309494)\n- **UI** Wallpaper feature highlights gained a semi-finals variant. [Phab D308600](https://phabricator.services.mozilla.com/D308600)\n- **UI** Highlight CTAs can now deep-link directly into the Firefox wallpaper category. [Phab D309415](https://phabricator.services.mozilla.com/D309415)\n- **UI** A global [hidden] display:none rule replaced scattered :not([hidden]) guards, though it was reverted after browser chrome fallout. [Phab D309290](https://phabricator.services.mozilla.com/D309290)\n\n### Media, Audio, and Capture\n- **Media** getUserMedia gained fractional framerate decimation to hit requested rates on average, but the rollout was reverted after WPT failures. [Phab D308788](https://phabricator.services.mozilla.com/D308788)\n- **Media** Moz-specific WPT coverage was added for the fractional getUserMedia framerate decimation work. [Phab D308787](https://phabricator.services.mozilla.com/D308787)\n- **Media** PDMFactorySupport no longer holds its mutex while registering invalidation listeners, reducing lock contention risk. [Phab D309392](https://phabricator.services.mozilla.com/D309392)\n- **Media** A non-null mAudioStream assert was removed from SetCubebStreamName(). [Phab D305795](https://phabricator.services.mozilla.com/D305795)\n\n### JavaScript, Platform Internals, and Build\n- **Perf** JitcodeGlobalTable BaselineEntry registration is now skipped when Gecko profiler instrumentation is disabled. [Phab D309092](https://phabricator.services.mozilla.com/D309092)\n- **Refactor** A comment now explicitly documents that isNumberRepresentable returns false for NaN. [Phab D309391](https://phabricator.services.mozilla.com/D309391)\n- **Build** service-sync was migrated to built-in Kotlin so it builds under AGP 9. [Phab D309602](https://phabricator.services.mozilla.com/D309602)\n- **Build** Gradle was updated to 9.6.1. [Phab D309483](https://phabricator.services.mozilla.com/D309483)\n- **Build** GeckoView existing lint findings were baselined. [Phab D309481](https://phabricator.services.mozilla.com/D309481)\n- **Build** AC, Fenix, and Focus lint baselines were refreshed. [Phab D309482](https://phabricator.services.mozilla.com/D309482)\n- **Build** hamcrest was pinned to 2.2 on the Fenix instrumented-test compile classpath. [Phab D309480](https://phabricator.services.mozilla.com/D309480)\n- **Build** Android Components unit tests stopped running on shipping graphs. [Phab D309479](https://phabricator.services.mozilla.com/D309479)\n- **Build** Unused KotlinCompile imports were removed from android-components build files. [Phab D309478](https://phabricator.services.mozilla.com/D309478)\n- **Build** Android module plugin application was migrated to the plugins DSL. [Phab D309477](https://phabricator.services.mozilla.com/D309477)\n- **Build** sccache now sets SCCACHE_BASEDIRS for cross-worktree caching. [Phab D304513](https://phabricator.services.mozilla.com/D304513)\n- **Build** Unused ub18 packages were removed and launchpad source URLs were dropped. [Phab D309271](https://phabricator.services.mozilla.com/D309271)\n- **Refactor** mfbt replaced std::enable_if with C++20 requires clauses. [Phab D306573](https://phabricator.services.mozilla.com/D306573)\n- **Build** CanRunScriptChecker no longer runs on third-party code. [Phab D306692](https://phabricator.services.mozilla.com/D306692)\n- **Build** mach try gained Thunderbird support, though it was also reverted after tryselect failures. [Phab D294872](https://phabricator.services.mozilla.com/D294872)\n- **Refactor** client.py was obsoleted as a way to update NSS and NSPR, then reverted after python failures. [Phab D308198](https://phabricator.services.mozilla.com/D308198)\n- **Refactor** Bug 2025350's prior change was reverted now that bug 2027871 has shipped. [Phab D301351](https://phabricator.services.mozilla.com/D301351)\n\n### Windows Integration and Sync\n- **Refactor** LoginStorageMigrator landed as part of the Rust-backed login storage path. [Phab D301566](https://phabricator.services.mozilla.com/D301566)\n- **Security** A Rust-backed logins Sync engine landed, a notable step in moving credential sync plumbing out of legacy code. [Phab D308535](https://phabricator.services.mozilla.com/D308535)\n- **Mobile** UserIdleServiceMutter got caching logic and sync wait support. [Phab D281221](https://phabricator.services.mozilla.com/D281221)\n- **UI** Windows shell service cleanup removed redundant ...Async naming and comments, though this was later reverted. [Phab D307739](https://phabricator.services.mozilla.com/D307739)\n- **UI** pinCurrentAppToStartMenuAsync dropped its unused aCheckOnly parameter. [Phab D307738](https://phabricator.services.mozilla.com/D307738)\n- **UI** Taskbar pin checking was narrowed to API availability and no longer uses a \"check only\" flag. [Phab D307737](https://phabricator.services.mozilla.com/D307737)\n- **Refactor** Remaining unnecessary STA initialization was removed from nsWindowsShellService. [Phab D296211](https://phabricator.services.mozilla.com/D296211)\n- **Refactor** Windows pinning moved to an async Rust API. [Phab D302652](https://phabricator.services.mozilla.com/D302652)\n- **Refactor** xpc::IsInAutomation was generalized into the xpcom crate for Glean and related Rust use. [Phab D308177](https://phabricator.services.mozilla.com/D308177)\n- **Refactor** nsITimer gained an async wrapper. [Phab D302651](https://phabricator.services.mozilla.com/D302651)\n- **Refactor** Rust Promise support was extended to reject with nsresult and resolve undefined cleanly. [Phab D302650](https://phabricator.services.mozilla.com/D302650)\n- **Refactor** A follow-up autoformat and cleanup pass landed for the Windows pinning work. [Phab D302653](https://phabricator.services.mozilla.com/D302653)\n\n## Reverts \u0026 Reapplies\n- **Refactor** Reverted active pseudo activation moving to pointerdown after WPT failures in select-picker-hover-active-pseudo.html. [bug 1293741](https://bugzilla.mozilla.org/show_bug.cgi?id=1293741)\n- **Mobile** Reverted removal of MOZ_ANDROID_CONTENT_SERVICE_ISOLATED_PROCESS after WebDriver failures in detect_crash.py. [bug 1977950](https://bugzilla.mozilla.org/show_bug.cgi?id=1977950)\n- **Rendering** Reverted blend filters on quads after reftest failures in jetstream-scroll-ref.html. [bug 2049363](https://bugzilla.mozilla.org/show_bug.cgi?id=2049363)\n- **Networking** Reverted the 204 captive portal endpoint rollout after xpcshell failures in test_ext_captivePortal.js. [bug 1898891](https://bugzilla.mozilla.org/show_bug.cgi?id=1898891)\n- **UI** Reverted the sidebar panel dropdown under sidebar.revamp after browser_resize_sidebar.js failures. [bug 2047653](https://bugzilla.mozilla.org/show_bug.cgi?id=2047653)\n- **UI** Reverted the Smart Window localization string fix for a requested follow-up. [bug 2051499](https://bugzilla.mozilla.org/show_bug.cgi?id=2051499)\n- **UI** Reverted the global [hidden] CSS rule after mochitest failures touching DevTools logging links. [bug 2051196](https://bugzilla.mozilla.org/show_bug.cgi?id=2051196)\n- **Media** Reverted fractional camera framerate decimation after WPT failures in getUserMedia-framerate-decimation.https.html. [bug 2049310](https://bugzilla.mozilla.org/show_bug.cgi?id=2049310)\n- **Build** Reverted obsoleting client.py after python failures. [bug 2049593](https://bugzilla.mozilla.org/show_bug.cgi?id=2049593)\n- **Networking** Reverted adding no_connectivity, captive_portal_state, and trr_only to load_aboutneterror after mochitest failures in test_aboutCrashed.xhtml. [bug 2048027](https://bugzilla.mozilla.org/show_bug.cgi?id=2048027)\n- **Build** Reverted Thunderbird support in mach try after tryselect failures. [bug 2010071](https://bugzilla.mozilla.org/show_bug.cgi?id=2010071)\n- **UI** Reverted cleanup around nsIWindowsShellService async naming and comments. [bug 2048854](https://bugzilla.mozilla.org/show_bug.cgi?id=2048854)\n- **UI** Reverted mailto default handler targeting and related specialMessageAction work after ASRouter browser-chrome failures. [bug 2048648](https://bugzilla.mozilla.org/show_bug.cgi?id=2048648)\n- **Media** Reverted the proposed loading attribute implementation for video and audio after WPT leak failures. [bug 2005072](https://bugzilla.mozilla.org/show_bug.cgi?id=2005072)\n- **DevTools** Reverted delayed JSProcess actor unregistration after recurring assertion failures tied to [bug 1756240](https://bugzilla.mozilla.org/show_bug.cgi?id=1756240). [bug 2044741](https://bugzilla.mozilla.org/show_bug.cgi?id=2044741)",
  "repo": "firefox",
  "repoDisplay": "Firefox",
  "rollGroups": [
    {
      "name": "No",
      "count": 3
    }
  ],
  "since": "2026-06-30",
  "totals": {
    "commits": 147,
    "features": 144,
    "rolls": 3
  },
  "until": "2026-06-30"
}