lists.torproject.org
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

tbb-commits

Thread Start a new thread
Threads by month
  • ----- 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
tbb-commits@lists.torproject.org

  • 1 participants
  • 19730 discussions
[Git][tpo/applications/mullvad-browser][mullvad-browser-140.4.0esr-15.0-1] 4 commits: fixup! Firefox preference overrides.
by morgan (@morgan) 13 Oct '25

13 Oct '25
morgan pushed to branch mullvad-browser-140.4.0esr-15.0-1 at The Tor Project / Applications / Mullvad Browser Commits: 7476f64e by Henry Wilkes at 2025-10-13T14:47:17+00:00 fixup! Firefox preference overrides. TB 43850: Do not use automatic forced colours on Windows. - - - - - e2f05972 by Henry Wilkes at 2025-10-13T14:47:17+00:00 fixup! BB 42027: Base Browser migration procedures. TB 43850: Clear browser colour preferences if the user has RFP enabled. - - - - - 2c42fd20 by Henry Wilkes at 2025-10-13T14:47:18+00:00 fixup! Base Browser strings TB 43850: Add alternative name and description for the "Custom" contrast control. - - - - - 155f6482 by Henry Wilkes at 2025-10-13T14:47:18+00:00 BB 43850: Modify the Contrast Control settings for RFP. - - - - - 5 changed files: - browser/app/profile/001-base-profile.js - browser/components/ProfileDataUpgrader.sys.mjs - browser/components/preferences/main.inc.xhtml - browser/components/preferences/main.js - toolkit/locales/en-US/toolkit/global/base-browser.ftl Changes: ===================================== browser/app/profile/001-base-profile.js ===================================== @@ -544,7 +544,13 @@ pref("pdfjs.enableScripting", false); // tor-browser#42255: pdfjs.disabled used to be part of RFP until Bug 1838415; lock pref to false in stable pref("pdfjs.disabled", false, locked); #endif -// Bug 40057: Ensure system colors are not used for CSS4 colors +// tor-browser#43850. Keep forced colors off by default for all platforms. +// Upstream sets a value of "0" for Windows. +pref("browser.display.document_color_use", 1); +// Bug 40057: Ensure system colors are not used for CSS4 colors. +// FIXME: This preference seems to be unread since bugzilla bug 1898096, but +// still exists in the static preference list. Remove when upstream removes +// this or confirms it will not be used again in the future. pref("browser.display.use_system_colors", false); // tor-browser#43366: do not use system accent color in inputs. // See also https://bugzilla.mozilla.org/show_bug.cgi?id=1861362. ===================================== browser/components/ProfileDataUpgrader.sys.mjs ===================================== @@ -914,7 +914,8 @@ export let ProfileDataUpgrader = { // Version 3: 14.0a7: Reset general.smoothScroll. tor-browser#42070. // Version 4: 15.0a2: Drop ML components. tor-browser#44045. // Version 5: 15.0a3: Disable LaterRun using prefs. tor-browser#42630. - const MIGRATION_VERSION = 5; + // Version 6: 15.0a4: Reset browser colors. tor-browser#43850. + const MIGRATION_VERSION = 6; const MIGRATION_PREF = "basebrowser.migration.version"; if (isNewProfile) { @@ -982,6 +983,36 @@ export let ProfileDataUpgrader = { Services.prefs.clearUserPref(prefName); } } + if (currentVersion < 6) { + // Clear the related preference that is no longer read by upstream's code. + Services.prefs.clearUserPref("browser.display.use_system_colors"); + if (Services.prefs.getBoolPref("privacy.resistFingerprinting", true)) { + for (const prefName of [ + // User has not switched off resist fingerprinting. We want to reset + // any "0" (automatic, use system colours) and "2" (always use browser + // colours) values. + // The "0" value cannot be set by the user under RFP in + // about:preferences. The "2" value can be set, but has a different + // name and a warning about website detectability. tor-browser#43850. + "browser.display.document_color_use", + // Under RFP, the following colours are ignored. So we clear them. + // NOTE: Only a subset of can be set via the colors.xhtml dialog in + // about:preferences. + "browser.anchor_color", + "browser.anchor_color.dark", + "browser.visited_color", + "browser.visited_color.dark", + "browser.display.foreground_color", + "browser.display.foreground_color.dark", + "browser.display.background_color", + "browser.display.background_color.dark", + "browser.active_color", + "browser.active_color.dark", + ]) { + Services.prefs.clearUserPref(prefName); + } + } + } Services.prefs.setIntPref(MIGRATION_PREF, MIGRATION_VERSION); }, ===================================== browser/components/preferences/main.inc.xhtml ===================================== @@ -264,6 +264,15 @@ value="2" flex="1" data-l10n-id="preferences-contrast-control-custom"/> + <description id="contrastSettingsFixedColorsDescription" class="indent"> + <html:span + data-l10n-id="preferences-contrast-control-fixed-color-description" + ></html:span> + <html:a + is="moz-support-link" + tor-manual-page="anti-fingerprinting" + ></html:a> + </description> <button id="colors" is="highlightable-button" class="accessory-button indent" ===================================== browser/components/preferences/main.js ===================================== @@ -733,6 +733,78 @@ var gMainPane = { gMainPane.updateColorsButton.bind(gMainPane) ); gMainPane.updateColorsButton(); + + // Modify the contrast setting options when resist fingerprinting (RFP) is + // enabled because the custom colours will not be used in this state. + // Instead, some fixed set of stand-in colours is used. tor-browser#43850. + const resistFingerprintingPref = "privacy.resistFingerprinting"; + const updateContrastControls = () => { + const rfpEnabled = Services.prefs.getBoolPref( + resistFingerprintingPref, + false + ); + const autoOptionEl = document.getElementById("contrastSettingsAuto"); + const onOptionEl = document.getElementById("contrastSettingsOn"); + const onDescriptionEl = document.getElementById( + "contrastSettingsFixedColorsDescription" + ); + const colorButtonEl = document.getElementById("colors"); + for (const { element, hide } of [ + { + element: autoOptionEl, + // Hide the "Automatic" option under RFP if it is not already + // selected. We generally want to discourage this reflection of system + // settings if RFP is enabled. + // NOTE: It would be unexpected for this value to be selected under + // RFP since there is no visible UI to do so in this state. It would + // likely require some direct preference manipulation. + hide: + rfpEnabled && + autoOptionEl.value !== + String( + Preferences.get("browser.display.document_color_use").value + ), + }, + { element: colorButtonEl, hide: rfpEnabled }, + { element: onDescriptionEl, hide: !rfpEnabled }, + ]) { + element.hidden = hide; + if (hide) { + element.setAttribute("data-hidden-from-search", "true"); + } else { + element.removeAttribute("data-hidden-from-search"); + } + } + if (rfpEnabled) { + onOptionEl.setAttribute( + "data-l10n-id", + "preferences-contrast-control-fixed-color" + ); + onOptionEl.setAttribute("aria-describedby", onDescriptionEl.id); + } else { + onOptionEl.setAttribute( + "data-l10n-id", + "preferences-contrast-control-custom" + ); + onOptionEl.removeAttribute("aria-describedby"); + } + }; + updateContrastControls(); + Services.prefs.addObserver( + resistFingerprintingPref, + updateContrastControls + ); + window.addEventListener( + "unload", + () => { + Services.prefs.removeObserver( + resistFingerprintingPref, + updateContrastControls + ); + }, + { once: true } + ); + Preferences.get("layers.acceleration.disabled").on( "change", gMainPane.updateHardwareAcceleration.bind(gMainPane) ===================================== toolkit/locales/en-US/toolkit/global/base-browser.ftl ===================================== @@ -101,6 +101,13 @@ letterboxing-enable-button = browser-layout-show-sidebar-desc-limited = Quickly access bookmarks and more without leaving your main view. +## Preferences - Contrast Control. + +preferences-contrast-control-fixed-color = + .label = Fixed colors + .accesskey = F +preferences-contrast-control-fixed-color-description = This will be detectable by websites and will make you appear more unique to web trackers. + ## Security level toolbar button. ## Uses sentence case in English (US). ## ".label" is the accessible name, and shown in the overflow menu and when customizing the toolbar. View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/5a… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/5a… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser][base-browser-140.4.0esr-15.0-1] 4 commits: fixup! Firefox preference overrides.
by morgan (@morgan) 13 Oct '25

13 Oct '25
morgan pushed to branch base-browser-140.4.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: 8f0da14a by Henry Wilkes at 2025-10-13T14:45:19+00:00 fixup! Firefox preference overrides. TB 43850: Do not use automatic forced colours on Windows. - - - - - c6268111 by Henry Wilkes at 2025-10-13T14:45:19+00:00 fixup! BB 42027: Base Browser migration procedures. TB 43850: Clear browser colour preferences if the user has RFP enabled. - - - - - 687cbb65 by Henry Wilkes at 2025-10-13T14:45:20+00:00 fixup! Base Browser strings TB 43850: Add alternative name and description for the "Custom" contrast control. - - - - - 9f7ddf7e by Henry Wilkes at 2025-10-13T14:45:20+00:00 BB 43850: Modify the Contrast Control settings for RFP. - - - - - 5 changed files: - browser/app/profile/001-base-profile.js - browser/components/ProfileDataUpgrader.sys.mjs - browser/components/preferences/main.inc.xhtml - browser/components/preferences/main.js - toolkit/locales/en-US/toolkit/global/base-browser.ftl Changes: ===================================== browser/app/profile/001-base-profile.js ===================================== @@ -544,7 +544,13 @@ pref("pdfjs.enableScripting", false); // tor-browser#42255: pdfjs.disabled used to be part of RFP until Bug 1838415; lock pref to false in stable pref("pdfjs.disabled", false, locked); #endif -// Bug 40057: Ensure system colors are not used for CSS4 colors +// tor-browser#43850. Keep forced colors off by default for all platforms. +// Upstream sets a value of "0" for Windows. +pref("browser.display.document_color_use", 1); +// Bug 40057: Ensure system colors are not used for CSS4 colors. +// FIXME: This preference seems to be unread since bugzilla bug 1898096, but +// still exists in the static preference list. Remove when upstream removes +// this or confirms it will not be used again in the future. pref("browser.display.use_system_colors", false); // tor-browser#43366: do not use system accent color in inputs. // See also https://bugzilla.mozilla.org/show_bug.cgi?id=1861362. ===================================== browser/components/ProfileDataUpgrader.sys.mjs ===================================== @@ -914,7 +914,8 @@ export let ProfileDataUpgrader = { // Version 3: 14.0a7: Reset general.smoothScroll. tor-browser#42070. // Version 4: 15.0a2: Drop ML components. tor-browser#44045. // Version 5: 15.0a3: Disable LaterRun using prefs. tor-browser#42630. - const MIGRATION_VERSION = 5; + // Version 6: 15.0a4: Reset browser colors. tor-browser#43850. + const MIGRATION_VERSION = 6; const MIGRATION_PREF = "basebrowser.migration.version"; if (isNewProfile) { @@ -982,6 +983,36 @@ export let ProfileDataUpgrader = { Services.prefs.clearUserPref(prefName); } } + if (currentVersion < 6) { + // Clear the related preference that is no longer read by upstream's code. + Services.prefs.clearUserPref("browser.display.use_system_colors"); + if (Services.prefs.getBoolPref("privacy.resistFingerprinting", true)) { + for (const prefName of [ + // User has not switched off resist fingerprinting. We want to reset + // any "0" (automatic, use system colours) and "2" (always use browser + // colours) values. + // The "0" value cannot be set by the user under RFP in + // about:preferences. The "2" value can be set, but has a different + // name and a warning about website detectability. tor-browser#43850. + "browser.display.document_color_use", + // Under RFP, the following colours are ignored. So we clear them. + // NOTE: Only a subset of can be set via the colors.xhtml dialog in + // about:preferences. + "browser.anchor_color", + "browser.anchor_color.dark", + "browser.visited_color", + "browser.visited_color.dark", + "browser.display.foreground_color", + "browser.display.foreground_color.dark", + "browser.display.background_color", + "browser.display.background_color.dark", + "browser.active_color", + "browser.active_color.dark", + ]) { + Services.prefs.clearUserPref(prefName); + } + } + } Services.prefs.setIntPref(MIGRATION_PREF, MIGRATION_VERSION); }, }; ===================================== browser/components/preferences/main.inc.xhtml ===================================== @@ -264,6 +264,15 @@ value="2" flex="1" data-l10n-id="preferences-contrast-control-custom"/> + <description id="contrastSettingsFixedColorsDescription" class="indent"> + <html:span + data-l10n-id="preferences-contrast-control-fixed-color-description" + ></html:span> + <html:a + is="moz-support-link" + tor-manual-page="anti-fingerprinting" + ></html:a> + </description> <button id="colors" is="highlightable-button" class="accessory-button indent" ===================================== browser/components/preferences/main.js ===================================== @@ -733,6 +733,78 @@ var gMainPane = { gMainPane.updateColorsButton.bind(gMainPane) ); gMainPane.updateColorsButton(); + + // Modify the contrast setting options when resist fingerprinting (RFP) is + // enabled because the custom colours will not be used in this state. + // Instead, some fixed set of stand-in colours is used. tor-browser#43850. + const resistFingerprintingPref = "privacy.resistFingerprinting"; + const updateContrastControls = () => { + const rfpEnabled = Services.prefs.getBoolPref( + resistFingerprintingPref, + false + ); + const autoOptionEl = document.getElementById("contrastSettingsAuto"); + const onOptionEl = document.getElementById("contrastSettingsOn"); + const onDescriptionEl = document.getElementById( + "contrastSettingsFixedColorsDescription" + ); + const colorButtonEl = document.getElementById("colors"); + for (const { element, hide } of [ + { + element: autoOptionEl, + // Hide the "Automatic" option under RFP if it is not already + // selected. We generally want to discourage this reflection of system + // settings if RFP is enabled. + // NOTE: It would be unexpected for this value to be selected under + // RFP since there is no visible UI to do so in this state. It would + // likely require some direct preference manipulation. + hide: + rfpEnabled && + autoOptionEl.value !== + String( + Preferences.get("browser.display.document_color_use").value + ), + }, + { element: colorButtonEl, hide: rfpEnabled }, + { element: onDescriptionEl, hide: !rfpEnabled }, + ]) { + element.hidden = hide; + if (hide) { + element.setAttribute("data-hidden-from-search", "true"); + } else { + element.removeAttribute("data-hidden-from-search"); + } + } + if (rfpEnabled) { + onOptionEl.setAttribute( + "data-l10n-id", + "preferences-contrast-control-fixed-color" + ); + onOptionEl.setAttribute("aria-describedby", onDescriptionEl.id); + } else { + onOptionEl.setAttribute( + "data-l10n-id", + "preferences-contrast-control-custom" + ); + onOptionEl.removeAttribute("aria-describedby"); + } + }; + updateContrastControls(); + Services.prefs.addObserver( + resistFingerprintingPref, + updateContrastControls + ); + window.addEventListener( + "unload", + () => { + Services.prefs.removeObserver( + resistFingerprintingPref, + updateContrastControls + ); + }, + { once: true } + ); + Preferences.get("layers.acceleration.disabled").on( "change", gMainPane.updateHardwareAcceleration.bind(gMainPane) ===================================== toolkit/locales/en-US/toolkit/global/base-browser.ftl ===================================== @@ -101,6 +101,13 @@ letterboxing-enable-button = browser-layout-show-sidebar-desc-limited = Quickly access bookmarks and more without leaving your main view. +## Preferences - Contrast Control. + +preferences-contrast-control-fixed-color = + .label = Fixed colors + .accesskey = F +preferences-contrast-control-fixed-color-description = This will be detectable by websites and will make you appear more unique to web trackers. + ## Security level toolbar button. ## Uses sentence case in English (US). ## ".label" is the accessible name, and shown in the overflow menu and when customizing the toolbar. View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/0b4709… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/0b4709… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser-build][main] 2 commits: Bug 41373: Remove `_ALL` from mar filenames
by boklm (@boklm) 13 Oct '25

13 Oct '25
boklm pushed to branch main at The Tor Project / Applications / tor-browser-build Commits: 610da963 by Nicolas Vigier at 2025-10-13T16:29:54+02:00 Bug 41373: Remove `_ALL` from mar filenames - - - - - 98191f15 by Nicolas Vigier at 2025-10-13T16:29:55+02:00 Bug 41373: Add support for old from mar filenames (with `_ALL`) We need to keep supporting old mar filenames for: - generating incrementals from releases with the old filenames - generating update responses for releases with the old filenames, for the legacy channel We should revert this commit when support for the legacy channel (13.5) has ended. - - - - - 4 changed files: - projects/browser/build - tools/count-mar-downloads - tools/dmg2mar - tools/update-responses/update_responses Changes: ===================================== projects/browser/build ===================================== @@ -372,7 +372,7 @@ cd $distdir [% IF c("var/build_mar") && c("var/updater_enabled") -%] # Create full MAR file and compressed package. - [% SET mar_file = c("var/project-name") _ '-' _ c("var/mar_osname") _ '-' _ c("var/torbrowser_version") _ '_ALL.mar' %] + [% SET mar_file = c("var/project-name") _ '-' _ c("var/mar_osname") _ '-' _ c("var/torbrowser_version") _ '.mar' %] MAR=$MARTOOLS/mar \ MOZ_PRODUCT_VERSION=[% c("var/torbrowser_version") %] \ MAR_CHANNEL_ID=[% c("var/mar_channel_id") %] \ ===================================== tools/count-mar-downloads ===================================== @@ -63,7 +63,7 @@ sub parse_log_file { my ($stdout, undef, $success) = capture_exec('xzcat', $File::Find::name); foreach my $line (split /\n/, $stdout) { my ($version, $os) = - ($line =~ m|^[^\s]+ - - \[.+\] "GET /aus1/torbrowser/([^/]+)/tor-browser-(.*)-\d.*_ALL\.mar HTTP/|); + ($line =~ m|^[^\s]+ - - \[.+\] "GET /aus1/torbrowser/([^/]+)/tor-browser-(.*)-\d.*(_ALL)?\.mar HTTP/|); if ($version) { $downloads{$version}{total} += 1; $downloads{$version}{full_update} += 1; @@ -72,7 +72,7 @@ sub parse_log_file { } my $incremental_from; ($version, $os, $incremental_from) = - ($line =~ m|^[^\s]+ - - \[.+\] "GET /aus1/torbrowser/([^/]+)/tor-browser-(.*)--(\d[^-]+)-.*_ALL\.incremental\.mar HTTP/|); + ($line =~ m|^[^\s]+ - - \[.+\] "GET /aus1/torbrowser/([^/]+)/tor-browser-(.*)--(\d[^-]+)-.*(_ALL)?\.incremental\.mar HTTP/|); if ($incremental_from) { $downloads{$version}{total} += 1; $downloads{$version}{OS}{$os} += 1; ===================================== tools/dmg2mar ===================================== @@ -117,7 +117,7 @@ sub convert_files { print "Finished $_[2]\n"; }); foreach my $file (get_dmg_files_from_sha256sums) { - my $output = "$appname_mar-macos-$file->{version}_ALL.mar"; + my $output = "$appname_mar-macos-$file->{version}.mar"; my $step_name = "$file->{filename} -> $output"; print "Starting $step_name\n"; $pm->start($step_name) and next; ===================================== tools/update-responses/update_responses ===================================== @@ -87,6 +87,33 @@ sub get_sha512_hex_of_file { return $sha->hexdigest; } +# With release 15.0 _ALL is being removed from mar file names. +# However we need to be able to generate incrementals from versions +# using the old filenames. As a workaround, if the old filename is +# found we create a symlink to the new file name. +# The symlinks are used in `create_incremental_mar` and `get_buildinfos`, +# where supporting both file names would complexify things. The symlinks +# are ignored in `get_version_files` where the regexp used support both +# old and new filenames. +# We can remove this once we don't need to generate incrementals from +# versions with the old file names. +sub symlink_ALL { + my ($config, $version) = @_; + my $vdir = version_dir($config, $version); + opendir(my $d, $vdir) or exit_error "Error opening directory $vdir"; + foreach my $file (readdir $d) { + next unless -f "$vdir/$file"; + if ($file =~ m/^(.+)_ALL\.mar$/) { + next if -f "$vdir/$1.mar"; + symlink $file, "$vdir/$1.mar"; + } + if ($file =~ m/^(.+)_ALL\.incremental\.mar$/) { + next if -f "$vdir/$1.incremental.mar"; + symlink $file, "$vdir/$1.incremental.mar"; + } + } +} + sub get_version_files { my ($config, $version) = @_; return if $config->{versions}{$version}{files}; @@ -97,8 +124,13 @@ sub get_version_files { opendir(my $d, $vdir) or exit_error "Error opening directory $vdir"; foreach my $file (readdir $d) { next unless -f "$vdir/$file"; + # Ignore the symlinks created by `symlink_ALL` to avoid adding the files + # twice. + # We can remove this line once we don't need to support the legacy channel with + # with the old file names. + next if -l "$vdir/$file"; if ($file !~ m/incremental\.mar$/ && - $file =~ m/^$appname-(.+)-${version}_ALL\.mar$/) { + $file =~ m/^$appname-(.+)-${version}(_ALL)?\.mar$/) { my $os = $1; $files->{$os}{complete} = { type => 'complete', @@ -111,7 +143,7 @@ sub get_version_files { }; next; } - if ($file =~ m/^$appname-(.+)--(.+)-${version}_ALL\.incremental\.mar$/) { + if ($file =~ m/^$appname-(.+)--(.+)-${version}(_ALL)?\.incremental\.mar$/) { my ($os, $from_version) = ($1, $2); $files->{$os}{partial}{$from_version} = { type => 'partial', @@ -221,13 +253,13 @@ sub extract_mar { sub mar_filename { my ($config, $appname, $version, $os) = @_; - version_dir($config, $version) . "/$appname-$os-${version}_ALL.mar"; + version_dir($config, $version) . "/$appname-$os-${version}.mar"; } sub create_incremental_mar { my ($config, $pm, $from_version, $new_version, $os, $channel) = @_; my $appname = $config->{appname_marfile}; - my $mar_file = "$appname-$os--${from_version}-${new_version}_ALL.incremental.mar"; + my $mar_file = "$appname-$os--${from_version}-${new_version}.incremental.mar"; my $mar_file_path = version_dir($config, $new_version) . '/' . $mar_file; if ($ENV{MAR_SKIP_EXISTING} && -f $mar_file_path) { print "Skipping $mar_file\n"; @@ -288,6 +320,7 @@ sub create_incremental_mars_for_version { my $v = $config->{versions}{$version}; foreach my $from_version (@{$v->{incremental_from}}) { $config->{versions}{$from_version} //= {}; + symlink_ALL($config, $from_version); get_version_files($config, $from_version); my $from_v = $config->{versions}{$from_version}; foreach my $os (keys %{$v->{files}}) { @@ -396,6 +429,7 @@ sub write_responses { my (%oses, %from_versions); foreach my $version (@$versions) { get_version_files($config, $version); + symlink_ALL($config, $version); get_buildinfos($config, $version); my $files = $config->{versions}{$version}{files}; foreach my $os (keys %$files) { View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser][tor-browser-140.4.0esr-15.0-1] 4 commits: fixup! Firefox preference overrides.
by morgan (@morgan) 13 Oct '25

13 Oct '25
morgan pushed to branch tor-browser-140.4.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: 6b86c2c8 by Henry Wilkes at 2025-10-13T14:09:41+00:00 fixup! Firefox preference overrides. TB 43850: Do not use automatic forced colours on Windows. - - - - - 975e6f3a by Henry Wilkes at 2025-10-13T14:09:41+00:00 fixup! BB 42027: Base Browser migration procedures. TB 43850: Clear browser colour preferences if the user has RFP enabled. - - - - - 5756a349 by Henry Wilkes at 2025-10-13T14:09:41+00:00 fixup! Base Browser strings TB 43850: Add alternative name and description for the "Custom" contrast control. - - - - - 385a9630 by Henry Wilkes at 2025-10-13T14:09:42+00:00 BB 43850: Modify the Contrast Control settings for RFP. - - - - - 5 changed files: - browser/app/profile/001-base-profile.js - browser/components/ProfileDataUpgrader.sys.mjs - browser/components/preferences/main.inc.xhtml - browser/components/preferences/main.js - toolkit/locales/en-US/toolkit/global/base-browser.ftl Changes: ===================================== browser/app/profile/001-base-profile.js ===================================== @@ -544,7 +544,13 @@ pref("pdfjs.enableScripting", false); // tor-browser#42255: pdfjs.disabled used to be part of RFP until Bug 1838415; lock pref to false in stable pref("pdfjs.disabled", false, locked); #endif -// Bug 40057: Ensure system colors are not used for CSS4 colors +// tor-browser#43850. Keep forced colors off by default for all platforms. +// Upstream sets a value of "0" for Windows. +pref("browser.display.document_color_use", 1); +// Bug 40057: Ensure system colors are not used for CSS4 colors. +// FIXME: This preference seems to be unread since bugzilla bug 1898096, but +// still exists in the static preference list. Remove when upstream removes +// this or confirms it will not be used again in the future. pref("browser.display.use_system_colors", false); // tor-browser#43366: do not use system accent color in inputs. // See also https://bugzilla.mozilla.org/show_bug.cgi?id=1861362. ===================================== browser/components/ProfileDataUpgrader.sys.mjs ===================================== @@ -914,7 +914,8 @@ export let ProfileDataUpgrader = { // Version 3: 14.0a7: Reset general.smoothScroll. tor-browser#42070. // Version 4: 15.0a2: Drop ML components. tor-browser#44045. // Version 5: 15.0a3: Disable LaterRun using prefs. tor-browser#42630. - const MIGRATION_VERSION = 5; + // Version 6: 15.0a4: Reset browser colors. tor-browser#43850. + const MIGRATION_VERSION = 6; const MIGRATION_PREF = "basebrowser.migration.version"; if (isNewProfile) { @@ -982,6 +983,36 @@ export let ProfileDataUpgrader = { Services.prefs.clearUserPref(prefName); } } + if (currentVersion < 6) { + // Clear the related preference that is no longer read by upstream's code. + Services.prefs.clearUserPref("browser.display.use_system_colors"); + if (Services.prefs.getBoolPref("privacy.resistFingerprinting", true)) { + for (const prefName of [ + // User has not switched off resist fingerprinting. We want to reset + // any "0" (automatic, use system colours) and "2" (always use browser + // colours) values. + // The "0" value cannot be set by the user under RFP in + // about:preferences. The "2" value can be set, but has a different + // name and a warning about website detectability. tor-browser#43850. + "browser.display.document_color_use", + // Under RFP, the following colours are ignored. So we clear them. + // NOTE: Only a subset of can be set via the colors.xhtml dialog in + // about:preferences. + "browser.anchor_color", + "browser.anchor_color.dark", + "browser.visited_color", + "browser.visited_color.dark", + "browser.display.foreground_color", + "browser.display.foreground_color.dark", + "browser.display.background_color", + "browser.display.background_color.dark", + "browser.active_color", + "browser.active_color.dark", + ]) { + Services.prefs.clearUserPref(prefName); + } + } + } Services.prefs.setIntPref(MIGRATION_PREF, MIGRATION_VERSION); }, ===================================== browser/components/preferences/main.inc.xhtml ===================================== @@ -264,6 +264,15 @@ value="2" flex="1" data-l10n-id="preferences-contrast-control-custom"/> + <description id="contrastSettingsFixedColorsDescription" class="indent"> + <html:span + data-l10n-id="preferences-contrast-control-fixed-color-description" + ></html:span> + <html:a + is="moz-support-link" + tor-manual-page="anti-fingerprinting" + ></html:a> + </description> <button id="colors" is="highlightable-button" class="accessory-button indent" ===================================== browser/components/preferences/main.js ===================================== @@ -733,6 +733,78 @@ var gMainPane = { gMainPane.updateColorsButton.bind(gMainPane) ); gMainPane.updateColorsButton(); + + // Modify the contrast setting options when resist fingerprinting (RFP) is + // enabled because the custom colours will not be used in this state. + // Instead, some fixed set of stand-in colours is used. tor-browser#43850. + const resistFingerprintingPref = "privacy.resistFingerprinting"; + const updateContrastControls = () => { + const rfpEnabled = Services.prefs.getBoolPref( + resistFingerprintingPref, + false + ); + const autoOptionEl = document.getElementById("contrastSettingsAuto"); + const onOptionEl = document.getElementById("contrastSettingsOn"); + const onDescriptionEl = document.getElementById( + "contrastSettingsFixedColorsDescription" + ); + const colorButtonEl = document.getElementById("colors"); + for (const { element, hide } of [ + { + element: autoOptionEl, + // Hide the "Automatic" option under RFP if it is not already + // selected. We generally want to discourage this reflection of system + // settings if RFP is enabled. + // NOTE: It would be unexpected for this value to be selected under + // RFP since there is no visible UI to do so in this state. It would + // likely require some direct preference manipulation. + hide: + rfpEnabled && + autoOptionEl.value !== + String( + Preferences.get("browser.display.document_color_use").value + ), + }, + { element: colorButtonEl, hide: rfpEnabled }, + { element: onDescriptionEl, hide: !rfpEnabled }, + ]) { + element.hidden = hide; + if (hide) { + element.setAttribute("data-hidden-from-search", "true"); + } else { + element.removeAttribute("data-hidden-from-search"); + } + } + if (rfpEnabled) { + onOptionEl.setAttribute( + "data-l10n-id", + "preferences-contrast-control-fixed-color" + ); + onOptionEl.setAttribute("aria-describedby", onDescriptionEl.id); + } else { + onOptionEl.setAttribute( + "data-l10n-id", + "preferences-contrast-control-custom" + ); + onOptionEl.removeAttribute("aria-describedby"); + } + }; + updateContrastControls(); + Services.prefs.addObserver( + resistFingerprintingPref, + updateContrastControls + ); + window.addEventListener( + "unload", + () => { + Services.prefs.removeObserver( + resistFingerprintingPref, + updateContrastControls + ); + }, + { once: true } + ); + Preferences.get("layers.acceleration.disabled").on( "change", gMainPane.updateHardwareAcceleration.bind(gMainPane) ===================================== toolkit/locales/en-US/toolkit/global/base-browser.ftl ===================================== @@ -101,6 +101,13 @@ letterboxing-enable-button = browser-layout-show-sidebar-desc-limited = Quickly access bookmarks and more without leaving your main view. +## Preferences - Contrast Control. + +preferences-contrast-control-fixed-color = + .label = Fixed colors + .accesskey = F +preferences-contrast-control-fixed-color-description = This will be detectable by websites and will make you appear more unique to web trackers. + ## Security level toolbar button. ## Uses sentence case in English (US). ## ".label" is the accessible name, and shown in the overflow menu and when customizing the toolbar. View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/f0d854… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/f0d854… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser-bundle-testsuite][main] 3 commits: Bug 40089: Delete browser-rebase test type
by brizental (@brizental) 13 Oct '25

13 Oct '25
brizental pushed to branch main at The Tor Project / Applications / tor-browser-bundle-testsuite Commits: d44ac6a2 by Beatriz Rizental at 2025-10-03T01:23:22+00:00 Bug 40089: Delete browser-rebase test type This has been obsolete it seems since ESR31 i.e. 2015. - - - - - effdeb36 by Beatriz Rizental at 2025-10-03T01:29:00+00:00 Bug 40089: Delete Tor Messenger related code This project has been discontinued in 2018. - - - - - c4cac0fe by Beatriz Rizental at 2025-10-03T01:59:50+00:00 Bug 40089: Delete virus-total related test suites These are obsolete and outdated. We might bring them back, but since they will require a full rewrite and a lot of the infrastrcuture of the previous implementation is gone anyways I have decided to drop it for now. Discussion on whether to bring it back on https://gitlab.torproject.org/tpo/applications/tor-browser-bundle-testsuite… - - - - - 22 changed files: - TBBTestSuite/Options.pm - TBBTestSuite/TestSuite/BrowserBundleTests.pm - − TBBTestSuite/TestSuite/BrowserBundleVirusTotal.pm - − TBBTestSuite/TestSuite/BrowserRebaseTests.pm - − TBBTestSuite/TestSuite/TorMailBuild.pm - − TBBTestSuite/TestSuite/TorMessengerBuild.pm - TBBTestSuite/TestSuites.pm - TBBTestSuite/Tests.pm - − TBBTestSuite/Tests/VirusTotal.pm - − config/browser-rebase - − config/linus-nightly-virustotal - − config/release-virustotal - − config/tor-mail_build - − config/tor-messenger_build - doc/usage.txt - − tmpl/details_cherry_pick.html - − tmpl/details_virustotal.html - − tmpl/report_browserbundle_virustotal.txt - − tmpl/reports_index_browserbundle_virustotal.html - − tmpl/reports_index_browserrebase.html - − tools/paganini-builds - − tools/run-tests-virustotal Changes: ===================================== TBBTestSuite/Options.pm ===================================== @@ -49,8 +49,6 @@ my %default_options = ( xvfb => 0, xdummy => $OSNAME ne 'cygwin', use_strace => 0, - virustotal => 0, - 'virustotal-api-key-file' => "$ENV{HOME}/.virustotal.api-key", 'email-to' => [], 'email-from' => 'TBB Test Report <tbbtest(a)example.com>', 'email-subject' => '[test result: [% success ? "ok" : "failed" %]] [% options.name %]', @@ -71,7 +69,7 @@ sub get_options { tor-socks-port=i reports-dir=s gpgcheck! keyring=s xvfb! name=s download-dir=s config=s action=s enable-tests=s upload-to=s os=s arch=s - virustotal! email-to=s@ email-from=s email-subject=s + email-to=s@ email-from=s email-subject=s reports-url=s http-proxy-port=i xdummy! disable-tests=s testrequests_types=s testsuite=s cleanup! PTtests!); ===================================== TBBTestSuite/TestSuite/BrowserBundleTests.pm ===================================== @@ -19,7 +19,6 @@ use LWP::UserAgent; use IO::CaptureOutput qw(capture_exec); use TBBTestSuite::Common qw(exit_error winpath clone_strip_coderef screenshot_thumbnail); use TBBTestSuite::Options qw($options); -use TBBTestSuite::Tests::VirusTotal qw(virustotal_run); use TBBTestSuite::Tests::Command qw(command_run); use TBBTestSuite::Tests::TorBootstrap; use TBBTestSuite::XServer qw(start_X stop_X set_Xmode); @@ -28,7 +27,6 @@ sub test_types { return { tor_bootstrap => \&TBBTestSuite::Tests::TorBootstrap::start_tor, marionette => \&marionette_run, - virustotal => \&virustotal_run, command => \&command_run, }; } ===================================== TBBTestSuite/TestSuite/BrowserBundleVirusTotal.pm deleted ===================================== @@ -1,27 +0,0 @@ -package TBBTestSuite::TestSuite::BrowserBundleVirusTotal; - -use parent 'TBBTestSuite::TestSuite::BrowserBundleTests'; - -sub description { - 'Tor Browser Bundle Virustotal checks'; -} - -sub type { - 'browserbundle_virustotal'; -} - -sub new { - my ($ts, $testsuite) = @_; - return undef unless $testsuite->{os} eq 'Windows'; - $testsuite->{type} = 'browserbundle_virustotal'; - $testsuite->{tests} = [ - { - name => 'virustotal', - type => 'virustotal', - descr => 'Analyze files on virustotal.com', - }, - ]; - return bless $testsuite; -} - -1; ===================================== TBBTestSuite/TestSuite/BrowserRebaseTests.pm deleted ===================================== @@ -1,92 +0,0 @@ -package TBBTestSuite::TestSuite::BrowserRebaseTests; - -use strict; - -use parent 'TBBTestSuite::TestSuite'; - -use File::Slurp; -use IO::CaptureOutput qw(capture_exec); -use TBBTestSuite::BrowserGit qw(git_clone_fetch get_commits_by_branch - parent_commit git_cmd git_cmd_ch); - -sub test_types { - return { - cherry_pick => \&cherry_pick, - }; -} - -sub type { - 'browserrebase'; -} - -sub description { - 'Tor Browser rebase tests'; -} - -sub test_name { - my ($commit) = @_; - my ($res) = git_cmd_ch('git', 'show', '-s', '--abbrev=12', - '--format=%h-%f', $commit); - return $res; -} - - -sub new { - my ($ts, $infos) = @_; - git_clone_fetch; - my $testsuite = { - %$infos, - type => $ts->type(), - filename => 'browser-rebase', - tests => [], - }; - my @commits = reverse get_commits_by_branch($infos->{tb_branch}, - $infos->{esr_branch}); - shift @commits; - foreach my $commit (@commits) { - my $test = { - name => test_name($commit), - type => 'cherry_pick', - descr => "Cherry pick commit $commit\n", - commit => $commit, - retry => 1, - }; - push @{$testsuite->{tests}}, $test; - } - return bless $testsuite, $ts; -} - -sub pre_tests { - my ($tbbinfos) = @_; - chdir $TBBTestSuite::BrowserGit::clone_dir; - git_cmd('git', 'clean', '-fx'); - git_cmd('git', 'checkout', '-f', '--detach'); - if (-f '.git/refs/heads/rebase-test') { - print "Removing rebase-test branch\n"; - my ($out) = git_cmd('git', 'branch', '-D', 'rebase-test'); - print $out; - } - git_cmd('git', 'branch', '-f', 'rebase-test', 'gecko-dev/master'); - git_cmd('git', 'checkout', '-f', 'rebase-test'); -} - -sub cherry_pick { - my ($tbbinfos, $test) = @_; - print "Rebase $test->{commit}\n"; - my ($out, $err, $success) = capture_exec('git', 'cherry-pick', '-Xpatience', - '--allow-empty', '--ff', $test->{commit}); - $test->{results}{success} = $success; - if (!$success) { - $test->{results}{git_out} = $out; - $test->{results}{git_err} = $err; - ($test->{results}{failed_diff}) = git_cmd_ch('git', 'diff'); - $test->{results}{success} = 1 unless $test->{results}{failed_diff}; - git_cmd('git', 'reset', '--hard'); - } else { - my ($patch) = git_cmd_ch('git', 'format-patch', '--stdout', 'HEAD^'); - write_file("$tbbinfos->{'results-dir'}/$test->{name}.patch", $patch); - $test->{results}{patch_file} = 1; - } -} - -1; ===================================== TBBTestSuite/TestSuite/TorMailBuild.pm deleted ===================================== @@ -1,59 +0,0 @@ -package TBBTestSuite::TestSuite::TorMailBuild; - -use strict; -use parent 'TBBTestSuite::TestSuite::RBMBuild'; - -use TBBTestSuite::GitRepo; - -sub description { - 'Tor Mail Build'; -} - -sub type { - 'tor-mail_build'; -}; - -sub set_tests { - my ($testsuite) = @_; - $testsuite->{tests} = [ - { - name => 'linux-x86_64', - descr => 'build tor-mail linux-x86_64', - type => 'rbm_build', - project => 'tor-mail', - targets => [ - 'noint', - 'linux-x86_64', - 'tor-mail', - ], - publish_dir => 'linux-x86_64', - }, - { - name => 'linux-i686', - descr => 'build tor-mail linux-i686', - type => 'rbm_build', - project => 'tor-mail', - targets => [ - 'noint', - 'linux-i686', - 'tor-mail', - ], - publish_dir => 'linux-i686', - }, - ]; -} - -sub pre_tests { - my ($tbbinfos) = @_; - my $gr = TBBTestSuite::GitRepo->new({ - name => 'tor-mail', - git_url => 'https://git.torproject.org/tor-messenger-build.git', - }); - $gr->clone_fetch; - $gr->cmd('git', 'checkout', 'master'); - chdir $gr->clone_dir(); - system('make', 'submodule-update'); - system('make', 'fetch'); -} - -1; ===================================== TBBTestSuite/TestSuite/TorMessengerBuild.pm deleted ===================================== @@ -1,83 +0,0 @@ -package TBBTestSuite::TestSuite::TorMessengerBuild; - -use strict; -use parent 'TBBTestSuite::TestSuite::RBMBuild'; - -use TBBTestSuite::GitRepo; - -sub description { - 'Tor Messenger Build'; -} - -sub type { - 'tor-messenger_build'; -}; - -sub set_tests { - my ($testsuite) = @_; - $testsuite->{tests} = [ - { - name => 'linux-x86_64', - descr => 'build tor-messenger linux-x86_64', - type => 'rbm_build', - project => 'tor-messenger', - targets => [ - 'noint', - 'linux-x86_64', - 'tor-messenger', - ], - publish_dir => 'linux-x86_64', - }, - { - name => 'linux-i686', - descr => 'build tor-messenger linux-i686', - type => 'rbm_build', - project => 'tor-messenger', - targets => [ - 'noint', - 'linux-i686', - 'tor-messenger', - ], - publish_dir => 'linux-i686', - }, - { - name => 'windows-i686', - descr => 'build tor-messenger windows-i686', - type => 'rbm_build', - project => 'tor-messenger', - targets => [ - 'noint', - 'windows-i686', - 'tor-messenger', - ], - publish_dir => 'windows-i686', - }, - { - name => 'osx-x86_64', - descr => 'build tor-messenger osx-x86_64', - type => 'rbm_build', - project => 'tor-messenger', - targets => [ - 'noint', - 'osx-x86_64', - 'tor-messenger', - ], - publish_dir => 'osx-x86_64', - }, - ]; -} - -sub pre_tests { - my ($tbbinfos) = @_; - my $gr = TBBTestSuite::GitRepo->new({ - name => 'tor-messenger', - git_url => 'https://git.torproject.org/tor-messenger-build.git', - }); - $gr->clone_fetch; - $gr->cmd('git', 'checkout', 'master'); - chdir $gr->clone_dir(); - system('make', 'submodule-update'); - system('make', 'fetch'); -} - -1; ===================================== TBBTestSuite/TestSuites.pm ===================================== @@ -4,18 +4,14 @@ use strict; use TBBTestSuite::TestSuite::TestTestSuite; use TBBTestSuite::TestSuite::BrowserBundleTests; -use TBBTestSuite::TestSuite::BrowserBundleVirusTotal; use TBBTestSuite::TestSuite::BrowserUnitTests; -use TBBTestSuite::TestSuite::BrowserRebaseTests; use TBBTestSuite::TestSuite::RBMBuild; -use TBBTestSuite::TestSuite::TorMailBuild; -use TBBTestSuite::TestSuite::TorMessengerBuild; use TBBTestSuite::TestSuite::TorBrowserBuild; use TBBTestSuite::TestSuite::BrowserBundleHardening; -my @testsuite_list = qw(TestTestSuite BrowserBundleTests BrowserBundleVirusTotal - BrowserUnitTests BrowserRebaseTests RBMBuild TorMailBuild - TorMessengerBuild TorBrowserBuild BrowserBundleHardening); +my @testsuite_list = qw(TestTestSuite BrowserBundleTests + BrowserUnitTests RBMBuild TorBrowserBuild + BrowserBundleHardening); my %testsuite_types; sub testsuite_types { return %testsuite_types if %testsuite_types; ===================================== TBBTestSuite/Tests.pm ===================================== @@ -154,9 +154,7 @@ sub tbb_filename_infos { if ($options->{testsuite}) { return TBBTestSuite::TestSuites::new_by_type($options->{testsuite}, \%res); } - return $options->{virustotal} ? - TBBTestSuite::TestSuite::BrowserBundleVirusTotal->new(\%res) - : TBBTestSuite::TestSuite::BrowserBundleTests->new(\%res); + return TBBTestSuite::TestSuite::BrowserBundleTests->new(\%res); } sub check_gpgsig { ===================================== TBBTestSuite/Tests/VirusTotal.pm deleted ===================================== @@ -1,97 +0,0 @@ -package TBBTestSuite::Tests::VirusTotal; - -use strict; -use Cwd; -use JSON; -use LWP::UserAgent; -use File::Slurp; -use File::Spec; -use File::Find; -use Digest::SHA qw(sha256_hex); -use Data::Dump qw(dd); -use TBBTestSuite::Options qw($options); - -our (@ISA, @EXPORT_OK); -BEGIN { - require Exporter; - @ISA = qw(Exporter); - @EXPORT_OK = qw(virustotal_run); -} - -my %urls = ( - report => 'https://www.virustotal.com/vtapi/v2/file/report', - scan => 'https://www.virustotal.com/vtapi/v2/file/scan', -); - -my $min_time = 15; # minimal time between requests (in seconds) -my $last_req = 0; -sub req { - my ($ua, @args) = @_; - if ($last_req && time - $last_req < $min_time) { - sleep($min_time - (time - $last_req)); - } - $last_req = time; - my $r = $ua->post(@args); - return undef unless $r->is_success; - my $res = eval { JSON::decode_json $r->content }; - print STDERR $@, "\n" unless defined $res; - return undef unless defined $res; - return $res->{response_code} ? $res : undef; -} - -sub scan_file { - my ($file) = @_; - my $apikey = read_file($options->{'virustotal-api-key-file'}); - my (undef, undef, $filename) = File::Spec->splitpath($file); - print "Checking $filename on virustotal\n"; - my $sha = sha256_hex(read_file($file)); - my $params_report = { - resource => $sha, - apikey => $apikey, - }; - my $ua = LWP::UserAgent->new; - my $r = req($ua, $urls{report}, $params_report); - return $r if defined $r; - my $params_scan = { - apikey => $apikey, - file => [ $file, $filename ], - }; - $r = req($ua, $urls{scan}, Content_Type => 'multipart/form-data', - Content => $params_scan); - return $r unless defined $r; - return $r unless $r->{response_code}; - my $retry = 20; - while ($retry) { - $retry--; - sleep(30); - $r = req($ua, $urls{report}, $params_report); - return $r if $r->{response_code}; - } - return $r; -} - -sub virustotal_run { - my ($tbbinfos, $test) = @_; - return unless $options->{virustotal}; - my $files = {}; - $files->{$tbbinfos->{filename}} = scan_file("$tbbinfos->{tmpdir}/$tbbinfos->{filename}"); - my $cwd = getcwd; - my $scanfile = sub { - my $file = $File::Find::name; - return unless -f $file; - return unless $file =~ m/\.exe$/; - my $relative = $file; - $relative =~ s/^$cwd\///; - $files->{$relative} = scan_file($File::Find::name); - }; - find($scanfile, $cwd); - $test->{results}{files} = $files; - $test->{results}{success} = 1; - foreach my $file (keys %$files) { - if (!$files->{$file}{response_code} || $files->{$file}{positives}) { - $test->{results}{success} = 0; - } - } -} - -1; ===================================== config/browser-rebase deleted ===================================== @@ -1,27 +0,0 @@ -# vim: filetype=perl expandtab - -use strict; -use FindBin; -use TBBTestSuite::Common; -use TBBTestSuite::TestSuite::BrowserRebaseTests; -use TBBTestSuite::BrowserGit qw(git_clone_fetch get_commits_by_branch - parent_commit git_cmd_ch); - -my $torbrowser_branch = 'tor-browser-31.6.0esr-4.5-1', -my $esr_branch = 'esr31'; -my $testsuite_version = '1'; - -my ($commit) = git_cmd_ch('git', 'show', '-s', '--format=%H', - "$torbrowser_branch^{commit}"); -my $name = "rebase-$testsuite_version-$commit"; -my $tbbinfos = TBBTestSuite::TestSuite::BrowserRebaseTests->new({ - tb_branch => $torbrowser_branch, - esr_branch => $esr_branch, - }); - -my %res = ( - name => $name, - args => [ $tbbinfos ], - tags => [ $torbrowser_branch ], -); -%res; ===================================== config/linus-nightly-virustotal deleted ===================================== @@ -1,39 +0,0 @@ -# vim: filetype=perl expandtab - -use strict; -use Data::Dump qw(dd); -use LWP::Simple; -use TBBTestSuite::Common qw(last_days); - -my $system_infos = TBBTestSuite::Common::system_infos; -my ($name, $shaurl); -my @dates = last_days(6); -my $ok = 0; - -foreach my $date (@dates) { - $shaurl = "https://people.torproject.org/~linus/builds/tbb-nightly-$date/sha256sums-un…"; - $name = "tbb-nightly-$date-win32-virustotal"; - if (-d "$options->{'reports-dir'}/r/$name") { - print "Doing nothing: $name already done\n"; - return ( args => [] ); - } - - if (get($shaurl)) { - $ok = 1; - last; - } -} -return ( args => [] ) unless $ok; - -( - name => $name, - keyring => 'linus-nightly.gpg', - args => [ $shaurl ], - virustotal => 1, - os => 'Windows', - arch => 'x86', - starttor => 0, - 'email-from' => 'TBB Nightly Tests <boklm(a)torproject.org>', - 'email-to' => [ 'boklm(a)mars-attacks.org', ], - 'reports-url' => 'http://tbb-test-reports.mars-attacks.org/reports/', -); ===================================== config/release-virustotal deleted ===================================== @@ -1,24 +0,0 @@ -# vim: filetype=perl expandtab - -use strict; -use TBBTestSuite::TBBVersion; - -my @latest_builds = TBBTestSuite::TBBVersion::latest_builds($options); -foreach my $build (@latest_builds) { - my $name = "$build->{buildname}-win32-virustotal"; - next if -d "$options->{'reports-dir'}/r/$name"; - return ( - name => $name, - keyring => "$build->{user}.gpg", - args => [ $build->{url} ], - tags => [ "$build->{version}-$build->{build}" ], - virustotal => 1, - os => 'Windows', - arch => 'x86', - starttor => 0, - 'reports-url' => 'http://tbb-test-reports.mars-attacks.org/reports/', - 'email-from' => 'TBB Tests <boklm(a)torproject.org>', - 'email-to' => [ 'tor-qa(a)lists.torproject.org', 'boklm(a)mars-attacks.org', ], - ); -} -return ( args => [] ); ===================================== config/tor-mail_build deleted ===================================== @@ -1,25 +0,0 @@ -# vim: filetype=perl expandtab -use strict; -use FindBin; -use DateTime; -use TBBTestSuite::TestSuite::TorMailBuild; - -my $date = DateTime->now->ymd; -my $name = "tor-mail-$date"; - -if (-d "$options->{'reports-dir'}/r/$name") { - print "Doing nothing: $name already done\n"; - return ( args => [] ); -} - -my $testsuite = TBBTestSuite::TestSuite::TorMailBuild->new({ - publish_dir => "$FindBin::Bin/tor-mail-builds/$date", - publish_url => "http://paganini.erinn.org/~boklm/builds/tor-mail/$date", - }); - -my %res = ( - name => $name, - args => [ $testsuite ], - tags => [ 'nightly' ], -); -%res; ===================================== config/tor-messenger_build deleted ===================================== @@ -1,25 +0,0 @@ -# vim: filetype=perl expandtab -use strict; -use FindBin; -use DateTime; -use TBBTestSuite::TestSuite::TorMessengerBuild; - -my $date = DateTime->now->ymd; -my $name = "tor-messenger-$date"; - -if (-d "$options->{'reports-dir'}/r/$name") { - print "Doing nothing: $name already done\n"; - return ( args => [] ); -} - -my $testsuite = TBBTestSuite::TestSuite::TorMessengerBuild->new({ - publish_dir => "$FindBin::Bin/tor-messenger-builds/$date", - publish_url => "http://paganini.erinn.org/~boklm/builds/tor-messenger/$date", - }); - -my %res = ( - name => $name, - args => [ $testsuite ], - tags => [ 'nightly' ], -); -%res; ===================================== doc/usage.txt ===================================== @@ -112,10 +112,6 @@ Available options using a sha256sums-unsigned-build.txt file. By default, it is the architecture you are currently running. ---virustotal:: - Enable upload of files for analysis on virustotal.com instead - of the regular testsuite. - --email-from:: Set the From header that will be used when sending reports by email. ===================================== tmpl/details_cherry_pick.html deleted ===================================== @@ -1,10 +0,0 @@ -[% IF test.results.success %] - [% IF test.results.patch_file %] - <a href="results-[% tbbfile %]/[% test.name %].patch">rebased patch</a> - [% ELSE %] - Skipped - [% END %] -[% ELSE %] -Failed diff: -<pre>[% FILTER html_entity %][% test.results.failed_diff %][% END %]</pre> -[% END %] ===================================== tmpl/details_virustotal.html deleted ===================================== @@ -1,16 +0,0 @@ -<ul> - [% FOREACH file IN test.results.files.keys %] - <li>virustotal report: - <span [% IF test.results.files.$file.positives %]class="text_red"[% END %]> - <a href="[% test.results.files.$file.permalink %]">[% file %]</a> - </span> - <ul> - [% FOREACH av IN test.results.files.$file.scans.keys %] - [% IF test.results.files.$file.scans.$av.result %] - <li>[% av %]: [% test.results.files.$file.scans.$av.result %]</li> - [% END %] - [% END %] - </ul> - </li> - [% END %] -</ul> ===================================== tmpl/report_browserbundle_virustotal.txt deleted ===================================== @@ -1,49 +0,0 @@ -Bundle infos - Filename: [% tbbfiles.$tbbfile.filename %] - sha256sum: [% tbbfiles.$tbbfile.sha256sum %] - -Results - -[% IF tbbfiles.$tbbfile.pre_tests_error -%] - pre_tests error: -[% FILTER indent(' ') -%] -[% tbbfiles.$tbbfile.pre_tests_error %] -[% END %] -[% END -%] -[% -FOREACH test IN tbbfiles.$tbbfile.tests; -NEXT IF test.type != 'virustotal'; -positives = []; -negatives = []; -FOREACH file IN test.results.files.keys.sort; - IF test.results.files.$file.positives; - positives.push(file); - ELSE; - negatives.push(file); - END; -END; - -IF positives.size == 0 -%] - No positives -[% ELSE -%] - Positives: -[% FOREACH file IN positives -%] - - [% file %] -[% FOREACH av IN test.results.files.$file.scans.keys.sort -%] -[% IF test.results.files.$file.scans.$av.result -%] - [% av %]: [% test.results.files.$file.scans.$av.result %] -[% END -%] -[% END -%] - [% test.results.files.$file.permalink %] -[% END -%] - -[% END; -IF negatives.size == 0 -%] - No negatives -[% ELSE -%] - Negatives: -[% FOREACH file IN negatives -%] - - [% file %] -[% END -%] -[% END -%] -[% END -%] ===================================== tmpl/reports_index_browserbundle_virustotal.html deleted ===================================== @@ -1,89 +0,0 @@ -[% USE date -%] -<html> - <head> - <title>Tests reports</title> - <style type="text/css"> - .test_ok { - color: #006600; - font-weight: bold; - } - .test_ok A { - color: #006600; - font-weight: bold; - } - .test_notok { - color: #FF0000; - font-weight: bold; - } - .test_notok A { - color: #FF0000; - } - .reportdate { - font-size: small; - } - </style> - </head> - <body> - <h1>[% title %]</h1> - <table> - <tr> - <th>Name</th> - <th>Date</th> - <th>Version</th> - <th>Result</th> - </tr> - [% FOREACH report IN reports_list %] - <tr> - <td valign="top"><a href="r/[% report %]/index.html">[% report %]</a></td> - <td valign="top">[% date.format(reports.$report.time, '%Y-%m-%d %H:%M') %]</td> - <td valign="top">[% IF reports.$report.options.tags %] - <a href="index-browserbundle-[% reports.$report.options.tags.0 %].html">[% reports.$report.options.tags.0 %]</a> - [% END %] - </td> - <td valign="top"> - [% failed = 0 %] - [% FOREACH tbbfile IN reports.$report.tbbfiles.keys %] - [% IF ! reports.$report.tbbfiles.$tbbfile.success %] - [% failed = 1 %] - [% END %] - [% END %] - - [% IF failed == 0 %] - <span class="test_ok"><a href="r/[% report %]/index.html">OK</a></span> - [% ELSE %] - <span class="test_notok">Failed:</span> - <ul> - [% FOREACH tbbfile IN reports.$report.tbbfiles.keys %] - [% IF ! reports.$report.tbbfiles.$tbbfile.success %] - <li><a href="r/[% report %]/[% tbbfile %].html">[% tbbfile %]</a> - <ul> - [% - FOREACH test IN reports.$report.tbbfiles.$tbbfile.tests; - NEXT IF test.type != 'virustotal'; - FOREACH file IN test.results.files.keys; - NEXT UNLESS test.results.files.$file.positives; - %]<li><a href="[% test.results.files.$file.permalink %]">[% file %]</a> - <ul> - [% FOREACH av IN test.results.files.$file.scans.keys; - IF test.results.files.$file.scans.$av.result %] - <li>[% av %]: [% test.results.files.$file.scans.$av.result %]</li> - [% END; - END -%] - </ul> - </li>[% - END; - END; - %] - </ul> - </li> - [% failed = 1 %] - [% END %] - [% END %] - </ul> - [% END %] - </td> - </tr> - [% END %] - </table> - </body> -</html> ===================================== tmpl/reports_index_browserrebase.html deleted ===================================== @@ -1,40 +0,0 @@ -[% USE date -%] -<html> - <head> - <title>Tests reports</title> - <style type="text/css"> - .test_ok { - color: #006600; - font-weight: bold; - } - .test_ok A { - color: #006600; - font-weight: bold; - } - .test_notok { - color: #FF0000; - font-weight: bold; - } - .test_notok A { - color: #FF0000; - } - .reportdate { - font-size: small; - } - </style> - [% INCLUDE togglecontent.js %] - </head> - <body> - <h1>Tor Browser Rebase Test Reports: [% title %]</h1> - [% FOREACH report IN reports_list %] - [% - SET tbbfiles = reports.$report.tbbfiles; - SET tbbfile = reports.$report.tbbfiles.keys.0; - %] - <ul> - <li><a href="r/[% report %]/[% tbbfile %].html">Details</a></li> - </ul> - <hr /> - [% END %] - </body> -</html> ===================================== tools/paganini-builds deleted ===================================== @@ -1,6 +0,0 @@ -#!/bin/sh -cd $(dirname $0)/.. -./tools/pull -export RBM_BUILDNAME=nightly -./tbb-testsuite --config=tor-mail_build "$@" -./tbb-testsuite --config=tor-messenger_build "$@" ===================================== tools/run-tests-virustotal deleted ===================================== @@ -1,5 +0,0 @@ -#!/bin/sh -cd $(dirname $0)/.. -./tools/pull -./tbb-testsuite --config=release-virustotal "$@" -./tbb-testsuite --config=linus-nightly-virustotal "$@" View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-bundle-testsuite… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-bundle-testsuite… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/mullvad-browser] Pushed new tag mullvad-browser-128.14.0esr-14.5-1-build6
by Pier Angelo Vendrame (@pierov) 13 Oct '25

13 Oct '25
Pier Angelo Vendrame pushed new tag mullvad-browser-128.14.0esr-14.5-1-build6 at The Tor Project / Applications / Mullvad Browser -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/tree/mullv… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser-build][main] Bump Firefox version to 140.4.0esr for nightly builds
by Pier Angelo Vendrame (@pierov) 13 Oct '25

13 Oct '25
Pier Angelo Vendrame pushed to branch main at The Tor Project / Applications / tor-browser-build Commits: e1691714 by Pier Angelo Vendrame at 2025-10-13T15:20:50+02:00 Bump Firefox version to 140.4.0esr for nightly builds - - - - - 2 changed files: - projects/firefox/config - projects/geckoview/config Changes: ===================================== projects/firefox/config ===================================== @@ -16,12 +16,12 @@ container: use_container: 1 var: - firefox_platform_version: '140.3.0' + firefox_platform_version: '140.4.0' firefox_version: '[% c("var/firefox_platform_version") %]esr' browser_series: '15.0' browser_rebase: 1 browser_branch: '[% c("var/browser_series") %]-[% c("var/browser_rebase") %]' - browser_build: 3 + browser_build: 1 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 ===================================== @@ -18,12 +18,12 @@ container: build_apk: 1 var: - firefox_platform_version: '140.3.0' + firefox_platform_version: '140.4.0' geckoview_version: '[% c("var/firefox_platform_version") %]esr' browser_series: '15.0' browser_rebase: 1 browser_branch: '[% c("var/browser_series") %]-[% c("var/browser_rebase") %]' - browser_build: 3 + browser_build: 1 gitlab_project: https://gitlab.torproject.org/tpo/applications/tor-browser git_commit: '[% exec("git rev-parse " _ c("git_hash") _ "^{commit}", { exec_noco => 1 }) %]' deps: View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/e… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/e… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/mullvad-browser] Pushed new tag mullvad-browser-140.4.0esr-15.0-1-build1
by Pier Angelo Vendrame (@pierov) 13 Oct '25

13 Oct '25
Pier Angelo Vendrame pushed new tag mullvad-browser-140.4.0esr-15.0-1-build1 at The Tor Project / Applications / Mullvad Browser -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/tree/mullv… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/mullvad-browser][mullvad-browser-140.4.0esr-15.0-1] 25 commits: Add CI for Mullvad Browser
by Pier Angelo Vendrame (@pierov) 13 Oct '25

13 Oct '25
Pier Angelo Vendrame pushed to branch mullvad-browser-140.4.0esr-15.0-1 at The Tor Project / Applications / Mullvad Browser Commits: cccc4078 by Henry Wilkes at 2025-10-08T21:36:58+02:00 Add CI for Mullvad Browser - - - - - 033b42a6 by Pier Angelo Vendrame at 2025-10-08T21:36:59+02:00 MB 38: Mullvad Browser configuration - - - - - 28d41b71 by Pier Angelo Vendrame at 2025-10-08T21:40:00+02:00 MB 1: Mullvad Browser branding See also: mullvad-browser#5: Product name and directory customization mullvad-browser#12: Create new branding directories and integrate Mullvad icons+branding mullvad-browser#14: Remove Default Built-in bookmarks mullvad-browser#35: Add custom PDF icons for Windows builds mullvad-browser#48: Replace Mozilla copyright and legal trademarks in mullvadbrowser.exe metadata mullvad-browser#51: Update trademark string mullvad-browser#104: Update shipped dll metadata copyright/licensing info mullvad-browser#107: Add alpha and nightly icons - - - - - 40180d4f by Henry Wilkes at 2025-10-08T21:40:01+02:00 Mullvad Browser strings This commit adds strings needed by the following Mullvad Browser patches. - - - - - c5df6e5c by Pier Angelo Vendrame at 2025-10-08T21:40:01+02:00 MB 20: Allow packaged-addons in PBM. We install a few addons from the distribution directory, but they are not automatically enabled for PBM mode. This commit modifies the code that installs them to also add the PBM permission to the known ones. - - - - - bd7c2ff5 by Pier Angelo Vendrame at 2025-10-08T21:40:01+02:00 MB 63: Customize some about pages for Mullvad Browser Also: mullvad-browser#57: Purge unneeded about: pages - - - - - 6298c5cd by Pier Angelo Vendrame at 2025-10-08T21:40:02+02:00 MB 37: Customization for the about dialog - - - - - 769339f3 by Henry Wilkes at 2025-10-08T21:40:02+02:00 MB 39: Add home page about:mullvad-browser - - - - - 0bf9bf90 by hackademix at 2025-10-08T21:40:03+02:00 MB 97: Remove UI cues to install new extensions. - - - - - 6fde4688 by hackademix at 2025-10-08T21:40:03+02:00 MB 47: uBlock Origin customization - - - - - 0498416a by Pier Angelo Vendrame at 2025-10-08T21:40:03+02:00 MB 21: Disable the password manager This commit disables the about:login page and removes the "Login and Password" section of about:preferences. We do not do anything to the real password manager of Firefox, that is in toolkit: it contains C++ parts that make it difficult to actually prevent it from being built.. Finally, we modify the the function that opens about:login to report an error in the console so that we can quickly get a backtrace to the code that tries to use it. - - - - - d66ecbca by Pier Angelo Vendrame at 2025-10-08T21:40:04+02:00 MB 112: Updater customization for Mullvad Browser MB 71: Set the updater base URL to Mullvad domain - - - - - 5ef59431 by Nicolas Vigier at 2025-10-08T21:40:04+02:00 MB 79: Add Mullvad Browser MAR signing keys MB 256: Add mullvad-browser nightly mar signing key - - - - - 3267e829 by Pier Angelo Vendrame at 2025-10-08T21:40:04+02:00 MB 34: Hide unsafe and unwanted preferences UI about:preferences allow to override some of our defaults, that could be fingeprintable or have some other unwanted consequences. - - - - - 7041a646 by Pier Angelo Vendrame at 2025-10-08T21:40:05+02:00 MB 160: Disable the cookie exceptions button Besides disabling the "Delete on close checkbox", disable also the "Manage Exceptions" button when always using PBM. - - - - - 6aa87b3b by hackademix at 2025-10-08T21:40:05+02:00 MB 163: prevent uBlock Origin from being uninstalled/disabled - - - - - 36940c10 by Richard Pospesel at 2025-10-08T21:40:06+02:00 MB 188: Customize Gitlab Issue and Merge templates - - - - - 733f45ee by rui hildt at 2025-10-08T21:41:09+02:00 MB 213: Customize the search engines list. - - - - - 1fb88285 by Pier Angelo Vendrame at 2025-10-08T21:47:08+02:00 fixup! MB 213: Customize the search engines list MB 468: Remove Metager. - - - - - 1abae5a4 by Pier Angelo Vendrame at 2025-10-08T21:47:08+02:00 fixup! MB 213: Customize the search engines list BB 44153: Add search engine tests. - - - - - bf6aebac by hackademix at 2025-10-08T21:47:09+02:00 MB 214: Enable cross-tab identity leak protection in "quiet" mode - - - - - 50a400dc by Pier Angelo Vendrame at 2025-10-08T21:47:09+02:00 MB 80: Enable Mullvad Browser as a default browser - - - - - 75b46d18 by Pier Angelo Vendrame at 2025-10-08T21:47:09+02:00 MB 320: Temporarily disable WebRTC and WDBA on Windows. WebRTC should be re-enabled when tor-browser#42758 is resolved, and and the default browser agent when in general we make this feature work again. - - - - - 3c002826 by Henry Wilkes at 2025-10-08T21:47:10+02:00 MB 329: Customize toolbar for mullvad-browser. - - - - - 5a4f81f8 by Henry Wilkes at 2025-10-08T21:47:10+02:00 MB 419: Mullvad Browser migration procedures. This commit implements the the Mullvad Browser's version of _migrateUI. - - - - - 251 changed files: - .gitlab/ci/jobs/update-translations.yml - .gitlab/issue_templates/000 Bug Report.md - .gitlab/issue_templates/010 Proposal.md - .gitlab/issue_templates/020 Web Compatibility.md - .gitlab/issue_templates/030 Test.md - .gitlab/issue_templates/040 Feature.md - .gitlab/issue_templates/060 Rebase - Alpha.md - .gitlab/issue_templates/061 Rebase - Stable.md - .gitlab/issue_templates/063 Rebase - Rapid.md - .gitlab/issue_templates/090 Emergency Security Issue.md - .gitlab/merge_request_templates/Default.md - + .gitlab/merge_request_templates/Rebase.md - browser/app/Makefile.in - browser/app/macbuild/Contents/Info.plist.in - browser/app/module.ver - browser/app/firefox.exe.manifest → browser/app/mullvadbrowser.exe.manifest - + browser/app/profile/000-mullvad-browser.js - browser/app/profile/001-base-profile.js - browser/base/content/aboutDialog.xhtml - browser/base/content/appmenu-viewcache.inc.xhtml - browser/base/content/browser-menubar.inc - browser/base/content/browser-places.js - browser/base/content/browser.js - browser/base/content/default-bookmarks.html - browser/base/content/nsContextMenu.sys.mjs - browser/base/content/overrides/app-license.html - browser/base/content/pageinfo/pageInfo.xhtml - browser/base/content/utilityOverlay.js - browser/branding/branding-common.mozbuild - + browser/branding/mb-alpha/VisualElements_150.png - + browser/branding/mb-alpha/VisualElements_70.png - + browser/branding/mb-alpha/configure.sh - + browser/branding/mb-alpha/content/about-logo.png - + browser/branding/mb-alpha/content/about-logo.svg - + browser/branding/mb-alpha/content/about-logo(a)2x.png - + browser/branding/mb-alpha/content/about-wordmark.svg - + browser/branding/mb-alpha/content/about.png - + browser/branding/mb-alpha/content/aboutDialog.css - + browser/branding/mb-alpha/content/document_pdf.svg - + browser/branding/mb-alpha/content/firefox-wordmark.svg - + browser/branding/mb-alpha/content/icon128.png - + browser/branding/mb-alpha/content/icon16.png - + browser/branding/mb-alpha/content/icon256.png - + browser/branding/mb-alpha/content/icon32.png - + browser/branding/mb-alpha/content/icon48.png - + browser/branding/mb-alpha/content/icon64.png - + browser/branding/mb-alpha/content/jar.mn - + browser/branding/mb-alpha/content/moz.build - + browser/branding/mb-alpha/content/mullvad-branding.css - + browser/branding/mb-alpha/default128.png - + browser/branding/mb-alpha/default16.png - + browser/branding/mb-alpha/default22.png - + browser/branding/mb-alpha/default24.png - + browser/branding/mb-alpha/default256.png - + browser/branding/mb-alpha/default32.png - + browser/branding/mb-alpha/default48.png - + browser/branding/mb-alpha/default64.png - + browser/branding/mb-alpha/document.icns - + browser/branding/mb-alpha/document.ico - + browser/branding/mb-alpha/document_pdf.ico - + browser/branding/mb-alpha/firefox.icns - + browser/branding/mb-alpha/firefox.ico - + browser/branding/mb-alpha/firefox.svg - + browser/branding/mb-alpha/locales/en-US/brand.ftl - + browser/branding/mb-alpha/locales/en-US/brand.properties - + browser/branding/mb-alpha/locales/jar.mn - + browser/branding/mb-alpha/locales/moz.build - + browser/branding/mb-alpha/locales/mullvad-about-wordmark-en.ftl - + browser/branding/mb-alpha/moz.build - + browser/branding/mb-alpha/mullvadbrowser.VisualElementsManifest.xml - + browser/branding/mb-alpha/newtab.ico - + browser/branding/mb-alpha/newwindow.ico - + browser/branding/mb-alpha/pbmode.ico - + browser/branding/mb-alpha/pref/firefox-branding.js - + browser/branding/mb-nightly/VisualElements_150.png - + browser/branding/mb-nightly/VisualElements_70.png - + browser/branding/mb-nightly/configure.sh - + browser/branding/mb-nightly/content/about-logo.png - + browser/branding/mb-nightly/content/about-logo.svg - + browser/branding/mb-nightly/content/about-logo(a)2x.png - + browser/branding/mb-nightly/content/about-wordmark.svg - + browser/branding/mb-nightly/content/about.png - + browser/branding/mb-nightly/content/aboutDialog.css - + browser/branding/mb-nightly/content/document_pdf.svg - + browser/branding/mb-nightly/content/firefox-wordmark.svg - + browser/branding/mb-nightly/content/icon128.png - + browser/branding/mb-nightly/content/icon16.png - + browser/branding/mb-nightly/content/icon256.png - + browser/branding/mb-nightly/content/icon32.png - + browser/branding/mb-nightly/content/icon48.png - + browser/branding/mb-nightly/content/icon64.png - + browser/branding/mb-nightly/content/jar.mn - + browser/branding/mb-nightly/content/moz.build - + browser/branding/mb-nightly/content/mullvad-branding.css - + browser/branding/mb-nightly/default128.png - + browser/branding/mb-nightly/default16.png - + browser/branding/mb-nightly/default22.png - + browser/branding/mb-nightly/default24.png - + browser/branding/mb-nightly/default256.png - + browser/branding/mb-nightly/default32.png - + browser/branding/mb-nightly/default48.png - + browser/branding/mb-nightly/default64.png - + browser/branding/mb-nightly/document.icns - + browser/branding/mb-nightly/document.ico - + browser/branding/mb-nightly/document_pdf.ico - + browser/branding/mb-nightly/firefox.icns - + browser/branding/mb-nightly/firefox.ico - + browser/branding/mb-nightly/firefox.svg - + browser/branding/mb-nightly/locales/en-US/brand.ftl - + browser/branding/mb-nightly/locales/en-US/brand.properties - + browser/branding/mb-nightly/locales/jar.mn - + browser/branding/mb-nightly/locales/moz.build - + browser/branding/mb-nightly/locales/mullvad-about-wordmark-en.ftl - + browser/branding/mb-nightly/moz.build - + browser/branding/mb-nightly/mullvadbrowser.VisualElementsManifest.xml - + browser/branding/mb-nightly/newtab.ico - + browser/branding/mb-nightly/newwindow.ico - + browser/branding/mb-nightly/pbmode.ico - + browser/branding/mb-nightly/pref/firefox-branding.js - + browser/branding/mb-release/VisualElements_150.png - + browser/branding/mb-release/VisualElements_70.png - + browser/branding/mb-release/configure.sh - + browser/branding/mb-release/content/about-logo.png - + browser/branding/mb-release/content/about-logo.svg - + browser/branding/mb-release/content/about-logo(a)2x.png - + browser/branding/mb-release/content/about-wordmark.svg - + browser/branding/mb-release/content/about.png - + browser/branding/mb-release/content/aboutDialog.css - + browser/branding/mb-release/content/document_pdf.svg - + browser/branding/mb-release/content/firefox-wordmark.svg - + browser/branding/mb-release/content/icon128.png - + browser/branding/mb-release/content/icon16.png - + browser/branding/mb-release/content/icon256.png - + browser/branding/mb-release/content/icon32.png - + browser/branding/mb-release/content/icon48.png - + browser/branding/mb-release/content/icon64.png - + browser/branding/mb-release/content/jar.mn - + browser/branding/mb-release/content/moz.build - + browser/branding/mb-release/content/mullvad-branding.css - + browser/branding/mb-release/default128.png - + browser/branding/mb-release/default16.png - + browser/branding/mb-release/default22.png - + browser/branding/mb-release/default24.png - + browser/branding/mb-release/default256.png - + browser/branding/mb-release/default32.png - + browser/branding/mb-release/default48.png - + browser/branding/mb-release/default64.png - + browser/branding/mb-release/document.icns - + browser/branding/mb-release/document.ico - + browser/branding/mb-release/document_pdf.ico - + browser/branding/mb-release/firefox.icns - + browser/branding/mb-release/firefox.ico - + browser/branding/mb-release/firefox.svg - + browser/branding/mb-release/locales/en-US/brand.ftl - + browser/branding/mb-release/locales/en-US/brand.properties - + browser/branding/mb-release/locales/jar.mn - + browser/branding/mb-release/locales/moz.build - + browser/branding/mb-release/locales/mullvad-about-wordmark-en.ftl - + browser/branding/mb-release/moz.build - + browser/branding/mb-release/mullvadbrowser.VisualElementsManifest.xml - + browser/branding/mb-release/newtab.ico - + browser/branding/mb-release/newwindow.ico - + browser/branding/mb-release/pbmode.ico - + browser/branding/mb-release/pref/firefox-branding.js - browser/components/BrowserContentHandler.sys.mjs - browser/components/BrowserGlue.sys.mjs - browser/components/DesktopActorRegistry.sys.mjs - browser/components/ProfileDataUpgrader.sys.mjs - browser/components/about/AboutRedirector.cpp - browser/components/about/components.conf - browser/components/customizableui/CustomizableUI.sys.mjs - browser/components/moz.build - + browser/components/mullvad-browser/AboutMullvadBrowserChild.sys.mjs - + browser/components/mullvad-browser/AboutMullvadBrowserParent.sys.mjs - + browser/components/mullvad-browser/content/2728-sparkles.svg - + browser/components/mullvad-browser/content/aboutMullvadBrowser.css - + browser/components/mullvad-browser/content/aboutMullvadBrowser.html - + browser/components/mullvad-browser/content/aboutMullvadBrowser.js - + browser/components/mullvad-browser/jar.mn - + browser/components/mullvad-browser/moz.build - browser/components/preferences/home.inc.xhtml - browser/components/preferences/main.js - browser/components/preferences/preferences.xhtml - browser/components/preferences/privacy.inc.xhtml - browser/components/preferences/privacy.js - browser/components/preferences/search.inc.xhtml - browser/components/shell/ShellService.sys.mjs - browser/components/shell/WindowsDefaultBrowser.cpp - browser/components/shell/nsWindowsShellService.cpp - browser/config/mozconfigs/base-browser - + browser/config/mozconfigs/mullvad-browser - browser/installer/package-manifest.in - browser/installer/windows/nsis/updater_append.ini - browser/locales/l10n.toml - browser/modules/HomePage.sys.mjs - browser/moz.build - browser/moz.configure - config/create_rc.py - devtools/client/aboutdebugging/src/actions/runtimes.js - devtools/client/aboutdebugging/src/components/sidebar/Sidebar.js - devtools/client/jar.mn - devtools/client/themes/images/aboutdebugging-firefox-aurora.svg - devtools/client/themes/images/aboutdebugging-firefox-beta.svg - devtools/client/themes/images/aboutdebugging-firefox-logo.svg - devtools/client/themes/images/aboutdebugging-firefox-nightly.svg - devtools/client/themes/images/aboutdebugging-firefox-release.svg - + devtools/client/themes/images/aboutdebugging-mullvadbrowser-logo.svg - docshell/base/nsAboutRedirector.cpp - docshell/build/components.conf - moz.configure - mozconfig-linux-aarch64 - mozconfig-linux-aarch64-dev - mozconfig-linux-x86_64 - mozconfig-linux-x86_64-asan - mozconfig-linux-x86_64-dev - mozconfig-macos - mozconfig-macos-dev - mozconfig-windows-x86_64 - + other-licenses/nsis/Contrib/ApplicationID/Makefile - other-licenses/nsis/Contrib/ApplicationID/Set.cpp - + other-licenses/nsis/Contrib/CityHash/Makefile - toolkit/components/extensions/child/ext-storage.js - toolkit/components/extensions/parent/ext-storage.js - toolkit/components/passwordmgr/LoginHelper.sys.mjs - toolkit/components/search/content/base-browser-search-engine-icons.json - toolkit/components/search/content/base-browser-search-engines.json - + toolkit/components/search/content/brave.svg - + toolkit/components/search/content/mojeek.ico - + toolkit/components/search/content/mullvad-leta.svg - toolkit/components/search/tests/xpcshell/test_base_browser.js - toolkit/components/securitylevel/SecurityLevel.sys.mjs - + toolkit/content/aboutRightsMullvad.xhtml - + toolkit/content/aboutTelemetryMullvad.xhtml - toolkit/content/jar.mn - + toolkit/locales/en-US/toolkit/global/mullvad-browser.ftl - toolkit/mozapps/defaultagent/EventLog.h - toolkit/mozapps/defaultagent/SetDefaultBrowser.cpp - toolkit/mozapps/extensions/AddonManager.sys.mjs - toolkit/mozapps/extensions/content/aboutaddons.css - toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs - toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs - toolkit/mozapps/update/updater/nightly_aurora_level3_primary.der - toolkit/mozapps/update/updater/nightly_aurora_level3_secondary.der - toolkit/mozapps/update/updater/release_primary.der - toolkit/mozapps/update/updater/release_secondary.der - + toolkit/themes/shared/icons/mullvadbrowser.png - toolkit/themes/shared/minimal-toolkit.jar.inc.mn - toolkit/xre/nsAppRunner.cpp - tools/lint/fluent-lint/exclusions.yml - widget/windows/WinTaskbar.cpp - widget/windows/moz.build The diff was not included because it is too large. View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/0b… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/0b… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser-bundle-testsuite] Pushed new branch 40089-1-clean
by brizental (@brizental) 13 Oct '25

13 Oct '25
brizental pushed new branch 40089-1-clean at The Tor Project / Applications / tor-browser-bundle-testsuite -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-bundle-testsuite… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
  • ← Newer
  • 1
  • ...
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • ...
  • 1973
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.