tor-commits
Threads by month
- ----- 2026 -----
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
January 2026
- 1 participants
- 145 discussions
[Git][tpo/applications/tor-browser-build] Pushed new tag tbb-15.0.5-build1
by Pier Angelo Vendrame (@pierov) 28 Jan '26
by Pier Angelo Vendrame (@pierov) 28 Jan '26
28 Jan '26
Pier Angelo Vendrame pushed new tag tbb-15.0.5-build1 at The Tor Project / Applications / tor-browser-build
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/tree/tbb…
You're receiving this email because of your account on gitlab.torproject.org.
1
0
[Git][tpo/applications/tor-browser-build][maint-15.0] Bug 41694: Prepare Tor Browser 15.0.5
by Pier Angelo Vendrame (@pierov) 28 Jan '26
by Pier Angelo Vendrame (@pierov) 28 Jan '26
28 Jan '26
Pier Angelo Vendrame pushed to branch maint-15.0 at The Tor Project / Applications / tor-browser-build
Commits:
528e744e by Pier Angelo Vendrame at 2026-01-28T21:26:40+01:00
Bug 41694: Prepare Tor Browser 15.0.5
- - - - -
9 changed files:
- projects/browser/Bundle-Data/Docs-TBB/ChangeLog.txt
- projects/browser/config
- projects/firefox/config
- projects/geckoview/config
- projects/go/config
- projects/openssl/config
- projects/tor/config
- projects/translation/config
- rbm.conf
Changes:
=====================================
projects/browser/Bundle-Data/Docs-TBB/ChangeLog.txt
=====================================
@@ -1,3 +1,16 @@
+Tor Browser 15.0.5 - January 29 2026
+ * All Platforms
+ * Updated Tor to 0.4.8.22
+ * Updated NoScript to 13.5.12.1984
+ * Updated OpenSSL to 3.5.5
+ * Android
+ * Bug 44533: Update NoScript to the version bundled with the browser on Android [tor-browser]
+ * Build System
+ * All Platforms
+ * Bug 41691: Update Lyrebird to v0.8.1 [tor-browser-build]
+ * Windows + Linux + Android
+ * Updated Go to 1.24.12
+
Tor Browser 15.0.4 - January 13 2025
* All Platforms
* Bug 44418: Update built-in obfs4 bridges [tor-browser]
=====================================
projects/browser/config
=====================================
@@ -114,12 +114,12 @@ input_files:
- filename: dmg-root
enable: '[% ! c("var/android") %]'
- name: fenix-nightly-apk
- URL: https://ftp.mozilla.org/pub/fenix/nightly/2026/01/2026-01-11-21-42-32-fenix…
+ URL: https://ftp.mozilla.org/pub/fenix/nightly/2026/01/2026-01-28-09-48-16-fenix…
enable: '[% c("var/android") %]'
- sha256sum: c39056d428bf573aa9df1d4be11493064f867bc247bda1e8b7e1836d5aae7a31
- - URL: https://dist.torproject.org/torbrowser/noscript/noscript-13.5.7.1984.xpi
+ sha256sum: e0d0a3f6ad75fe8685f6b537b3cf2f8724e759dc19d7ba5fd1f01768d92a4c9c
+ - URL: https://dist.torproject.org/torbrowser/noscript/noscript-13.5.12.1984.xpi
name: noscript
- sha256sum: 502cba045cc36f813adce8931e13d7f8f3962f8ba855173f4ba19bc82a6cfb59
+ sha256sum: 6643afdd4b7363c685a3666307ad32330118942c4dd5929c61a53f694778e8cd
- URL: https://addons.mozilla.org/firefox/downloads/file/4629131/ublock_origin-1.6…
name: ublock-origin
sha256sum: 5caf4abda494018841222a12156919bbdd8cad82a783c38c36b22dd642704315
=====================================
projects/firefox/config
=====================================
@@ -21,7 +21,7 @@ var:
browser_series: '15.0'
browser_rebase: 1
browser_branch: '[% c("var/browser_series") %]-[% c("var/browser_rebase") %]'
- browser_build: 2
+ browser_build: 3
copyright_year: '[% exec("git show -s --format=%ci " _ c("git_hash") _ "^{commit}", { exec_noco => 1 }).remove("-.*") %]'
nightly_updates_publish_dir: '[% c("var/nightly_updates_publish_dir_prefix") %]nightly-[% c("var/osname") %]'
gitlab_project: https://gitlab.torproject.org/tpo/applications/tor-browser
=====================================
projects/geckoview/config
=====================================
@@ -23,7 +23,7 @@ var:
browser_series: '15.0'
browser_rebase: 1
browser_branch: '[% c("var/browser_series") %]-[% c("var/browser_rebase") %]'
- browser_build: 2
+ browser_build: 3
gitlab_project: https://gitlab.torproject.org/tpo/applications/tor-browser
git_commit: '[% exec("git rev-parse " _ c("git_hash") _ "^{commit}", { exec_noco => 1 }) %]'
deps:
=====================================
projects/go/config
=====================================
@@ -1,11 +1,11 @@
# vim: filetype=yaml sw=2
-version: '1.24.11'
+version: '1.24.12'
filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
container:
use_container: 1
var:
- source_sha256: ffdf97766a4c4b135cd53809713978e9ee1a943b2c8e28ad221a5429de30e210
+ source_sha256: fba2dd661b7be7b34d6bd17ed92f41c44a5e05953ad81ab34b4ec780e5e7dc41
no_crosscompile: 1
setup: |
mkdir -p /var/tmp/dist
=====================================
projects/openssl/config
=====================================
@@ -1,5 +1,5 @@
# vim: filetype=yaml sw=2
-version: 3.5.4
+version: 3.5.5
filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
container:
use_container: 1
@@ -20,7 +20,7 @@ targets:
windows:
var:
flag_mwindows: ''
- configure_opts: '-shared --cross-compile-prefix=[% c("arch") %]-w64-mingw32- mingw[% IF c("var/windows-x86_64") %]64[% END %] "[% c("var/CFLAGS") %] [% c("var/LDFLAGS") %]"'
+ configure_opts: '-shared --cross-compile-prefix=[% c("arch") %]-w64-mingw32- mingw[% IF c("var/windows-x86_64") %]64[% END %] "[% c("var/CFLAGS") %] [% c("var/LDFLAGS") %]" no-quic'
macos:
var:
configure_opts: '--cross-compile-prefix=[% c("var/build_target") %]- darwin64-[% c("var/macos_arch") %]-cc enable-ec_nistp_64_gcc_128'
@@ -33,5 +33,5 @@ input_files:
- name: '[% c("var/compiler") %]'
project: '[% c("var/compiler") %]'
- URL: 'https://github.com/openssl/openssl/releases/download/openssl-[% c("version") %]/openssl-[% c("version") %].tar.gz'
- sha256sum: 967311f84955316969bdb1d8d4b983718ef42338639c621ec4c34fddef355e99
+ sha256sum: b28c91532a8b65a1f983b4c28b7488174e4a01008e29ce8e69bd789f28bc2a89
name: openssl
=====================================
projects/tor/config
=====================================
@@ -1,6 +1,6 @@
# vim: filetype=yaml sw=2
filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
-version: 0.4.8.21
+version: 0.4.8.22
git_hash: 'tor-[% c("version") %]'
git_url: https://gitlab.torproject.org/tpo/core/tor.git
git_submodule: 1
=====================================
projects/translation/config
=====================================
@@ -12,13 +12,13 @@ compress_tar: 'gz'
steps:
base-browser:
base-browser: '[% INCLUDE build %]'
- git_hash: fca1605a06b1a9b24cac7de6afb23aa896864e3e
+ git_hash: dde7588c28c82d4dd7dbd67b63eca130133f0f44
targets:
nightly:
git_hash: 'base-browser'
tor-browser:
tor-browser: '[% INCLUDE build %]'
- git_hash: 579dafc751edf73f98da66e548b87d85474104ea
+ git_hash: 80a21604c7449a88542746738757a12f088b7f24
targets:
nightly:
git_hash: 'tor-browser'
@@ -32,7 +32,7 @@ steps:
fenix: '[% INCLUDE build %]'
# We need to bump the commit before releasing but just pointing to a branch
# might cause too much rebuidling of the Firefox part.
- git_hash: 7263bfcfc42102962e304ec8ea415b3b210411b8
+ git_hash: 3978cf005c3b7228d222db60811e9a797418f68b
compress_tar: 'zst'
targets:
nightly:
=====================================
rbm.conf
=====================================
@@ -74,11 +74,11 @@ buildconf:
git_signtag_opt: '-s'
var:
- torbrowser_version: '15.0.4'
+ torbrowser_version: '15.0.5'
torbrowser_build: 'build1'
# This should be the date of when the build is started. For the build
# to be reproducible, browser_release_date should always be in the past.
- browser_release_date: '2026/01/12 12:13:57'
+ browser_release_date: '2026/01/28 20:00:00'
browser_release_date_timestamp: '[% USE date; date.format(c("var/browser_release_date"), "%s") %]'
browser_default_channel: release
browser_platforms:
@@ -128,9 +128,9 @@ var:
updater_enabled: 1
build_mar: 1
torbrowser_incremental_from:
+ - 15.0.4
- 15.0.3
- 15.0.2
- - 15.0.1
mar_channel_id: '[% c("var/projectname") %]-torproject-[% c("var/channel") %]'
torbrowser_legacy_version: 13.5.27
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/5…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/5…
You're receiving this email because of your account on gitlab.torproject.org.
1
0
[Git][tpo/applications/tor-browser] Pushed new tag tor-browser-140.7.0esr-15.0-1-build3
by Pier Angelo Vendrame (@pierov) 28 Jan '26
by Pier Angelo Vendrame (@pierov) 28 Jan '26
28 Jan '26
Pier Angelo Vendrame pushed new tag tor-browser-140.7.0esr-15.0-1-build3 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/tor-brows…
You're receiving this email because of your account on gitlab.torproject.org.
1
0
[Git][tpo/applications/tor-browser][tor-browser-147.0a1-16.0-2] 2 commits: fixup! BB 43615: Add Gitlab Issue and Merge Request templates
by brizental (@brizental) 28 Jan '26
by brizental (@brizental) 28 Jan '26
28 Jan '26
brizental pushed to branch tor-browser-147.0a1-16.0-2 at The Tor Project / Applications / Tor Browser
Commits:
0a86acd8 by Beatriz Rizental at 2026-01-28T15:26:23+00:00
fixup! BB 43615: Add Gitlab Issue and Merge Request templates
Delete Rebase templates from Base Browser
- - - - -
4ccf290c by Beatriz Rizental at 2026-01-28T15:26:23+00:00
fixup! TB 43616: Customize Gitlab Issue and Merge Request templates
Update rebase templates
- - - - -
5 changed files:
- .gitlab/issue_templates/060 Rebase - Alpha.md
- .gitlab/issue_templates/061 Rebase - Stable.md
- − .gitlab/issue_templates/062 Rebase - Legacy.md
- − .gitlab/issue_templates/063 Rebase - Rapid.md
- .gitlab/issue_templates/Default.md
Changes:
=====================================
.gitlab/issue_templates/060 Rebase - Alpha.md
=====================================
@@ -1,155 +1,100 @@
# ⤵️ Rebase Alpha
-**NOTE:** All examples in this template reference the rebase from 102.7.0esr to 102.8.0esr
-
-<details>
- <summary>Explanation of Variables</summary>
-
-- `$(ESR_VERSION)`: the Mozilla defined ESR version, used in various places for building tor-browser tags, labels, etc
- - **Example**: `102.8.0`
-- `$(ESR_TAG)`: the Mozilla defined hg (Mercurial) tag associated with `$(ESR_VERSION)`
- - **Example**: `FIREFOX_102_8_0esr_RELEASE`
-- `$(ESR_TAG_PREV)`: the Mozilla defined hg (Mercurial) tag associated with the previous ESR version when rebasing (ie, the ESR version we are rebasing from)
- - **Example**: `FIREFOX_102_7_0esr_BUILD1`
-- `$(BROWSER_MAJOR)`: the browser major version
- - **Example**: `12`
-- `$(BROWSER_MINOR)`: the browser minor version
- - **Example**: either `0` or `5`; Alpha's is always `(Stable + 5) % 10`
-- `$(BASE_BROWSER_BRANCH)`: the full name of the current `base-browser` branch
- - **Example**: `base-browser-102.8.0esr-12.5-1`
-- `$(BASE_BROWSER_BRANCH_PREV)`: the full name of the previous `base-browser` branch
- - **Example**: `base-browser-102.7.0esr-12.5-1`
-- `$(TOR_BROWSER_BRANCH)`: the full name of the current `tor-browser` branch
- - **Example**: `tor-browser-102.8.0esr-12.5-1`
-- `$(TOR_BROWSER_BRANCH_PREV)`: the full name of the previous `tor-browser` branch
- - **Example**: `tor-browser-102.7.0esr-12.5-1`
-</details>
-
-**NOTE:** It is assumed that we've already identified the new ESR branch during the tor-browser stable rebase
-
-### **Bookkeeping**
+## **Bookkeeping**
- [ ] Link this issue to the appropriate [Release Prep](https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/is… issue.
- [ ] Create "Firefox Release Review" issue for this version
- **NOTE**: We have issues open through Firefox 153 so this can be skipped until we get to Firefox 154
-### **Update Branch Protection Rules**
-
-- [ ] In [Repository Settings](https://gitlab.torproject.org/tpo/applications/tor-browser/-/sett…:
- - [ ] Remove previous alpha `base-browser` and `tor-browser` branch protection rules (this will prevent pushing new changes to the branches being rebased)
- - [ ] Create new `base-browser` and `tor-browser` branch protection rule:
- - **Branch**: `(tor|base)-browser-$(ESR_VERSION)esr-$(BROWSER_MAJOR).$(BROWSER_MINOR)-1*`
- - **Example**: `(tor|base)-browser-102.8.0esr-12.5-1*`
- - **Allowed to merge**: `Maintainers`
- - **Allowed to push and merge**: `Maintainers`
- - **Allowed to force push**: `false`
- - If you copied and pasted from old rules, double check you didn't add spaces at the end, as GitLab will not trim them!
-
-### **Create New Branches**
-
-- [ ] Fetch Mozilla's firefox repo and identify this release's ${ESR_TAG}
-- [ ] Create new alpha `base-browser` branch from Firefox ${ESR_TAG}
- - Branch name in the form: `base-browser-$(ESR_VERSION)esr-$(BROWSER_MAJOR).$(BROWSER_MINOR)-1`
- - **Example**: `base-browser-102.8.0esr-12.5-1`
-- [ ] Create new alpha `tor-browser` branch from Firefox mercurial tag
- - Branch name in the form: `tor-browser-$(ESR_VERSION)esr-$(BROWSER_MAJOR).$(BROWSER_MINOR)-1`
- - **Example**: `tor-browser-102.8.0esr-12.5-1`
-- [ ] Push new `base-browser` branch to `upstream`
-- [ ] Push new `tor-browser` branch to `upstream`
-
-### **Rebase tor-browser**
-
-- [ ] Checkout a new local branch for the `tor-browser` rebase
- - **Example**: `git branch tor-browser-rebase FIREFOX_102_8_0esr_BUILD1`
-- [ ] **(Optional)** `base-browser` rebase and autosquash
- - **NOTE** This step may be skipped if the `HEAD` of the previous `base-browser` branch is a `-buildN` tag
- - [ ] Cherry-pick the previous `base-browser` commits up to `base-browser`'s `buildN` tag onto new `base-browser` rebase branch
- - **Example**: `git cherry-pick FIREFOX_102_7_0esr_BUILD1..base-browser-102.7.0esr-12.5-1-build1`
- - [ ] Rebase and autosquash these cherry-picked commits
- - **Example**: `git rebase --autosquash --interactive FIREFOX_102_8_0esr_BUILD1 HEAD`
- - [ ] Cherry-pick remainder of patches after the `buildN` tag
- - **Example**: `git cherry-pick base-browser-102.7.0esr-12.5-1-build1..upstream/base-browser-102.7.0esr-12.5-1`
-
-- [ ] `tor-browser` rebase and autosquash
- - [ ] Note the current git hash of `HEAD` for `tor-browser` rebase+autosquash step: `git rev-parse HEAD`
- - [ ] Cherry-pick the appropriate previous `tor-browser` branch's commit range up to the last `tor-browser` `buildN` tag
- - **Example**: `git cherry-pick base-browser-102.7.0esr-12.5-1-build1..tor-browser-102.7.0esr-12.5-1-build1`
- - **Example (if separate base-browser rebase was skipped)**: `git cherry-pick FIREFOX_102_7_0esr_BUILD1..tor-browser-102.7.0esr-12.5-1-build1`
- - [ ] Rebase and autosquash **ONLY** these newly cherry-picked commits using the commit noted previously: `git rebase --autosquash --interactive $(PREV_HEAD)`
- - **Example**: `git rebase --autosquash --interactive FIREFOX_102_8_0esr_RELEASE`
- - [ ] **(Optional)** Patch reordering
- - **NOTE**: We typically want to do this after new features or bug fix commits which are not !fixups to an existing commit have been merged and are just sitting at the end of the commit history
- - Relocate new `base-browser` patches in the patch-set to enforce this rough thematic ordering:
- - **MOZILLA BACKPORTS** - official Firefox patches we have backported to our ESR branch: Android-specific security updates, critical bug fixes, worthwhile features, etc
- - **MOZILLA REVERTS** - revert commits of official Firefox patches
- - **UPLIFT CANDIDATES** - patches which stand on their own and should be uplifted to `mozilla-central`
- - **BUILD CONFIGURATION** - tools/scripts, gitlab templates, etc
- - **BROWSER CONFIGURATION** - branding, mozconfigs, preference overrides, etc
- - **SECURITY PATCHES** - security improvements, hardening, etc
- - **PRIVACY PATCHES** - fingerprinting, linkability, proxy bypass, etc
- - **FEATURES** - new functionality: updater, UX, letterboxing, security level, add-on
- - Relocate new `tor-browser` patches in the patch-set to enforce this rough thematic ordering:
- - **BUILD CONFIGURATION** - tools/scripts, gitlab templates, etc
- - **BROWSER CONFIGURATION** - branding, mozconfigs, preference overrides, etc
- - **UPDATER PATCHES** - updater tweaks, signing keys, etc
- - **SECURITY PATCHES** - non tor-dependent security improvements, hardening, etc
- - **PRIVACY PATCHES** - non tor-dependent fingerprinting, linkability, proxy bypass, etc
- - **FEAURES** - non tor-dependent features
- - **TOR INTEGRATION** - legacy tor-launcher/torbutton, tor modules, bootstrapping, etc
- - **TOR SECURITY PATCHES** - tor-specific security improvements
- - **TOR PRIVACY PATCHES** - tor-specific privacy improvements
- - **TOR FEATURES** - new tor-specific functionality: manual, onion-location, onion service client auth, etc
- - [ ] Cherry-pick remainder of patches after the last `tor-browser` `buildN` tag
- - **Example**: `git cherry-pick tor-browser-102.7.0esr-12.5-1-build1..upstream/tor-browser-102.7.0esr-12.5-1`
- - [ ] Rebase and `pick` new security backport patches to the end of the **MOZILLA BACKPORTS** section of the commit history
- - **Example**: `git rebase --interactive FIREFOX_102_8_0esr_RELEASE`
- - [ ] Rebase and autosquash again, this time replacing all `fixup` and `squash` commands with `pick`. The goal here is to have all of the `fixup` and `squash` commits beside the commit which they modify, but kept un-squashed for easy debugging/bisecting.
- - **Example**: `git rebase --autosquash --interactive FIREFOX_102_8_0esr_RELEASE`
-- [ ] Compare patch sets to ensure nothing *weird* happened during conflict resolution:
- - [ ] diff of diffs:
- - Do the diff between `current_patchset.diff` and `rebased_patchset.diff` with your preferred difftool and look at differences on lines that starts with + or -
- - `git diff $(ESR_TAG_PREV)..$(BROWSER_BRANCH_PREV) > current_patchset.diff`
- - `git diff $(ESR_TAG)..$(BROWSER_BRANCH) > rebased_patchset.diff`
- - diff `current_patchset.diff` and `rebased_patchset.diff`
- - If everything went correctly, the only lines which should differ should be the lines starting with `index abc123...def456` (unless the previous `base-browser` branch includes changes not included in the previous `tor-browser` branch)
- - [ ] rangediff: `git range-diff $(ESR_TAG_PREV)..$(TOR_BROWSER_BRANCH_PREV) $(ESR_TAG)..HEAD`
- - **Example**: `git range-dif FIREFOX_102_7_0esr_BUILD1..upstream/tor-browser-102.7.0esr-12.5-1 FIREFOX_102_8_0esr_BUILD1..HEAD`
-- [ ] Open MR for the `tor-browser` rebase
-- [ ] Merge
-- Update and push `base-browser` branch
- - [ ] Reset the new `base-browser` branch to the appropriate commit in this new `tor-browser` branch
- - [ ] Push these commits to `upstream`
-- [ ] Set `$(TOR_BROWSER_BRANCH)` as the default GitLab branch
- - [ ] Go to [Repository Settings](https://gitlab.torproject.org/tpo/applications/tor-browser/-/sett…
- - [ ] Expand `Branch defaults`
- - [ ] Set the branch and leave the `Auto-close` checkbox unchecked
- - [ ] Save changes
-
-### **Sign and Tag**
-
-- [ ] Sign/Tag `HEAD` of the merged `tor-browser` branch:
- - In **tor-browser.git**, checkout the new alpha `tor-browser` branch
- - In **tor-browser-build.git**, run signing script:
- ```bash
- ./tools/browser/sign-tag.torbrowser alpha build1
- ```
- - [ ] Push tag to `upstream`
-- [ ] Sign/Tag HEAD of the merged `base-browser` branch:
- - In **tor-browser.git**, checkout the new alpha `base-browser` branch
- - In **tor-browser-build.git**, run signing script:
- ```bash
- ./tools/browser/sign-tag.basebrowser alpha build1
- ```
- - [ ] Push tag to `upstream`
-- [ ] Update tor-browser-build's `main` branch (no MR required, you can just push it if you have the permissions)
- - [ ] Update `projects/firefox/config`
- - [ ] Update `firefox_platform_version`
- - [ ] Set `browser_build` to 1 (to prevent failures in alpha testbuilds)
- - [ ] Update `projects/geckoview/config`
- - [ ] Update `firefox_platform_version`
- - [ ] Set `browser_build` to 1 (to prevent failures in alpha testbuilds)
-
-<!-- Do not edit beneath this line <3 -->
+## **Rebase**
+
+The step-by-step rebase process is detailed on the [Rebase Process](https://gitlab.torproject.org/tpo/applications/wiki/-/wikis/Develo… wiki page. Refer to it for detailed instructions on how to perform each step.
+
+- Rebase application-services
+ - uniffi-rs
+ - Prepare the rebase
+ - [ ] Verify if application-services has updated it's uniffi-rs version
+ - [ ] Get the [upstream](https://github.com/mozilla/uniffi-rs) tag
+ - [ ] Freeze the current default branch
+ - [ ] Create the target branch (`X.XX.X`)
+ - [ ] Rebase
+ - Merge
+ - [ ] Perform a self-review
+ - [ ] Build
+ - [ ] File a merge request
+ - Tag and update the repository
+ - [ ] Tag `vX.XX.X`
+ - [ ] Make `X.XX.X` the default branch
+ - application-services
+ - Prepare the rebase
+ - [ ] Get the [upstream](github.com/mozilla/application-services) tag
+ - [ ] Freeze the current default branch
+ - [ ] Create the target branch (`XXX.X-TORBROWSER`)
+ - Do the rebase
+ - [ ] Cherry-pick commits
+ - [ ] Squash _all_ `fixup!` commits
+ - Merge
+ - [ ] Perform a self-review
+ - [ ] Build
+ - [ ] File a merge request
+ - [ ] Tag and update the repository
+ - [ ] Tag `vXXX.X-TORBROWSER-build1`
+ - [ ] Make `XXX.X-TORBROWSER` the default branch
+
+- Rebase Tor Browser
+ - Prepare the rebase
+ - [ ] Get the [Firefox](https://github.com/mozilla-firefox/firefox) tag
+ - Do the rebase [Part 1]
+ - [ ] Create the target branch (`tor-browser-...-1`)
+ - [ ] Cherry-pick commits until `tor-browser-...-build1`
+ - [ ] Freeze the current default branch
+ - [ ] Cherry-pick remaining commits
+ - Merge
+ - [ ] Perform a self-review (`git range-diff`)
+ - [ ] Run linters
+ - [ ] Build and test
+ - [ ] Desktop
+ - [ ] Android
+ - [ ] File a merge request
+ - Tag and update the repository
+ - [ ] Tag `tor-browser-...-1-build1`
+ - [ ] Tag `tor-browser-...-1-build2`
+ - [ ] Make `tor-browser-...-1` the default branch and freeze it
+ - Do the rebase [Part 2]
+ - [ ] Create the target branch (`tor-browser-...-2`)
+ - [ ] Cherry-pick commits until `tor-browser-...-1-build1`
+ - [ ] Squash (`git rebase --autosquash FIREFOX_...`)
+ - [ ] Cherry-pick the remaining commits
+ - [ ] Reorder commits
+ - Merge
+ - [ ] Perform a self-review (`git range-diff` + diff of diffs)
+ - [ ] Run linters
+ - [ ] Build and test
+ - [ ] Desktop
+ - [ ] Android
+ - [ ] File a merge request
+ - Tag and update the repository
+ - [ ] `tor-browser-...-2-build1`
+ - [ ] `base-browser-...-2-build1`
+ - [ ] Make `tor-browser-...-2` the default branch
+
+- Rebase Mullvad Browser
+ - Prepare the rebase
+ - [ ] Push the `base-browser-*` tag
+ - [ ] Freeze the current default branch
+ - [ ] Create the target branch (`mullvad-browser-...-1`)
+ - Do the rebase
+ - [ ] Cherry-pick commits until `mullvad-browser-...-build1`
+ - [ ] Squash (`git rebase --autosquash base-browser-...-build1`)
+ - [ ] Cherry-pick the remaining commits
+ - [ ] Reorder commits
+ - Merge
+ - [ ] Perform a self-review (`git range-diff` + diff of diffs)
+ - [ ] Run linters
+ - [ ] File a merge request
+ - [ ] Tag and update the repository
+ - [ ] Tag `mullvad-browser-...-build1`
+ - [ ] Make `mullvad-browser-...-2` the default branch
---
=====================================
.gitlab/issue_templates/061 Rebase - Stable.md
=====================================
@@ -1,116 +1,43 @@
# ⤵️ Rebase Stable
-**NOTE:** All examples in this template reference the rebase from 102.7.0esr to 102.8.0esr
-
-<details>
- <summary>Explanation of Variables</summary>
-
-- `$(ESR_VERSION)`: the Mozilla defined ESR version, used in various places for building tor-browser tags, labels, etc
- - **Example**: `102.8.0`
-- `$(ESR_TAG)`: the Mozilla defined hg (Mercurial) tag associated with `$(ESR_VERSION)`
- - **Example**: `FIREFOX_102_8_0esr_RELEASE`
-- `$(ESR_TAG_PREV)`: the Mozilla defined hg (Mercurial) tag associated with the previous ESR version when rebasing (ie, the ESR version we are rebasing from)
- - **Example**: `FIREFOX_102_7_0esr_BUILD1`
-- `$(BROWSER_MAJOR)`: the browser major version
- - **Example**: `12`
-- `$(BROWSER_MINOR)`: the browser minor version
- - **Example**: either `0` or `5`; Alpha's is always `(Stable + 5) % 10`
-- `$(BASE_BROWSER_BRANCH)`: the full name of the current `base-browser` branch
- - **Example**: `base-browser-102.8.0esr-12.0-1`
-- `$(BASE_BROWSER_BRANCH_PREV)`: the full name of the previous `base-browser` branch
- - **Example**: `base-browser-102.7.0esr-12.0-1`
-- `$(TOR_BROWSER_BRANCH)`: the full name of the current `tor-browser` branch
- - **Example**: `tor-browser-102.8.0esr-12.0-1`
-- `$(TOR_BROWSER_BRANCH_PREV)`: the full name of the previous `tor-browser` branch
- - **Example**: `tor-browser-102.7.0esr-12.0-1`
-</details>
-
-### **Bookkeeping**
+## **Bookkeeping**
- [ ] Link this issue to the appropriate [Release Prep](https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/is… issue.
-### Update Branch Protection Rules
-
-- [ ] In [Repository Settings](https://gitlab.torproject.org/tpo/applications/tor-browser/-/sett…:
- - [ ] Remove previous stable `base-browser` and `tor-browser` branch protection rules (this will prevent pushing new changes to the branches being rebased)
- - [ ] Create new `base-browser` and `tor-browser` branch protection rule:
- - **Branch**: `(tor|base)-browser-$(ESR_VERSION)esr-$(BROWSER_MAJOR).$(BROWSER_MINOR)-1*`
- - **Example**: `(tor|base)-browser-102.8.0esr-12.0-1*`
- - **Allowed to merge**: `Maintainers`
- - **Allowed to push and merge**: `Maintainers`
- - **Allowed to force push**: `false`
-
-### **Identify the Firefox Tagged Commit and Create New Branches**
-
-- [ ] Fetch Mozilla's firefox repo and identify this release's ${ESR_TAG}
-- [ ] Create new stable `base-browser` branch from tag
- - Branch name in the form: `base-browser-$(ESR_VERSION)esr-$(BROWSER_MAJOR).$(BROWSER_MINOR)-1`
- - **Example**: `base-browser-102.8.0esr-12.0-1`
-- [ ] Create new stable `tor-browser` branch from
- - Branch name in the form: `tor-browser-$(ESR_VERSION)esr-$(BROWSER_MAJOR).$(BROWSER_MINOR)-1`
- - **Example**: `tor-browser-102.8.0esr-12.0-1`
-- [ ] Push new `base-browser` branch to `upstream`
-- [ ] Push new `tor-browser` branch to `upstream`
-- [ ] Push new `$(ESR_TAG)` to `upstream`
-
-### **Rebase tor-browser**
-
-- [ ] Checkout a new local branch for the `tor-browser` rebase
- - **Example**: `git branch tor-browser-rebase FIREFOX_102_8_0esr_BUILD1`
-- [ ] **(Optional)** `base-browser` rebase
- - **NOTE** This step may be skipped if the `HEAD` of the previous `base-browser` branch is a `-buildN` tag
- - [ ] Cherry-pick the previous `base-browser` commits up to `base-browser`'s `buildN` tag onto new `base-browser` rebase branch
- - **Example**: `git cherry-pick FIREFOX_102_7_0esr_BUILD1..base-browser-102.7.0esr-12.0-1-build1`
- - [ ] Rebase and autosquash these cherry-picked commits
- - **Example**: `git rebase --autosquash --interactive FIREFOX_102_8_0esr_BUILD1 HEAD`
- - [ ] Cherry-pick remainder of patches after the `buildN` tag
- - **Example**: `git cherry-pick base-browser-102.7.0esr-12.0-1-build1..upstream/base-browser-102.7.0esr-12.0-1`
-- [ ] `tor-browser` rebase
- - [ ] Note the current git hash of `HEAD` for `tor-browser` rebase+autosquash step: `git rev-parse HEAD`
- - [ ] Cherry-pick the appropriate previous `tor-browser` branch's commit range up to the last `tor-browser` `buildN` tag
- - **Example**: `git cherry-pick base-browser-102.7.0esr-12.0-1-build1..tor-browser-102.7.0esr-12.0-1-build1`
- - **Example (if separate base-browser rebase was skipped)**: `git cherry-pick FIREFOX_102_7_0esr_BUILD1..tor-browser-102.7.0esr-12.0-1-build1`
- - [ ] Rebase and autosquash these newly cherry-picked commits: `git rebase --autosquash --interactive $(PREV_HEAD)`
- - **Example**: `git rebase --autosquash --interactive FIREFOX_102_8_0esr_RELEASE`
- - [ ] Cherry-pick remainder of patches after the last `tor-browser` `buildN` tag
- - **Example**: `git cherry-pick tor-browser-102.7.0esr-12.0-1-build1..upstream/tor-browser-102.7.0esr-12.0-1`
- - [ ] Rebase and `pick` new security backport patches to the end of the **MOZILLA BACKPORTS** section of the commit history
- - **Example**: `git rebase --interactive FIREFOX_102_8_0esr_RELEASE`
- - [ ] Rebase and autosquash again, this time replacing all `fixup` and `squash` commands with `pick`. The goal here is to have all of the `fixup` and `squash` commits beside the commit which they modify, but kept un-squashed for easy debugging/bisecting.
- - **Example**: `git rebase --autosquash --interactive FIREFOX_102_8_0esr_RELEASE`
-- [ ] Compare patch sets to ensure nothing *weird* happened during conflict resolution:
- - [ ] diff of diffs:
- - Do the diff between `current_patchset.diff` and `rebased_patchset.diff` with your preferred difftool and look at differences on lines that starts with + or -
- - `git diff $(ESR_TAG_PREV)..$(BROWSER_BRANCH_PREV) > current_patchset.diff`
- - `git diff $(ESR_TAG)..$(BROWSER_BRANCH) > rebased_patchset.diff`
- - diff `current_patchset.diff` and `rebased_patchset.diff`
- - If everything went correctly, the only lines which should differ should be the lines starting with `index abc123...def456` (unless the previous `base-browser` branch includes changes not included in the previous `tor-browser` branch)
- - [ ] rangediff: `git range-diff $(ESR_TAG_PREV)..$(TOR_BROWSER_BRANCH_PREV) $(ESR_TAG)..HEAD`
- - **Example**: `git range-dif FIREFOX_102_7_0esr_BUILD1..upstream/tor-browser-102.7.0esr-12.0-1 FIREFOX_102_8_0esr_BUILD1..HEAD`
-- [ ] Open MR for the `tor-browser` rebase
-- [ ] Merge
-- Update and push `base-browser` branch
- - [ ] Reset the new `base-browser` branch to the appropriate commit in this new `tor-browser` branch
- - [ ] Push these commits to `upstream`
-
-### **Sign and Tag**
-
-- [ ] Sign/Tag `HEAD` of the merged `tor-browser` branch:
- - In **tor-browser.git**, checkout the new stable `tor-browser` branch
- - In **tor-browser-build.git**, run signing script:
- ```bash
- ./tools/browser/sign-tag.torbrowser stable build1
- ```
- - [ ] Push tag to `upstream`
-- [ ] Sign/Tag HEAD of the merged `base-browser` branch:
- - In **tor-browser.git**, checkout the new stable `base-browser` branch
- - In **tor-browser-build.git**, run signing script:
- ```bash
- ./tools/browser/sign-tag.basebrowser stable build1
- ```
- - [ ] Push tag to `upstream`
-
-<!-- Do not edit beneath this line <3 -->
+## **Rebase**
+
+The step-by-step rebase process is detailed on the [Rebase Process](https://gitlab.torproject.org/tpo/applications/wiki/-/wikis/Develo… wiki page. Refer to it for detailed instructions on how to perform each step.
+
+- Rebase Tor Browser
+ - Prepare the rebase
+ - [ ] Get the Firefox tag
+ - [ ] Freeze the current default branch
+ - [ ] Create the target branch
+ - Do the rebase
+ - [ ] Cherry-pick commits until `tor-browser-...-build1`
+ - [ ] Squash (`git rebase --autosquash FIREFOX_...-build1`)
+ - [ ] Cherry-pick the remaining commits
+ - [ ] Reorder commits
+ - Merge
+ - [ ] Perform a self-review (`git range-diff` + diff of diffs)
+ - [ ] Run linters
+ - Tag
+ - [ ] `tor-browser-...-build1`
+ - [ ] `base-browser-...-build1`
+
+- Rebase Mullvad Browser
+ - Prepare the rebase
+ - [ ] Push the `base-browser-*` tag
+ - Do the rebase
+ - [ ] Cherry-pick commits until `mullvad-browser-...-build1`
+ - [ ] Squash (`git rebase --autosquash base-browser-...-build1`)
+ - [ ] Cherry-pick the remaining commits
+ - [ ] Reorder commits
+ - Merge
+ - [ ] Perform a self-review (`git range-diff` + diff of diffs)
+ - [ ] Run linters
+ - Tag
+ - [ ] `mullvad-browser-...-build1`
---
=====================================
.gitlab/issue_templates/062 Rebase - Legacy.md deleted
=====================================
@@ -1,93 +0,0 @@
-# ⤵️ Rebase Legacy
-
-**NOTE:** All examples in this template reference the rebase from 115.17.0esr to 115.18.0esr
-
-<details>
- <summary>Explanation of Variables</summary>
-
-- `$(ESR_VERSION)`: the Mozilla defined ESR version, used in various places for building tor-browser tags, labels, etc
- - **Example**: `115.18.0`
-- `$(ESR_TAG)`: the Mozilla defined hg (Mercurial) tag associated with `$(ESR_VERSION)`
- - **Example**: `FIREFOX_115_18_0esr_BUILD1`
-- `$(ESR_TAG_PREV)`: the Mozilla defined hg (Mercurial) tag associated with the previous ESR version when rebasing (ie, the ESR version we are rebasing from)
- - **Example**: `FIREFOX_115_17_0esr_BUILD1`
-- `$(BASE_BROWSER_BRANCH)`: the full name of the current `base-browser` branch
- - **Example**: `base-browser-115.18.0esr-13.5-1`
-- `$(BASE_BROWSER_BRANCH_PREV)`: the full name of the previous `base-browser` branch
- - **Example**: `base-browser-115.17.0esr-13.5-1`
-- `$(TOR_BROWSER_BRANCH)`: the full name of the current `tor-browser` branch
- - **Example**: `tor-browser-115.18.0esr-13.5-1`
-- `$(TOR_BROWSER_BRANCH_PREV)`: the full name of the previous `tor-browser` branch
- - **Example**: `tor-browser-115.17.0esr-13.5-1`
-</details>
-
-### **Bookkeeping**
-
-- [ ] Link this issue to the appropriate [Release Prep](https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/is… issue.
-
-### Update Branch Protection Rules
-
-- [ ] In [Repository Settings](https://gitlab.torproject.org/tpo/applications/tor-browser/-/sett…:
- - [ ] Remove previous legacy `base-browser` and `tor-browser` branch protection rules (this will prevent pushing new changes to the branches being rebased)
- - [ ] Create new `tor-browser` branch protection rule:
- - **Branch**: `tor-browser-$(ESR_VERSION)esr-13.5-1*`
- - **Example**: `tor-browser-115.18.0esr-13.5-1*`
- - **Allowed to merge**: `Maintainers`
- - **Allowed to push and merge**: `Maintainers`
- - **Allowed to force push**: `false`
-
-### **Identify the Firefox Tagged Commit and Create New Branches**
-
-- [ ] Fetch Mozilla's firefox repo and identify this release's ESR-115 ${ESR_TAG}
-- [ ] Create new legacy `tor-browser` branch from
- - Branch name in the form: `tor-browser-$(ESR_VERSION)esr-13.5-1`
- - **Example**: `tor-browser-115.18.0esr-13.5-1`
-- [ ] Push new `tor-browser` branch to `upstream`
-- [ ] Push new `$(ESR_TAG)` to `upstream`
-
-### **Rebase tor-browser**
-
-- [ ] Checkout a new local branch for the `tor-browser` rebase
- - **Example**: `git branch tor-browser-rebase FIREFOX_115_18_0esr_BUILD1`
-- [ ] `tor-browser` rebase
- - [ ] Note the current git hash of `HEAD` for `tor-browser` rebase+autosquash step: `git rev-parse HEAD`
- - [ ] Cherry-pick the appropriate previous `tor-browser` branch's commit range up to the last `tor-browser` `build1` tag
- - **Example**: `git cherry-pick FIREFOX_115_17_0esr_BUILD1..tor-browser-115.17.0esr-13.5-1-build2`
- - [ ] Rebase and autosquash these newly cherry-picked commits: `git rebase --autosquash --interactive $(PREV_HEAD)`
- - **Example**: `git rebase --autosquash --interactive FIREFOX_115_18_0esr_BUILD1`
- - [ ] Cherry-pick remainder of patches after the last `tor-browser` `build1` tag
- - **Example**: `git cherry-pick tor-browser-115.17.0esr-13.5-1-build1..upstream/tor-browser-115.17.0esr-13.5-1`
- - [ ] Rebase and `pick` new security backport patches to the end of the **MOZILLA BACKPORTS** section of the commit history
- - **Example**: `git rebase --interactive FIREFOX_115_18_0esr_BUILD1`
- - [ ] Rebase and autosquash again, this time replacing all `fixup` and `squash` commands with `pick`. The goal here is to have all of the `fixup` and `squash` commits beside the commit which they modify, but kept un-squashed for easy debugging/bisecting.
- - **Example**: `git rebase --autosquash --interactive FIREFOX_115_18_0esr_BUILD1`
-- [ ] Compare patch sets to ensure nothing *weird* happened during conflict resolution:
- - [ ] diff of diffs:
- - Do the diff between `current_patchset.diff` and `rebased_patchset.diff` with your preferred difftool and look at differences on lines that starts with + or -
- - `git diff $(ESR_TAG_PREV)..$(BROWSER_BRANCH_PREV) > current_patchset.diff`
- - `git diff $(ESR_TAG)..$(BROWSER_BRANCH) > rebased_patchset.diff`
- - diff `current_patchset.diff` and `rebased_patchset.diff`
- - If everything went correctly, the only lines which should differ should be the lines starting with `index abc123...def456`
- - [ ] rangediff: `git range-diff $(ESR_TAG_PREV)..$(TOR_BROWSER_BRANCH_PREV) $(ESR_TAG)..HEAD`
- - **Example**: `git range-dif FIREFOX_115_17_0esr_BUILD1..upstream/tor-browser-115.17.0esr-13.5-1 FIREFOX_115_18_0esr_BUILD1..HEAD`
-- [ ] Open MR for the `tor-browser` rebase
-- [ ] Merge
-
-### **Sign and Tag**
-
-- [ ] Sign/Tag `HEAD` of the merged `tor-browser` branch:
- - In **tor-browser.git**, checkout the new legacy `tor-browser` branch
- - In **tor-browser-build.git**, run signing script:
- ```bash
- ./tools/browser/sign-tag.torbrowser legacy build1
- ```
- - [ ] Push tag to `upstream`
-
-<!-- Do not edit beneath this line <3 -->
-
----
-
-/label ~"Apps::Product::TorBrowser"
-/label ~"Apps::Type::Rebase"
-/label ~"Apps::Impact::High"
-/label ~"Priority::Blocker"
=====================================
.gitlab/issue_templates/063 Rebase - Rapid.md deleted
=====================================
@@ -1,294 +0,0 @@
-# ⤵️ Rebase Rapid
-
-- **NOTE**: All examples in this template reference the rebase from Firefox 129.0a1 to 130.0a1
-- **TODO**:
- - Documentation step for any difficulties or noteworthy things for each rapid rebase
-
-<details>
- <summary>Explanation of Channels</summary>
-
- There are unfortunately some collisions between how we and Mozilla name our release channels which can make things confusing:
- - **Firefox**:
- - **Nightly**: \_START and \_END tags, version in the format `$(MAJOR).$(MINOR)a1`
- - **Example**: Firefox Nightly 130 was `130.0a1`
- - **Note**: Nightly is 2 major versions ahead of the current Release
- - **Beta**: tagged each Monday, Wednesday, and Friday until release, version in the format `$(MAJOR).$(MINOR)b$(PATCH)`
- - **Example**: the first Firefox Beta 130 was `130.0b1`
- - **Note**: Beta is 1 major version ahead of the current Release, should be irrelevant to us
- - **Release**: tagged monthly, version in the format `$(MAJOR).$(MINOR)` or `$(MAJOR).$(MINOR).$(PATCH)`
- - **Example** Firefox Release 130 was `130.0`
- - **ESR**: tagged monthly, version in the format `$(ESR_MAJOR).$(ESR_MINOR).$(ESR_PATCH)esr`
- - **Example**: Firefox ESR 128.1 is `128.1.0esr`
- - **Tor+Mullvad Browser**:
- - **Rapid**: tagged monthly, based on the latest Firefox Nightly
- - **Nightly**: not tagged, built nightly from our current Alpha branch's `HEAD`
- - **Alpha**: tagged monthly, based on the latest Firefox ESR
- - **Stable**: tagged monthly, based on oldest supported Firefox ESR
-
-</details>
-
-<details>
- <summary>Branching Overview</summary>
-
- Rebasing Tor Browser Rapid onto the current Firefox Nightly is a bit more confusing/involved than rebasing Tor Browser Alpha or Stable from one minor ESR to the next minor ESR.
-
- The general process basically involves rebasing the previous Firefox Nightly-based Tor Browser Rapid onto the latest Firefox Nightly, and then cherry-picking all of the commits from the previous Firefox ESR-based Tor Browser Alpha after that channel's `build1` tag. This process presumes that the previous Tor Browser Alpha branch is locked and receiving no more changes.
-
- This diagram provides a high-level view of the overall code-flow for rebasing/cherry-picking commits from Tor Browser Alpha based on Firefox 128.1.0esr and Tor Browser Rapid based on Firefox 129.0a1 onto Firefox 130.0a1:
-
- ```mermaid
-%%{init: { 'themeVariables': {'git0': '#0072b2', 'gitBranchLabel0': '#fff', 'git1': "#e69f00", 'gitBranchLabel1': '#fff', 'git2': '#009e73', 'gitBranchLabel2': '#fff', 'git3': '#cc79a7', 'gitBranchLabel3': '#fff'}, 'gitGraph': {'mainBranchName': 'tor-browser-128.1.0esr-14.5-1'}} }%%
-gitGraph:
- branch tor-browser-129.0a1-15.0-2
- branch tor-browser-130.0a1-15.0-1
- branch tor-browser-130.0a1-15.0-2
-
- checkout tor-browser-128.1.0esr-14.5-1
- commit id: "FIREFOX_128_1_0esr_BUILD1"
- commit id: "base-browser-128.1.0esr-14.5-1-build1"
- commit id: "tor-browser-128.1.0esr-14.5-1-build1"
- commit id: "tor-browser-128.1.0esr-14.5-1-build2"
-
- checkout tor-browser-129.0a1-15.0-2
- commit id: "FIREFOX_NIGHTLY_129_END"
- %% commit id: "tor-browser-129.0a1-15.0-2-build1"
-
- checkout tor-browser-130.0a1-15.0-1
- commit id: "FIREFOX_NIGHTLY_130_END"
-
- checkout tor-browser-130.0a1-15.0-2
- commit id: "FIREFOX_NIGHTLY_130_END "
-
- checkout tor-browser-130.0a1-15.0-1
- merge tor-browser-129.0a1-15.0-2
-
- checkout tor-browser-130.0a1-15.0-2
- merge tor-browser-130.0a1-15.0-1
-
-
- checkout tor-browser-129.0a1-15.0-2
- commit id: "tor-browser-129.0a1-15.0-2-build1"
-
- checkout tor-browser-130.0a1-15.0-1
- merge tor-browser-129.0a1-15.0-2 id: "tor-browser-130.0a1-15.0-1-build1"
-
- checkout tor-browser-130.0a1-15.0-2
- merge tor-browser-130.0a1-15.0-1
-
- checkout tor-browser-130.0a1-15.0-1
- merge tor-browser-128.1.0esr-14.5-1
-
- checkout tor-browser-130.0a1-15.0-2
- merge tor-browser-130.0a1-15.0-1
-
- checkout tor-browser-128.1.0esr-14.5-1
- commit id: "tor-browser-128.1.0esr-14.5-1"
-
- checkout tor-browser-130.0a1-15.0-1
- merge tor-browser-128.1.0esr-14.5-1 id:"tor-browser-130.0a1-15.0-1-build2"
-
- checkout tor-browser-130.0a1-15.0-2
-
- merge tor-browser-130.0a1-15.0-1
- commit id: "tor-browser-130.0a1-15.0-2-build1"
-
- ```
-
- In this concrete example, the rebaser performs the following steps:
- - create new `tor-browser-130.0a1-15.0-1`, and `tor-browser-130.0a1-15.0-2` branches from the `FIREFOX_NIGHTLY_130_END` tag.
- - these will be the rebase review branches
- - onto `tor-browser-130.0a1-15.0-1`, cherry-pick the range `FIREFOX_NIGHTLY_129_END..tor-browser-129.0a1-15.0-2-build1` (i.e. the Firefox Nightly 129-based Tor Browser Rapid commits)
- - this updates the previous Tor Browser Rapid onto Firefox Nightly 130
- - cherry-pick the new alpha patches onto `tor-browser-130.0a1-15.0-1` (i.e. cherry-pick `tor-browser-128.1.0esr-14.5-1-build2..origin/tor-browser-128.1.0esr-14.5-1`)
- - onto `tor-browser-130.0a1-15.0-2`, rebase and autosquash the `FIREFOX_NIGHTLY_130_END..tor-browser-130.0a1-15.0-2-build1` commit range
- - onto `tor-browser-130.0a1-15.0-2`, cherry-pick the remaining commit range `tor-browser-130.0a1-15.0-2-build1..origin/tor-browser-130.0a1-15.0-2`
- - re-order any remaining fixup! commits to be adjacent to their parents (i.e. the same rebase command queue as one would get from `git rebase --autosquash`, but with the `fixup!` commands replaced with `pick!` commands).
- - this re-organises the branch in a nicely-bisectable way, and will ensure the rebase+autosquash step for the next release *should* succeed without any additional effort
-
-</details>
-
-<details>
- <summary>Explanation of Variables</summary>
-
-- `$(NIGHTLY_VERSION)`: the Mozilla defined nightly version, used in various places for building tor-browser tags, labels, etc
- - **Example**: `130.0a1`
-- `$(NIGHTLY_TAG)`: the Mozilla defined hg (Mercurial) tag associated with `$(NIGHTLY_VERSION)`
- - **Example**: `FIREFOX_NIGHTLY_130_END`
-- `$(NIGHTLY_TAG_PREV)`: the Mozilla defined hg (Mercurial) tag associated with the previous nightly version when rebasing (ie, the nightly version we are rebasing from)
- - **Example**: `FIREFOX_NIGHTLY_129_END`
-- `$(BROWSER_VERSION)`: the browser version which will first be based on the next major ESR version this *Firefox* Nightly series is leading up to
- - **Example**: `15`
-- `$(TOR_BROWSER_BRANCH)`: the full name of the current `tor-browser` branch based off of the Firefox Nightly channel
- - **Example**: `tor-browser-130.0a1-15.0-1`
-- `$(TOR_BROWSER_BRANCH_PREV)`: the full name of the previous `tor-browser` branch based off of the Firefox Nightly channel
- - **Example**: `tor-browser-129.0a1-15.0-1`
-</details>
-
-### Update Branch Protection Rules
-
-- [ ] In [Repository Settings](https://gitlab.torproject.org/tpo/applications/tor-browser/-/sett…:
- - [ ] Remove previous nightly `tor-browser` branch protection rules (this will prevent pushing new changes to the branches being rebased)
- - [ ] Create new `base-browser` and `tor-browser` branch protection rule:
- - **Branch**: `(tor|base)-browser-$(NIGHTLY_VERSION)-$(BROWSER_VERSION)-*`
- - **Example**: `(tor|base)-browser-130.0a1-15.0-*`
- - **Allowed to merge**: `Maintainers`
- - **Allowed to push and merge**: `Maintainers`
- - **Allowed to force push**: `false`
- - ⚠️ **IMPORTANT**: If you copied and pasted from old rules, double check you didn't add spaces at the end, as GitLab will not trim them!
-
-### **Create New Branches**
-
-- [ ] Fetch Mozilla's firefox repo and identify this release's ${NIGHTLY_TAG}
-- [ ] Create two new rapid `tor-browser` branches from Firefox ${NIGHTLY_TAG}
- - Branch name in the form: `tor-browser-$(NIGHTLY_VERSION)-$(BROWSER_VERSION)-${BRANCH_NUM}`
- - **Example**: `tor-browser-130.0a1-15.0-1` and `tor-browser-130.0a1-15.0-2`
-- [ ] Push new `tor-browser` branches and the `firefox` tag to `upstream`
-
-### **Rebase previous `-2` rapid branch's HEAD onto current `-1` rapid branch**
-
-- **Desired outcome**:
- - An easy to review branch with the previous rapid branch rebased onto the latest Firefox Nighty tag
- - It must be possible to run `git range-diff` between the previous `-2` and the new branch
- - We want to see only the effects of the rebase
- - No autosquash should happen at this point
- - **Expected difficulties**:
- - Conflicts with upstream developments
- - Sometimes it will be hard to keep a feature working. It's fine to drop it, and create an issue to restore it after a deeper investigation.
-- [ ] Checkout a new local branch for the first part of the `-1` rebase
- - **Example**: `git checkout -b rapid-rebase-part1 origin/tor-browser-130.0a1-15.0-1`
-- [ ] Firefox Nightly-based `tor-browser` rebase:
- - [ ] cherry-pick previous Tor Browser Rapid `-2` branch to new `-1` rebase branch
- - **Example**: `git cherry-pick FIREFOX_NIGHTLY_129_END..origin/tor-browser-129.0a1-15.0-2`
-- [ ] Rebase Verification:
- - [ ] Clean range-diff between the previous rapid branch and current rebase branch
- - **Example**:
- ```bash
- git range-diff FIREFOX_NIGHTLY_129_END..origin/tor-browser-129.0a1-15.0-2 FIREFOX_NIGHTLY_130_END..rapid-rebase-part1
- ```
- - [ ] Optional: clean diff of diffs between previous rapid branch and current rebase branch
- - **Example**:
- ```bash
- git diff FIREFOX_NIGHTLY_129_END origin/tor-browser-129.0a1-15.0-2 > 129.diff
- git diff FIREFOX_NIGHTLY_130_END HEAD > 130.diff
- # A two-column diff tool is suggested rather than plain-diff, e.g., meld on Linux.
- meld 129.diff 130.diff
- ```
- - **Note**: Only differences should be due to resolving merge conflicts with upstream changes from Firefox Nightly
-- [ ] Open MR
-- [ ] Merge
-- [ ] Sign/Tag `HEAD` of the merged `tor-browser` branch:
- - In **tor-browser.git**, checkout the `-1` rapid `tor-browser` branch
- - In **tor-browser-build.git**, run signing script:
- ```bash
- ./tools/browser/sign-tag.torbrowser rapid build1
- ```
- - [ ] Push tag to `upstream`
-
-### **Port new alpha patches to `-1`**
-
-- **Desired outcome**:
- - The previous release-cycle's new alpha patches cherry-picked to the end of the current nightly
- - It must be possible to run `git range-diff ESR-build1..ESR NIGHTLY-build1..`
- - **Expected difficulties**:
- - Conflicts with upstream developments (similar to the previous part)
- - The range might contain cherry-picked upstream commits, which will result in empty commits: it's fine to skip them
- - **Note**: The Tor Browser Alpha branch should be closed at this point and not receiving any more MRs
-- [ ] Checkout a new local branch for the second part of the `-1` rebase
- - **Example**: `git checkout -b rapid-rebase-part2 origin/tor-browser-130.0a1-15.0-1`
-- [ ] Cherry-pick the new `tor-browser` alpha commits (i.e. the new dangling commits which did not appear in the previous Tor Browser Alpha release):
- - **Example** `git cherry-pick tor-browser-128.1.0esr-14.5-1-build1..origin/tor-browser-128.1.0esr-14.5-1`
-- [ ] Rebase Verification
- - [ ] Clean range-diff between the alpha patch set ranges
- - **Example**:
- ```bash
- git range-diff tor-browser-128.1.0esr-14.5-1-build1..origin/tor-browser-128.1.0esr-14.5-1 origin/tor-browser-130.0a1-15.0-1..HEAD
- ```
- - [ ] Clean diff of diffs between the alpha patch set ranges
- - **Example**:
- ```bash
- git diff tor-browser-128.1.0esr-14.5-1-build1 origin/tor-browser-128.1.0esr-14.5-1 > 128.1.0esr.diff
- git diff origin/tor-browser-130.0a1-15.0-1 HEAD > 130.diff
- # A two-column diff tool is suggested rather than plain-diff, e.g., meld on Linux.
- meld 128.1.0esr.diff 130.diff
- ```
- - **Note**: Only differences should be due to resolving merge conflicts with upstream changes from Firefox Nightly
-- [ ] Open MR
-- [ ] Merge
-- [ ] Sign/Tag `HEAD` of the merged `tor-browser` branch:
- - In **tor-browser.git**, checkout the `-1` rapid `tor-browser` branch
- - In **tor-browser-build.git**, run signing script:
- ```bash
- ./tools/browser/sign-tag.torbrowser rapid build2
- ```
- - [ ] Push tag to `upstream`
-
-### **Squash and Reorder tor-browser `-1` branch to new `-2` branch**
-- **Desired outcome**:
- - The rapid branch from the previous step prepared for the next nightly
- - **Rationale**:
- - We squash a lot of commits. We want to keep them a little bit longer rather than squashing them immediately for troubleshooting and documentation purposes.
- - Doing this as a separate pass helps to separate errors due to upstream changes from errors due to processes created by our workflow.
- - **Expected difficulties**:
- - our patches aren't disjoint, therefore we might have conflicts when shuffling them around.
-- [ ] Checkout a new local branch for the `-2` rebase, aligned to -1-build1
- - **Example**: `git checkout -b rapid-rebase-part3 tor-browser-130.0a1-15.0-1-build1`
-- [ ] Rebase with autosquash. This step should be trivial and not involve any conflicts.
- - **Example**: `git rebase -i --autosquash FIREFOX_NIGHTLY_130_END`
-- [ ] Cherry-pick the remaining commits
- - **Example**: `git cherry-pick tor-browser-130.0a1-15.0-1-build1..upstream/tor-browser-130.0a1-15.0-1`
-- [ ] Create a branch for self-reviewing purposes, or take note of the current commit hash somewhere
- - **Example**: `git branch rapid-rebase-part3-review`
- - You do not need to publish this, and you can delete it at the end of the process (`git branch -D rapid-rebase-part3-review`)
- - When you are a reviewer, it might be useful to repeat these steps locally. They should not involve mental overhead (and PieroV has a script to automate this)
-- [ ] Rebase and reorder commits (i.e. replace `fixup `, `fixup -C ` and `squash ` with `pick ` commands)
- - Notice the space at the end, to avoid replacing `fixup!` with `pick!` in the commit subject, even though git will probably not care of such changes
-- [ ] Rebase Verification
- - [ ] Clean range-diff between the temporary review branch and the final branch
- - **Example**:
- ```bash
- git range-diff FIREFOX_NIGHTLY_130_END..rapid-rebase-part3-review FIREFOX_NIGHTLY_130_END..rapid-rebase-part3
- ```
- - If you are the reviewer, it should be trivial to create such a branch on your own, as no shuffling is involved
- - [ ] Clean diff of diffs between rapid branches
- - **Example**:
- ```bash
- git diff FIREFOX_NIGHTLY_130_END tor-browser-130.0a1-15.0-1-build2 > 130-1.diff
- git diff FIREFOX_NIGHTLY_130_END HEAD > 130-2.diff
- ```
- - [ ] Understandable range-diff (i.e. `fixup!` patches are distributed from end of branch next to their parent)
- - **Example**:
- ```bash
- git range-diff FIREFOX_NIGHTLY_130_END..tor-browser-130.0a1-15.0-1-build2 FIREFOX_NIGHTLY_130_END..HEAD
- ```
-- [ ] Open MR
-- [ ] Merge
-- [ ] Sign/Tag `HEAD` of the merged `tor-browser` branch:
- - In **tor-browser.git**, checkout the `-2` rapid `tor-browser` branch
- - In **tor-browser-build.git**, run signing script:
- ```bash
- ./tools/browser/sign-tag.torbrowser rapid build1
- ```
- - [ ] Push tag to `upstream`
-
-### **Create and Tag base-browser `-2` branch**
-- [ ] Find the last commit in the merged `-2` `tor-browser` branch with a `BB XXXXX...` subject
-- [ ] Create new branch from this commit
- - Branch name in the form: `base-browser-$(NIGHTLY_VERSION)-$(BROWSER_VERSION)-2`
- - **Example**: `base-browser-130.0a1-15.0-2`
-- [ ] Push branch to `upstream`
-- [ ] Sign/Tag latest `HEAD` of the merged `base-browser` branch:
- - In **tor-browser.git**, checkout the `-2` rapid `tor-browser` branch
- - In **tor-browser-build.git**, run signing script:
- ```bash
- ./tools/browser/sign-tag.basebrowser rapid build1 ${COMMIT}
- ```
- - [ ] Push tag to `upstream`
-
-<!-- Do not edit beneath this line <3 -->
-
----
-
-/label ~"Apps::Product::TorBrowser"
-/label ~"Apps::Type::Rebase"
-/label ~"Apps::Impact::High"
-/label ~"Priority::High"
=====================================
.gitlab/issue_templates/Default.md
=====================================
@@ -16,10 +16,8 @@ Please select the appropriate issue template from the **Description** drop-down.
- 🕰️ **Time-Gated Feature** - implement a new feature which must be enabled for a particular window in time
- ⬅️ **Backport** - cherry-pick change to other release channels
- ❌ **Revert** - revert a change
-- ⤵️ **Rebase - Alpha** - rebase alpha to latest Firefox ESR version
+- ⤵️ **Rebase - Alpha** - rebase alpha to latest Firefox Nightly version
- ⤵️ **Rebase - Stable** - rebase stable to latest Firefox ESR version
-- ⤵️ **Rebase - Legacy** - rebase legacy to latest Firefox ESR 115 version
-- ⤵️ **Rebase - Rapid** - rebase rapid to latest Firefox Nightly version
- ⬆️ **Uplift** - uplift change to upstream project
- 🛡️ **Security Backports** - cherry-pick security fixes from Firefox
- 🚨 **Emergency Security Issue** - manage fixing and publishing a critical security fix
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/2a86ee…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/2a86ee…
You're receiving this email because of your account on gitlab.torproject.org.
1
0
[Git][tpo/applications/mullvad-browser][mullvad-browser-147.0a1-16.0-2] 5 commits: Bug 1704891 - Move checking for/setting up `node` executables to `nodeutil.py`...
by Pier Angelo Vendrame (@pierov) 28 Jan '26
by Pier Angelo Vendrame (@pierov) 28 Jan '26
28 Jan '26
Pier Angelo Vendrame pushed to branch mullvad-browser-147.0a1-16.0-2 at The Tor Project / Applications / Mullvad Browser
Commits:
e3a40de1 by Alex Hochheiden at 2026-01-28T11:52:18+01:00
Bug 1704891 - Move checking for/setting up `node` executables to `nodeutil.py` r=Standard8,firefox-build-system-reviewers,perftest-reviewers,mozperftest-reviewers,sparky,glandium
Differential Revision: https://phabricator.services.mozilla.com/D264253
- - - - -
724c4198 by Alex Hochheiden at 2026-01-28T11:52:19+01:00
Bug 1967968 - Add `Terser` toolchain in CI r=firefox-build-system-reviewers,glandium,Standard8
Differential Revision: https://phabricator.services.mozilla.com/D266031
- - - - -
103827e1 by Alex Hochheiden at 2026-01-28T11:52:19+01:00
Bug 1967968 - Use `Terser` instead of `JSMin` for Javascript minification r=calixte,marco,firefox-build-system-reviewers,Standard8,glandium
- `PDF.js` is now always minified, regardless of config settings.
Differential Revision: https://phabricator.services.mozilla.com/D264160
- - - - -
5963d93a by Alex Hochheiden at 2026-01-28T11:52:20+01:00
Bug 1967968 - Remove vendored `jsmin` package r=firefox-build-system-reviewers,mach-reviewers,ahal,nalexander
Differential Revision: https://phabricator.services.mozilla.com/D264259
- - - - -
361ba8f7 by Pier Angelo Vendrame at 2026-01-28T11:52:20+01:00
fixup! Base Browser's .mozconfigs.
BB 44532: Backport Terser and enable JS minifying on Android.
- - - - -
55 changed files:
- .gitignore
- .hgignore
- browser/config/mozconfigs/base-browser-android
- build/sparse-profiles/taskgraph
- mozconfig-android-all
- python/mozbuild/mozbuild/nodeutil.py
- python/mozbuild/mozpack/files.py
- − python/mozbuild/mozpack/test/support/minify_js_verify.py
- python/mozbuild/mozpack/test/test_files.py
- python/mozperftest/mozperftest/test/browsertime/runner.py
- python/mozperftest/mozperftest/test/noderunner.py
- python/mozperftest/mozperftest/tests/test_browsertime.py
- python/sites/mach.txt
- taskcluster/kinds/artifact-build/kind.yml
- taskcluster/kinds/build-fat-aar/kind.yml
- taskcluster/kinds/build/kind.yml
- taskcluster/kinds/instrumented-build/kind.yml
- taskcluster/kinds/source-test/mozlint.yml
- taskcluster/kinds/source-test/python-android.yml
- taskcluster/kinds/source-test/python.yml
- taskcluster/kinds/toolchain/misc.yml
- + taskcluster/scripts/misc/terser.sh
- − third_party/python/jsmin/CHANGELOG.txt
- − third_party/python/jsmin/LICENSE.txt
- − third_party/python/jsmin/MANIFEST.in
- − third_party/python/jsmin/PKG-INFO
- − third_party/python/jsmin/README.rst
- − third_party/python/jsmin/jsmin.egg-info/PKG-INFO
- − third_party/python/jsmin/jsmin.egg-info/SOURCES.txt
- − third_party/python/jsmin/jsmin.egg-info/dependency_links.txt
- − third_party/python/jsmin/jsmin.egg-info/top_level.txt
- − third_party/python/jsmin/jsmin/__init__.py
- − third_party/python/jsmin/jsmin/__main__.py
- − third_party/python/jsmin/jsmin/test.py
- − third_party/python/jsmin/notes.txt
- − third_party/python/jsmin/setup.cfg
- − third_party/python/jsmin/setup.py
- third_party/python/pyproject.toml
- third_party/python/requirements.txt
- third_party/python/uv.lock
- third_party/python/uv.lock.hash
- toolkit/moz.configure
- − toolkit/mozapps/installer/js-compare-ast.js
- toolkit/mozapps/installer/packager.mk
- toolkit/mozapps/installer/packager.py
- tools/browsertime/mach_commands.py
- tools/lint/eslint/__init__.py
- tools/lint/eslint/setup_helper.py
- tools/lint/node-licenses.yml
- tools/lint/node-licenses/__init__.py
- tools/lint/stylelint/__init__.py
- tools/moztreedocs/mach_commands.py
- + tools/terser/package-lock.json
- + tools/terser/package.json
- tools/ts/mach_commands.py
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/0a…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/0a…
You're receiving this email because of your account on gitlab.torproject.org.
1
0
[Git][tpo/applications/mullvad-browser][mullvad-browser-147.0a1-16.0-2] 5 commits: dropme! MB 37: Customization for the about dialog
by henry (@henry) 28 Jan '26
by henry (@henry) 28 Jan '26
28 Jan '26
henry pushed to branch mullvad-browser-147.0a1-16.0-2 at The Tor Project / Applications / Mullvad Browser
Commits:
9c93cb89 by Henry Wilkes at 2026-01-27T17:42:31+00:00
dropme! MB 37: Customization for the about dialog
TB 44522: Revert mullvad-browser changes to aboutDialog.xhtml.
- - - - -
1e5001e0 by henry at 2026-01-27T17:43:25+00:00
BB 44522: Modify the about dialog.
We hide the Firefox-specific elements and apply some common styling
rules.
(cherry picked from commit 06d6d7b068b6d6d9346567e3ddb44982e1aae9ca)
Co-authored-by: Henry Wilkes <henry(a)torproject.org>
- - - - -
4cf4cd4f by Henry Wilkes at 2026-01-27T20:02:49+00:00
fixup! MB 37: Customization for the about dialog
TB 44522: Reapply the mullvad-browser changes.
Also fixes mullvad-browser#502.
- - - - -
397c8d3c by Henry Wilkes at 2026-01-27T20:02:50+00:00
fixup! MB 1: Mullvad Browser branding
TB 44522: Simplify branding aboutDialog.css since most changes were
moved to Base Browser.
- - - - -
0aa04069 by Henry Wilkes at 2026-01-27T20:02:51+00:00
fixup! Mullvad Browser strings
MB 502: Add missing "Privacy Policy" string.
- - - - -
6 changed files:
- browser/base/content/aboutDialog.css
- browser/base/content/aboutDialog.xhtml
- browser/branding/mb-alpha/content/aboutDialog.css
- browser/branding/mb-nightly/content/aboutDialog.css
- browser/branding/mb-release/content/aboutDialog.css
- toolkit/locales/en-US/toolkit/global/mullvad-browser.ftl
Changes:
=====================================
browser/base/content/aboutDialog.css
=====================================
@@ -120,6 +120,10 @@
}
}
+/* #releasenotes is moved to the same line as #aboutDialogHelpLink and
+ * #submit-feedback, so we also want #aboutDialogHelpLink to have a starting
+ * margin. */
+#releasenotes:not([hidden]) ~ #aboutDialogHelpLink,
#submit-feedback {
margin-inline-start: 0.9em;
}
@@ -169,3 +173,38 @@
content: url("chrome://global/skin/icons/loading.svg");
}
}
+
+/* Common Base Browser rules. */
+
+/* Hide Firefox elements. */
+#communityExperimentalDesc,
+#communityDesc,
+#contributeDesc,
+.bottom-link:not(.visible-bottom-link) {
+ /* NOTE: Anything hidden here should also be removed from the aria-describedby
+ * of the dialog element. */
+ display: none;
+}
+
+#aboutDialogContainer {
+ background-color: var(--about-dialog-background-color);
+ color: var(--about-dialog-text-color);
+ color-scheme: var(--about-dialog-color-scheme);
+}
+
+#rightBox {
+ background-size: auto;
+ margin-inline: 30px;
+}
+
+#bottomBox {
+ background-color: var(--about-dialog-background-color-bottom);
+ padding: 15px 10px 15px;
+}
+
+#trademark {
+ font-size: xx-small;
+ text-align: center;
+ color: var(--about-dialog-text-color-trademark);
+ margin-block: 10px;
+}
=====================================
browser/base/content/aboutDialog.xhtml
=====================================
@@ -14,7 +14,7 @@
data-l10n-id="aboutDialog-title"
#endif
role="dialog"
- aria-describedby="version distribution distributionId communityDesc contributeDesc trademark"
+ aria-describedby="version distribution distributionId mullvadBrowserDesc trademark"
>
#ifdef XP_MACOSX
#include macWindow.inc.xhtml
@@ -102,11 +102,15 @@
<!-- This HBOX is duplicated above without class="update" -->
<hbox align="baseline">
<label id="version" class="update"/>
- <label id="releasenotes" is="text-link" hidden="true" data-l10n-id="releaseNotes-link"/>
</hbox>
- <description class="text-blurb" hidden="true">
- <label id="aboutDialogHelpLink" is="text-link" data-l10n-id="aboutdialog-help-user"/>
- <label id="submit-feedback" is="text-link" data-l10n-id="aboutdialog-submit-feedback"/>
+ <description class="text-blurb">
+ <!-- Place release notes on the same line as the help and
+ - feedback links. We do not want the release notes on the
+ - same line as the version because it may overflow.
+ - See tor-browerr#42720. -->
+ <label id="releasenotes" is="text-link" hidden="true" data-l10n-id="releaseNotes-link"/>
+ <label id="aboutDialogHelpLink" is="text-link" hidden="true" data-l10n-id="aboutdialog-help-user"/>
+ <label id="submit-feedback" is="text-link" hidden="true" data-l10n-id="aboutdialog-submit-feedback"/>
</description>
</vbox>
#endif
@@ -126,7 +130,15 @@
<label is="text-link" useoriginprincipal="true" href="about:credits" data-l10n-name="community-exp-creditsLink"/>
</description>
</vbox>
- <description class="text-blurb" data-l10n-id="mullvad-about-desc">
+ <description class="text-blurb" id="communityDesc" data-l10n-id="community-2">
+ <label is="text-link" href="https://www.mozilla.org/?utm_source=firefox-browser&utm_medium=firefox-…" data-l10n-name="community-mozillaLink"/>
+ <label is="text-link" useoriginprincipal="true" href="about:credits" data-l10n-name="community-creditsLink"/>
+ </description>
+ <description class="text-blurb" id="contributeDesc" data-l10n-id="helpus">
+ <label is="text-link" href="https://foundation.mozilla.org/?form=firefox-about" data-l10n-name="helpus-donateLink"/>
+ <label is="text-link" href="https://www.mozilla.org/contribute/?utm_source=firefox-browser&utm_medi…" data-l10n-name="helpus-getInvolvedLink"/>
+ </description>
+ <description class="text-blurb" id="mullvadBrowserDesc" data-l10n-id="mullvad-about-desc">
<label is="text-link" href="https://mullvad.net" data-l10n-name="mullvad-about-mullvadLink"/>
<label is="text-link" href="https://www.torproject.org" data-l10n-name="mullvad-about-torProjectLink"/>
</description>
@@ -139,10 +151,11 @@
</hbox>
<vbox id="bottomBox">
<hbox pack="center">
- <label is="text-link" class="bottom-link" useoriginprincipal="true" href="about:license" data-l10n-id="bottomLinks-license"/>
- <label is="text-link" class="bottom-link" useoriginprincipal="true" href="about:rights" data-l10n-id="bottomLinks-rights"/>
- <label is="text-link" class="bottom-link" href="https://mullvad.net/en/help/privacy-policy/" data-l10n-id="bottomLinks-privacy"/>
- <label is="text-link" class="bottom-link" useoriginprincipal="true" href="about:telemetry" data-l10n-id="mullvad-about-telemetryLink"/>
+ <label is="text-link" class="bottom-link visible-bottom-link" useoriginprincipal="true" href="about:license" data-l10n-id="bottomLinks-license"/>
+ <label is="text-link" class="bottom-link" href="https://www.mozilla.org/about/legal/terms/firefox/" data-l10n-id="bottom-links-terms"/>
+ <label is="text-link" class="bottom-link" href="https://www.mozilla.org/privacy/firefox/?utm_source=firefox-browser&utm…" data-l10n-id="bottom-links-privacy"/>
+ <label is="text-link" class="bottom-link visible-bottom-link" href="https://mullvad.net/en/help/privacy-policy/" data-l10n-id="mullvad-about-privacy-policy"/>
+ <label is="text-link" class="bottom-link visible-bottom-link" useoriginprincipal="true" href="about:telemetry" data-l10n-id="mullvad-about-telemetryLink"/>
</hbox>
<description id="trademark" data-l10n-id="trademarkInfo"></description>
</vbox>
=====================================
browser/branding/mb-alpha/content/aboutDialog.css
=====================================
@@ -2,27 +2,15 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-#aboutDialogContainer {
- background-color: #0b2138;
- color: #fff;
- color-scheme: dark;
+:root {
+ --about-dialog-background-color: #0b2138;
+ --about-dialog-text-color: #fff;
+ --about-dialog-color-scheme: dark;
+ --about-dialog-background-color-bottom: rgba(0, 0, 0, 0.2);
+ --about-dialog-text-color-trademark: #999999;
}
#rightBox {
- margin-inline: 30px;
- background-size: auto;
/* Increase the default width to fit the about-wordmark.svg width. */
width: 559px;
}
-
-#bottomBox {
- background-color: rgba(0, 0, 0, 0.2);
- padding: 15px 10px 15px;
-}
-
-#trademark {
- font-size: xx-small;
- text-align: center;
- color: #999999;
- margin-block: 10px;
-}
=====================================
browser/branding/mb-nightly/content/aboutDialog.css
=====================================
@@ -2,27 +2,15 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-#aboutDialogContainer {
- background-color: #0b2138;
- color: #fff;
- color-scheme: dark;
+:root {
+ --about-dialog-background-color: #0b2138;
+ --about-dialog-text-color: #fff;
+ --about-dialog-color-scheme: dark;
+ --about-dialog-background-color-bottom: rgba(0, 0, 0, 0.2);
+ --about-dialog-text-color-trademark: #999999;
}
#rightBox {
- margin-inline: 30px;
- background-size: auto;
/* Increase the default width to fit the about-wordmark.svg width. */
width: 601px;
}
-
-#bottomBox {
- background-color: rgba(0, 0, 0, 0.2);
- padding: 15px 10px 15px;
-}
-
-#trademark {
- font-size: xx-small;
- text-align: center;
- color: #999999;
- margin-block: 10px;
-}
=====================================
browser/branding/mb-release/content/aboutDialog.css
=====================================
@@ -2,25 +2,10 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-#aboutDialogContainer {
- background-color: #0b2138;
- color: #fff;
- color-scheme: dark;
-}
-
-#rightBox {
- margin-inline: 30px;
- background-size: auto;
-}
-
-#bottomBox {
- background-color: rgba(0, 0, 0, 0.2);
- padding: 15px 10px 15px;
-}
-
-#trademark {
- font-size: xx-small;
- text-align: center;
- color: #999999;
- margin-block: 10px;
+:root {
+ --about-dialog-background-color: #0b2138;
+ --about-dialog-text-color: #fff;
+ --about-dialog-color-scheme: dark;
+ --about-dialog-background-color-bottom: rgba(0, 0, 0, 0.2);
+ --about-dialog-text-color-trademark: #999999;
}
=====================================
toolkit/locales/en-US/toolkit/global/mullvad-browser.ftl
=====================================
@@ -10,6 +10,7 @@ mullvad-about-readMore = Read more
# $emailAddress (String) - The email address of Mullvad's support
mullvad-about-feedback2 = Help & feedback: { $emailAddress }
mullvad-about-telemetryLink = Telemetry
+mullvad-about-privacy-policy = Privacy Policy
## Mullvad browser home page.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/33…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/33…
You're receiving this email because of your account on gitlab.torproject.org.
1
0
[Git][tpo/applications/tor-browser-build][main] Bug 41678: Use set -euo pipefail by default.
by Pier Angelo Vendrame (@pierov) 28 Jan '26
by Pier Angelo Vendrame (@pierov) 28 Jan '26
28 Jan '26
Pier Angelo Vendrame pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
cb3b1bef by Pier Angelo Vendrame at 2026-01-28T11:41:16+01:00
Bug 41678: Use set -euo pipefail by default.
Before this change, we were using only `set -e`, but since we use pipes
e.g., when detecting Android dependencies (with tee), it makes sense to
add also pipefail.
- - - - -
10 changed files:
- projects/android-sdk/config
- projects/browser/build.android
- projects/cbindgen/build
- projects/firefox/build
- projects/gcc-cross/build
- projects/gcc/build
- projects/go/build
- projects/tor/build
- rbm
- rbm.conf
Changes:
=====================================
projects/android-sdk/config
=====================================
@@ -7,7 +7,7 @@ var:
mkdir -p /var/tmp/dist
tar -C /var/tmp/dist -xf $rootdir/[% c("sdk_tarfile") %]
export ANDROID_HOME=/var/tmp/dist/[% project %]
- [[ -n "${ANDROID_NDK_HOME}" ]] && ln -s $ANDROID_NDK_HOME $ANDROID_HOME/ndk/[% pc("android-ndk", "version") %]
+ [[ -n "${ANDROID_NDK_HOME:-}" ]] && ln -s "${ANDROID_NDK_HOME:-}" "$ANDROID_HOME/ndk/[% pc('android-ndk', 'version') %]"
export PATH=$PATH:$ANDROID_HOME/build-tools/[% c("version") %]
google_repo: https://dl.google.com/android/repository
android_release_dir: android-16
=====================================
projects/browser/build.android
=====================================
@@ -94,7 +94,7 @@ function generate_apk {
# flag in the manifest.
apksigner sign --verbose --min-sdk-version [% c("var/android_min_api") %] --ks $rootdir/android-qa.keystore --out $final_apk --in $aligned_apk --ks-key-alias androidqakey --key-pass pass:android --ks-pass pass:android
- local unsign_patch=$3
+ local unsign_patch=${3:-}
if [ -n "$unsign_patch" ]; then
bsdiff $final_apk $aligned_apk $unsign_patch
fi
=====================================
projects/cbindgen/build
=====================================
@@ -6,7 +6,7 @@ mkdir -p $distdir/[% project %]
tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/rust') %]
export PATH="/var/tmp/dist/rust/bin:$PATH"
[% IF c("var/linux") -%]
- export LD_LIBRARY_PATH="/var/tmp/dist/rust/lib:$LD_LIBRARY_PATH"
+ export LD_LIBRARY_PATH="/var/tmp/dist/rust/lib:${LD_LIBRARY_PATH:-}"
[% END -%]
mkdir -p /var/tmp/build
tar -C /var/tmp/build -xf [% project %]-[% c('version') %].tar.[% c('compress_tar') %]
=====================================
projects/firefox/build
=====================================
@@ -48,7 +48,7 @@ export PATH="/var/tmp/dist/rust/bin:/var/tmp/dist/cbindgen:/var/tmp/dist/node/bi
# Exporting `PKG_CONFIG_PATH` in the mozconfig file is causing build
# breakage in Rust code. It seems that environment variable is not passed
# down properly in that case. Thus, we set it here in the build script.
- export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}:/usr/lib/[% c("var/crosstarget") %]/pkgconfig"
+ export PKG_CONFIG_PATH="/usr/lib/[% c('var/crosstarget') %]/pkgconfig:${PKG_CONFIG_PATH:-}"
[% END -%]
[% IF c("var/dev_artifacts") -%]
python3 -m pip install $rootdir/[% c('input_files_by_name/python-zstandard') %]/*.whl
@@ -267,10 +267,7 @@ RBM_TB_EOF
cd $distdir
[% IF c("var/linux") -%]
- [% IF c("var/linux-cross") -%]
- CROSS_PREFIX=[% c("var/crosstarget") %]-
- [% END -%]
-
+ CROSS_PREFIX=[% IF c("var/linux-cross") %][% c("var/crosstarget") %]-[% END %]
OBJCOPY="${CROSS_PREFIX}objcopy"
STRIP="${CROSS_PREFIX}strip"
=====================================
projects/gcc-cross/build
=====================================
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
[% c("var/set_default_env") -%]
mkdir -p /var/tmp/build
distdir=/var/tmp/dist/[% c("var/distdir") %]
=====================================
projects/gcc/build
=====================================
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
[% c("var/set_default_env") -%]
mkdir -p /var/tmp/build
=====================================
projects/go/build
=====================================
@@ -24,13 +24,13 @@ cd /var/tmp/dist/go/src
[% ELSIF c("var/macos") -%]
unset LDFLAGS
rm -Rf $clangdir/helpers
- export CC="$clangdir/bin/clang [% c("var/FLAGS") %]"
+ export CC="$clangdir/bin/clang [% c('var/FLAGS') %]"
# Create a cc-for-target script that closes over CC, CFLAGS, and LDFLAGS.
# Go's CC_FOR_TARGET only allows a command name, not a command with arguments.
# https://github.com/golang/go/issues/15457
CC_FOR_TARGET="$(pwd)/cc-for-target"
echo "#!/bin/sh" > "$CC_FOR_TARGET"
- echo "exec $CC $CFLAGS $LDFLAGS \"\$@\"" >> "$CC_FOR_TARGET"
+ echo "exec $CC \"\$@\"" >> "$CC_FOR_TARGET"
chmod +x "$CC_FOR_TARGET"
CGO_ENABLED=1 CC_FOR_TARGET="$CC_FOR_TARGET" CC= CFLAGS= LDFLAGS= ./make.bash
[% ELSIF c("var/windows") -%]
=====================================
projects/tor/build
=====================================
@@ -109,10 +109,7 @@ cd $distdir
[% END %]
[% IF c("var/linux") %]
- [% IF c("var/linux-cross") -%]
- CROSS_PREFIX=[% c("var/crosstarget") %]-
- [% END -%]
-
+ CROSS_PREFIX=[% IF c("var/linux-cross") %][% c("var/crosstarget") %]-[% END %]
OBJCOPY="${CROSS_PREFIX}objcopy"
STRIP="${CROSS_PREFIX}strip"
=====================================
rbm
=====================================
@@ -1 +1 @@
-Subproject commit 8885e87c2def8fe2f85c76fd8df0226fff99f9a4
+Subproject commit 36608a50ccf8feedcd03eb846c606718f5ef2d6b
=====================================
rbm.conf
=====================================
@@ -255,8 +255,11 @@ var:
sign_build: '[% ENV.RBM_SIGN_BUILD %]'
sign_build_gpg_opts: '[% ENV.RBM_GPG_OPTS %]'
+ set_default_env_shell_flags: 'set -euo pipefail'
set_default_env: |
- set -e
+ [% IF !c("getting_id") -%]
+ [% c('var/set_default_env_shell_flags') %]
+ [% END -%]
[% FOREACH env = c('ENV') -%]
export [% env.key %]="[% env.value %]"
[% END -%]
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/c…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/c…
You're receiving this email because of your account on gitlab.torproject.org.
1
0
[Git][tpo/applications/tor-browser][base-browser-147.0a1-16.0-2] 5 commits: Bug 1704891 - Move checking for/setting up `node` executables to `nodeutil.py`...
by Pier Angelo Vendrame (@pierov) 28 Jan '26
by Pier Angelo Vendrame (@pierov) 28 Jan '26
28 Jan '26
Pier Angelo Vendrame pushed to branch base-browser-147.0a1-16.0-2 at The Tor Project / Applications / Tor Browser
Commits:
864a50b0 by Alex Hochheiden at 2026-01-28T11:34:13+01:00
Bug 1704891 - Move checking for/setting up `node` executables to `nodeutil.py` r=Standard8,firefox-build-system-reviewers,perftest-reviewers,mozperftest-reviewers,sparky,glandium
Differential Revision: https://phabricator.services.mozilla.com/D264253
- - - - -
2f84b6fc by Alex Hochheiden at 2026-01-28T11:34:13+01:00
Bug 1967968 - Add `Terser` toolchain in CI r=firefox-build-system-reviewers,glandium,Standard8
Differential Revision: https://phabricator.services.mozilla.com/D266031
- - - - -
88447829 by Alex Hochheiden at 2026-01-28T11:34:13+01:00
Bug 1967968 - Use `Terser` instead of `JSMin` for Javascript minification r=calixte,marco,firefox-build-system-reviewers,Standard8,glandium
- `PDF.js` is now always minified, regardless of config settings.
Differential Revision: https://phabricator.services.mozilla.com/D264160
- - - - -
8c8699e8 by Alex Hochheiden at 2026-01-28T11:34:14+01:00
Bug 1967968 - Remove vendored `jsmin` package r=firefox-build-system-reviewers,mach-reviewers,ahal,nalexander
Differential Revision: https://phabricator.services.mozilla.com/D264259
- - - - -
29e6a352 by Pier Angelo Vendrame at 2026-01-28T11:34:14+01:00
fixup! Base Browser's .mozconfigs.
BB 44532: Backport Terser and enable JS minifying on Android.
- - - - -
55 changed files:
- .gitignore
- .hgignore
- browser/config/mozconfigs/base-browser-android
- build/sparse-profiles/taskgraph
- mozconfig-android-all
- python/mozbuild/mozbuild/nodeutil.py
- python/mozbuild/mozpack/files.py
- − python/mozbuild/mozpack/test/support/minify_js_verify.py
- python/mozbuild/mozpack/test/test_files.py
- python/mozperftest/mozperftest/test/browsertime/runner.py
- python/mozperftest/mozperftest/test/noderunner.py
- python/mozperftest/mozperftest/tests/test_browsertime.py
- python/sites/mach.txt
- taskcluster/kinds/artifact-build/kind.yml
- taskcluster/kinds/build-fat-aar/kind.yml
- taskcluster/kinds/build/kind.yml
- taskcluster/kinds/instrumented-build/kind.yml
- taskcluster/kinds/source-test/mozlint.yml
- taskcluster/kinds/source-test/python-android.yml
- taskcluster/kinds/source-test/python.yml
- taskcluster/kinds/toolchain/misc.yml
- + taskcluster/scripts/misc/terser.sh
- − third_party/python/jsmin/CHANGELOG.txt
- − third_party/python/jsmin/LICENSE.txt
- − third_party/python/jsmin/MANIFEST.in
- − third_party/python/jsmin/PKG-INFO
- − third_party/python/jsmin/README.rst
- − third_party/python/jsmin/jsmin.egg-info/PKG-INFO
- − third_party/python/jsmin/jsmin.egg-info/SOURCES.txt
- − third_party/python/jsmin/jsmin.egg-info/dependency_links.txt
- − third_party/python/jsmin/jsmin.egg-info/top_level.txt
- − third_party/python/jsmin/jsmin/__init__.py
- − third_party/python/jsmin/jsmin/__main__.py
- − third_party/python/jsmin/jsmin/test.py
- − third_party/python/jsmin/notes.txt
- − third_party/python/jsmin/setup.cfg
- − third_party/python/jsmin/setup.py
- third_party/python/pyproject.toml
- third_party/python/requirements.txt
- third_party/python/uv.lock
- third_party/python/uv.lock.hash
- toolkit/moz.configure
- − toolkit/mozapps/installer/js-compare-ast.js
- toolkit/mozapps/installer/packager.mk
- toolkit/mozapps/installer/packager.py
- tools/browsertime/mach_commands.py
- tools/lint/eslint/__init__.py
- tools/lint/eslint/setup_helper.py
- tools/lint/node-licenses.yml
- tools/lint/node-licenses/__init__.py
- tools/lint/stylelint/__init__.py
- tools/moztreedocs/mach_commands.py
- + tools/terser/package-lock.json
- + tools/terser/package.json
- tools/ts/mach_commands.py
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/9eae5c…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/9eae5c…
You're receiving this email because of your account on gitlab.torproject.org.
1
0
[Git][tpo/applications/tor-browser][tor-browser-147.0a1-16.0-2] 5 commits: Bug 1704891 - Move checking for/setting up `node` executables to `nodeutil.py`...
by Pier Angelo Vendrame (@pierov) 28 Jan '26
by Pier Angelo Vendrame (@pierov) 28 Jan '26
28 Jan '26
Pier Angelo Vendrame pushed to branch tor-browser-147.0a1-16.0-2 at The Tor Project / Applications / Tor Browser
Commits:
a9d4babc by Alex Hochheiden at 2026-01-27T18:56:21+00:00
Bug 1704891 - Move checking for/setting up `node` executables to `nodeutil.py` r=Standard8,firefox-build-system-reviewers,perftest-reviewers,mozperftest-reviewers,sparky,glandium
Differential Revision: https://phabricator.services.mozilla.com/D264253
- - - - -
5c4b809c by Alex Hochheiden at 2026-01-27T18:56:21+00:00
Bug 1967968 - Add `Terser` toolchain in CI r=firefox-build-system-reviewers,glandium,Standard8
Differential Revision: https://phabricator.services.mozilla.com/D266031
- - - - -
589b88d2 by Alex Hochheiden at 2026-01-27T18:56:21+00:00
Bug 1967968 - Use `Terser` instead of `JSMin` for Javascript minification r=calixte,marco,firefox-build-system-reviewers,Standard8,glandium
- `PDF.js` is now always minified, regardless of config settings.
Differential Revision: https://phabricator.services.mozilla.com/D264160
- - - - -
bef280d7 by Alex Hochheiden at 2026-01-27T18:56:21+00:00
Bug 1967968 - Remove vendored `jsmin` package r=firefox-build-system-reviewers,mach-reviewers,ahal,nalexander
Differential Revision: https://phabricator.services.mozilla.com/D264259
- - - - -
2a86ee9f by Pier Angelo Vendrame at 2026-01-27T18:56:21+00:00
fixup! Base Browser's .mozconfigs.
BB 44532: Backport Terser and enable JS minifying on Android.
- - - - -
55 changed files:
- .gitignore
- .hgignore
- browser/config/mozconfigs/base-browser-android
- build/sparse-profiles/taskgraph
- mozconfig-android-all
- python/mozbuild/mozbuild/nodeutil.py
- python/mozbuild/mozpack/files.py
- − python/mozbuild/mozpack/test/support/minify_js_verify.py
- python/mozbuild/mozpack/test/test_files.py
- python/mozperftest/mozperftest/test/browsertime/runner.py
- python/mozperftest/mozperftest/test/noderunner.py
- python/mozperftest/mozperftest/tests/test_browsertime.py
- python/sites/mach.txt
- taskcluster/kinds/artifact-build/kind.yml
- taskcluster/kinds/build-fat-aar/kind.yml
- taskcluster/kinds/build/kind.yml
- taskcluster/kinds/instrumented-build/kind.yml
- taskcluster/kinds/source-test/mozlint.yml
- taskcluster/kinds/source-test/python-android.yml
- taskcluster/kinds/source-test/python.yml
- taskcluster/kinds/toolchain/misc.yml
- + taskcluster/scripts/misc/terser.sh
- − third_party/python/jsmin/CHANGELOG.txt
- − third_party/python/jsmin/LICENSE.txt
- − third_party/python/jsmin/MANIFEST.in
- − third_party/python/jsmin/PKG-INFO
- − third_party/python/jsmin/README.rst
- − third_party/python/jsmin/jsmin.egg-info/PKG-INFO
- − third_party/python/jsmin/jsmin.egg-info/SOURCES.txt
- − third_party/python/jsmin/jsmin.egg-info/dependency_links.txt
- − third_party/python/jsmin/jsmin.egg-info/top_level.txt
- − third_party/python/jsmin/jsmin/__init__.py
- − third_party/python/jsmin/jsmin/__main__.py
- − third_party/python/jsmin/jsmin/test.py
- − third_party/python/jsmin/notes.txt
- − third_party/python/jsmin/setup.cfg
- − third_party/python/jsmin/setup.py
- third_party/python/pyproject.toml
- third_party/python/requirements.txt
- third_party/python/uv.lock
- third_party/python/uv.lock.hash
- toolkit/moz.configure
- − toolkit/mozapps/installer/js-compare-ast.js
- toolkit/mozapps/installer/packager.mk
- toolkit/mozapps/installer/packager.py
- tools/browsertime/mach_commands.py
- tools/lint/eslint/__init__.py
- tools/lint/eslint/setup_helper.py
- tools/lint/node-licenses.yml
- tools/lint/node-licenses/__init__.py
- tools/lint/stylelint/__init__.py
- tools/moztreedocs/mach_commands.py
- + tools/terser/package-lock.json
- + tools/terser/package.json
- tools/ts/mach_commands.py
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/71e626…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/71e626…
You're receiving this email because of your account on gitlab.torproject.org.
1
0
[Git][tpo/applications/tor-browser-build][main] Bug 41702: Switch from uglifyjs to terser.
by Pier Angelo Vendrame (@pierov) 28 Jan '26
by Pier Angelo Vendrame (@pierov) 28 Jan '26
28 Jan '26
Pier Angelo Vendrame pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
abe0cfdb by Pier Angelo Vendrame at 2026-01-28T10:05:12+01:00
Bug 41702: Switch from uglifyjs to terser.
Mozilla is using terser, so follow them and use terser as well.
- - - - -
13 changed files:
- projects/browser/build.android
- projects/browser/config
- projects/geckoview/build_common
- projects/geckoview/config
- projects/geckoview/list_toolchain_updates_checks
- + projects/terser/README.md
- + projects/terser/build
- + projects/terser/config
- + projects/terser/package-lock.json
- + projects/terser/package.json
- − projects/uglifyjs/README.md
- − projects/uglifyjs/build
- − projects/uglifyjs/config
Changes:
=====================================
projects/browser/build.android
=====================================
@@ -3,12 +3,6 @@
[% pc('android-sdk', 'var/setup', { sdk_tarfile => c("input_files_by_name/android-sdk") }) %]
-[% IF c("var/android-x86_64") -%]
- tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/node') %]
- export PATH=/var/tmp/dist/node/bin:$PATH
- tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/uglifyjs') %]
-[% END -%]
-
# Bundle our extension(s).
#
# NoScript will be copied over to the profile folder
@@ -65,11 +59,6 @@ function generate_apk {
[% IF c("var/tor-browser") -%]
cp -a ../moat_countries.json ../tor/pluggable_transports/pt_config.json chrome/toolkit/content/global/
[% END -%]
- [% IF c("var/android-x86_64") -%]
- find actors chrome modules moz-src \
- -name '*.js' -or -name '*.mjs' \
- -exec /var/tmp/dist/uglifyjs/bin/uglifyjs --in-situ {} \;
- [% END -%]
[% IF !c("var/android-armv7") -%]
rm -rf armeabi-v7a
[% END -%]
=====================================
projects/browser/config
=====================================
@@ -160,9 +160,3 @@ input_files:
# tor-browser-build#40920
- filename: sort-baseline.py
enable: '[% c("var/android") %]'
- - project: node
- name: node
- enable: '[% c("var/android-x86_64") %]'
- - project: uglifyjs
- name: uglifyjs
- enable: '[% c("var/android-x86_64") %]'
=====================================
projects/geckoview/build_common
=====================================
@@ -27,6 +27,8 @@ export NIMBUS_FML=/var/tmp/dist/application-services/nimbus-fml
tar -C /var/tmp/build -xf [% project %]-[% c('version') %].tar.[% c('compress_tar') %]
+tar -C /var/tmp/build/[% project %]-*/tools/terser -xf [% c("input_files_by_name/terser") %]
+
[% c("var/set_MOZ_BUILD_DATE") %]
export JAVA_HOME=/usr/lib/jvm/java-1.17.0-openjdk-amd64
=====================================
projects/geckoview/config
=====================================
@@ -132,6 +132,9 @@ steps:
name: glean-wheels
sha256sum: '[% pc("glean-parser", "var/glean_wheels_sha256sum") %]'
enable: '[% !c("var/generate_gradle_dependencies_list") %]'
+ - project: terser
+ name: terser
+ pkg_type: build
- name: tor-expert-bundle-aar
project: tor-expert-bundle-aar
pkg_type: build
@@ -190,6 +193,8 @@ input_files:
- project: oss-licenses-plugin
name: oss-licenses-plugin
enable: '[% !c("var/generate_gradle_dependencies_list") %]'
+ - project: terser
+ name: terser
- name: tor-expert-bundle-aar
project: tor-expert-bundle-aar
- project: firefox-l10n
=====================================
projects/geckoview/list_toolchain_updates_checks
=====================================
@@ -128,3 +128,9 @@ EOF
needed=$(ls third_party/python/glean_parser | perl -ne "$p")
current='[% pc("glean-parser", "version") %]'
check_update_needed glean-parser "$needed" "$current"
+
+# terser
+
+needed=$(jq -r '.dependencies.terser' tools/terser/package.json)
+current='[% pc("terser", "version") %]'
+check_update_needed terser "$needed" "$current"
=====================================
projects/terser/README.md
=====================================
@@ -0,0 +1,10 @@
+Mozilla switched from JSMin (which produced invalid JS under some circumstances)
+with to terser in
+[Bug 1967968](https://bugzilla.mozilla.org/show_bug.cgi?id=1967968).
+
+However, they did not version it.
+Instead, they create an archive in their CI starting from a `package-lock.json`.
+
+This project is the replacement for that archive.
+
+When updating Firefox, remember to update this project too, if needed.
=====================================
projects/terser/build
=====================================
@@ -0,0 +1,18 @@
+#!/bin/bash
+[% c("var/set_default_env") -%]
+
+mkdir -p /var/tmp/dist
+tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/node') %]
+export PATH=/var/tmp/dist/node/bin:$PATH
+
+# See also taskcluster/scripts/misc/terser.sh.
+
+mkdir terser
+mv package*.json terser
+cd terser
+npm ci --loglevel=error
+
+[% c('tar', {
+ tar_src => [ 'node_modules' ],
+ tar_args => '-caf ' _ dest_dir _ '/' _ c('filename'),
+ }) %]
=====================================
projects/terser/config
=====================================
@@ -0,0 +1,14 @@
+version: '5.44.0'
+filename: '[% project %]-[% c("version") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
+container:
+ use_container: 1
+ disable_network:
+ build: 0
+input_files:
+ - project: container-image
+ name: container-image
+ - project: node
+ name: node
+ # These files are in tools/terser in Firefox's source tree
+ - filename: 'package.json'
+ - filename: 'package-lock.json'
=====================================
projects/terser/package-lock.json
=====================================
@@ -0,0 +1,120 @@
+{
+ "name": "terser",
+ "version": "1.0.0",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "version": "1.0.0",
+ "dependencies": {
+ "terser": "5.44.0"
+ }
+ },
+ "node_modules/@jridgewell/gen-mapping": {
+ "version": "0.3.13",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz",
+ "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==",
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/sourcemap-codec": "^1.5.0",
+ "@jridgewell/trace-mapping": "^0.3.24"
+ }
+ },
+ "node_modules/@jridgewell/resolve-uri": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+ "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/source-map": {
+ "version": "0.3.11",
+ "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.11.tgz",
+ "integrity": "sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==",
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.25"
+ }
+ },
+ "node_modules/@jridgewell/sourcemap-codec": {
+ "version": "1.5.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.…",
+ "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==",
+ "license": "MIT"
+ },
+ "node_modules/@jridgewell/trace-mapping": {
+ "version": "0.3.30",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.30…",
+ "integrity": "sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==",
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
+ }
+ },
+ "node_modules/acorn": {
+ "version": "8.15.0",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz",
+ "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==",
+ "license": "MIT",
+ "bin": {
+ "acorn": "bin/acorn"
+ },
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/buffer-from": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
+ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
+ "license": "MIT"
+ },
+ "node_modules/commander": {
+ "version": "2.20.3",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
+ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
+ "license": "MIT"
+ },
+ "node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/source-map-support": {
+ "version": "0.5.21",
+ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.t…",
+ "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
+ "license": "MIT",
+ "dependencies": {
+ "buffer-from": "^1.0.0",
+ "source-map": "^0.6.0"
+ }
+ },
+ "node_modules/terser": {
+ "version": "5.44.0",
+ "resolved": "https://registry.npmjs.org/terser/-/terser-5.44.0.tgz",
+ "integrity": "sha512-nIVck8DK+GM/0Frwd+nIhZ84pR/BX7rmXMfYwyg+Sri5oGVE99/E3KvXqpC2xHFxyqXyGHTKBSioxxplrO4I4w==",
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "@jridgewell/source-map": "^0.3.3",
+ "acorn": "^8.15.0",
+ "commander": "^2.20.0",
+ "source-map-support": "~0.5.20"
+ },
+ "bin": {
+ "terser": "bin/terser"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ }
+ }
+}
=====================================
projects/terser/package.json
=====================================
@@ -0,0 +1,8 @@
+{
+ "version": "1.0.0",
+ "description": "Terser JavaScript minifier for Mozilla builds",
+ "private": true,
+ "dependencies": {
+ "terser": "5.44.0"
+ }
+}
=====================================
projects/uglifyjs/README.md deleted
=====================================
@@ -1 +0,0 @@
-This project fetches UglifyJS without any other changes.
=====================================
projects/uglifyjs/build deleted
=====================================
@@ -1,4 +0,0 @@
-#!/bin/bash
-tar -xf [% project %]-[% c('version') %].tar.[% c('compress_tar') %]
-mv [% project %]-[% c('version') %] [% project %]
-tar -caf [% dest_dir %]/[% c("filename") %] [% project %]
=====================================
projects/uglifyjs/config deleted
=====================================
@@ -1,4 +0,0 @@
-version: 3.19.3
-filename: 'uglifyjs-[% c("version") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
-git_hash: 3ea33afc72462a470466473208a33379b7204765
-git_url: https://github.com/mishoo/UglifyJS.git
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/a…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/a…
You're receiving this email because of your account on gitlab.torproject.org.
1
0