Skip to content

Instantly share code, notes, and snippets.

View juliandescottes's full-sized avatar

Julian Descottes juliandescottes

View GitHub Profile
@juliandescottes
juliandescottes / mass_alert_acknowledge.js
Created August 23, 2021 08:41
Acknowledge alers on Perfherder UI
function getPageNumber() {
const previous = document.querySelector("[aria-label='Previous']");
return previous.closest("[aria-label*='Page']").getAttribute("aria-label").replace("Page ", "") * 1;
}
(async () => {
while (getPageNumber() > 1) {
document.querySelectorAll("[data-testid*='summary'].form-check-input").forEach(e => e.click())
await new Promise(r => setTimeout(r, 3000));
document.querySelectorAll('.btn-secondary [data-icon="check"]').forEach(e => e.parentNode.click())
@juliandescottes
juliandescottes / marionette_release_notes.md
Last active May 14, 2024 11:00
Marionette release notes

Quick guide for updating release notes for Marionette on MDN

  1. Check the bugs fixed in release RELEASE: https://bugzilla.mozilla.org/buglist.cgi?j_top=OR&f1=cf_status_firefoxRELEASE&o1=equals&resolution=FIXED&o2=equals&query_format=advanced&f2=cf_status_firefoxRELEASE&v1=fixed&component=Marionette&v2=verified&product=Testing

  2. In this bug list, find the bugs which are relevant for WebDriver users.

  3. If needed, clone the mdn/content repository (https://github.com/mdn/content).

  4. Create a branch for the release, e.g. for Release 91 you might name the branch marionette91.

Bug 1687954 - Pause on JS exceptions doesn't work properly in Fission (8)
Bug 1687963 - Debugger should properly break on debugger; keyword in remote frame (8)
Bug 1665020 - DevTools Toolbox broken when navigating cross origin (20)
Bug 1568880 - Make the inspector's search field work with remote targets (8)
Bug 1681698 - Bootstrap thread actor as soon as we start registering breakpoints via the Watcher actor (20)
Total: 64 points
Why did I prioritize this way:
I did not include the storage bugs, because this is already broken today, and not Fission related.
Also did not include most of the server-side resource support. Unless there is a huge feature broken with fission because of that I don't think it will have any user impact.

First, let's look at all the call sites that don't reassign/rename anything.

StyleRuleFront::get href()

Could be replaced be returning parentStylesheet.href in the actor's form.

StyleRuleFront::get nodeHref()

Same comment as for href().

@juliandescottes
juliandescottes / MARIONETTE_NOTES.md
Last active September 4, 2025 10:01
Marionette notes

Web Platform Tests

Update metadata

./mach wpt-update /Users/jdescottes/Development/wpt-update/

After downloading the relevant wpt-report.json files from try. Always try to take a variety of platforms (eg 1 linux 1 android, or more generally one which fails for specific conditions and a successful one).

View WPT tests differences

{
"devtools_tests": [
{
"test": "devtools/client/memory/test/xpcshell/test_individuals_05.js",
"averageRuntime": 174.97391418277104,
"runs": 3193
},
{
"test": "devtools/client/debugger/test/mochitest/browser_dbg-sourcemapped-scopes.js",
"averageRuntime": 174.76304804804806,
Main Process (pid 89180)
Explicit Allocations
1.05 MB (100.0%) -- explicit
├──0.98 MB (93.50%) -- images
│ ├──0.84 MB (80.26%) -- chrome/vector/used/progress=18f
│ │ ├──0.06 MB (05.55%) -- image(5x7, chrome://devtools/skin/images/breadcrumbs-divider.svg)
│ │ │ ├──0.05 MB (05.15%) ── source
│ │ │ └──0.00 MB (00.41%) ++ locked/types=2000/surface(5x7)
│ │ ├──0.05 MB (05.00%) -- image(16x16, chrome://devtools/skin/images/close-3-pane.svg)
                                                                ┌────────────────────────────┐                                         
 ╔═════════════════════════════════════╗                        │ domainA page               │                                         
 ║                                     ║                        │                            │                                         
 ║    LISTING REMOTE FRAMES BEFORE     ║                        │     ┌────────────────────┐ │                                         
 ║                                     ║                        │     │ domainB iframe     │ │                                         
 ╚═════════════════════════════════════╝                        │     │                    │ │                                         
                                                                │     └────────────────────┘ │                                         
                                                                └───
/Users/jdescottes/Development/hg/fx-team-artifact/devtools/client/aboutdebugging/src/actions/debug-targets.js
308:30 error Unexpected `await` inside a loop. no-await-in-loop (eslint)
/Users/jdescottes/Development/hg/fx-team-artifact/devtools/client/aboutdebugging/src/actions/runtimes.js
496:9 error Unexpected `await` inside a loop. no-await-in-loop (eslint)
514:9 error Unexpected `await` inside a loop. no-await-in-loop (eslint)
/Users/jdescottes/Development/hg/fx-team-artifact/devtools/client/accessibility/accessibility-view.js
164:24 error Unexpected `await` inside a loop. no-await-in-loop (eslint)
168:13 error Unexpected `await` inside a loop. no-await-in-loop (eslint)