Skip to content

Instantly share code, notes, and snippets.

View pascalchevrel's full-sized avatar

Pascal Chevrel pascalchevrel

View GitHub Profile
@pascalchevrel
pascalchevrel / gist:6d46dc625526ed098555686f0cade5ba
Created January 15, 2026 14:36
ChatPGT prompt to search for interesting release notes
Analyse all the bugs that landed during the 148 nightly cycle.
The goal is to identify new features and important changes and create release notes for end-users.
I am providing you a json file that contains data for all the bugs that were included during the 148 development cycle.
This JSON is an export of all the bugs from bugzilla.mozilla.org via its public API.
The bugzilla documentation for the API is here https://bmo.readthedocs.io/en/latest/api/index.html
In our release notes we have several sections:
NEW
FIXED
CHANGED
@pascalchevrel
pascalchevrel / index.php
Last active October 8, 2025 14:07
Soft code freeze email
<?php
date_default_timezone_set('UTC');
$api_endpoint = 'https://whattrainisitnow.com/api';
function convertJson(string $url): array {
return json_decode(file_get_contents($url), true);
}
$version = 'nightly';
@pascalchevrel
pascalchevrel / index.php
Last active October 8, 2025 14:07
Major releases and dot releases per owner since version 122
<?php declare(strict_types=1);
function convertJson(string $url): array {
return json_decode(file_get_contents($url), true);
}
$api_root = 'https://whattrainisitnow.com/api/';
$owners = convertJson($api_root . 'release/owners/');
$releases = convertJson($api_root . 'firefox/releases/');
$current_release = (int) explode('.', array_key_last($releases))[0];
@pascalchevrel
pascalchevrel / extract_fxios_tickets.sh
Created August 6, 2025 08:34
extract_fxios_tickets
# Function to extract the list of Jira tickets touched by commits in firefox-ios repo
# The first parameter is the commit hash of the version bump
# You can passs a folder as an optional parameter to only extract focus-ios tickets for example
extract_fxios_tickets() {
if [ -z "$1" ]; then
echo "Usage: extract_fxios_tickets <starting_commit> [path]"
return 1
fi
local start_commit="$1"
#!/usr/bin/env php
<?php
/*
PHP script to fetch Firefox Desktop and Android shipped versions from API
and output readable results to your terminal.
chmod +x this file and set it as a bash alias:
alias v="path/to/firefox_versions.php"
The output will look like this:
@pascalchevrel
pascalchevrel / backport.py
Created September 18, 2023 16:54
List backports on branch X that were not cherrypicked in branch X+1
#!/usr/bin/env python3
# usage: backports.py 117
import os
import sys
version = sys.argv[1]
# Create a list of commits not merged directly in the version +1 branch
<?php
$results = [];
foreach (range(1, 100) as $x) {
$rule = fn($y) => is_int($x / $y);
$results[] = match(true) {
$rule(15) => 'fizzbuzz',
$rule(3) => 'fizz',
$rule(5) => 'buzz',
@pascalchevrel
pascalchevrel / karma.php
Last active March 1, 2023 16:11
Uplift Karma value
<?php
declare(strict_types=1);
function getJson(string $url): array
{
$data = file_get_contents($url);
return json_decode($data, true, 512, JSON_THROW_ON_ERROR);
}
$bugs = [
@pascalchevrel
pascalchevrel / getBuilds.php
Last active December 22, 2021 23:39
Get Firefox Nightly build ids and associated revisions for a date
<?php
/*
Proof of concept.
PHP script which queries BuildHub for a date (https://buildhub.moz.tools)
and returns a json array with the Firefox Nightly build IDs for this day
as keys and the mercurial revision they were built from as values.
Documention and other scripts on querying buildhub:
- https://buildhub2.readthedocs.io/en/latest/user.html#example-is-this-an-official-build-id
- https://github.com/mozilla/crash-stop-addon/blob/master/crashstop/buildhub.py#L183
We are happy to announce that the Storage API feature is ready for testing in Firefox Nightly Desktop!
Storage API
The Storage API allows Web sites to find out how much space users can use (quota), how much they are already using (usage) and can also tell Firefox to store this data persistently and per origin. This feature is available only in secure contexts (HTTPS). You can also use Storage APIs via Web Workers.
There are plenty of APIs that can be used for storage, e.g., localStorage, IndexedDB. The data stored for a Web site managed by Storage API — which is defined by the Storage Standard specification — includes:
IndexedDB databases
Cache API data