Skip to content

Instantly share code, notes, and snippets.

View juliandescottes's full-sized avatar

Julian Descottes juliandescottes

View GitHub Profile
@juliandescottes
juliandescottes / MARIONETTE_NOTES.md
Last active May 6, 2025 13:48
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

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().

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.
@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.

@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())
const moduleLayout = {
root: {
windowglobal: {},
contentprocess: {
worker: {},
},
},
};
@juliandescottes
juliandescottes / createmessagehandler.js
Last active April 26, 2024 22:50
createmessagehandler.js
const { RootMessageHandlerRegistry } = ChromeUtils.import(
"chrome://remote/content/shared/messagehandler/RootMessageHandlerRegistry.jsm"
);
const { RootMessageHandler } = ChromeUtils.import(
"chrome://remote/content/shared/messagehandler/RootMessageHandler.jsm"
);
const { WindowGlobalMessageHandler } = ChromeUtils.import(
"chrome://remote/content/shared/messagehandler/WindowGlobalMessageHandler.jsm"
);
# coding=UTF-8
import base64
import contextlib
import os
import pdb
import struct
import time
import urllib
from datetime import datetime
// Here goes the list of tests from the manifest, with the skip-if etc...
const tests = ``;
// JS and python don't follow the same alphabetical order for special characters
// the safest is to take the output from the linter and add it here.
const expectedOrder = ``.split("\n");
const sortTests = str => {
const lines = str.split("\n");
const tests = [];