brizental pushed to branch mullvad-browser-146.0a1-16.0-1 at The Tor Project / Applications / Mullvad Browser WARNING: The push did not contain any new commits, but force pushed to delete the commits and changes below. Deleted commits: 5af13b75 by Pier Angelo Vendrame at 2025-12-03T09:16:51-03:00 fixup! BB 43140: Tighten up fonts on Linux. BB 44315: Fix the fonts on the updater. - - - - - d359c213 by Pier Angelo Vendrame at 2025-12-03T09:16:52-03:00 fixup! BB 43525: Skip Remote Settings for search engine customization. MB 483: Ship DDG without AI as a bundled search engine. MB 487: Use custom order for search engines. - - - - - bbe21982 by Beatriz Rizental at 2025-12-03T09:16:53-03:00 fixup! Tweaks to the build system Skip downloading WPT artifacts when generating test artifacts. - - - - - 43309ee3 by Pier Angelo Vendrame at 2025-12-03T09:16:53-03:00 fixup! BB 43615: Add Gitlab Issue and Merge Request templates Update GitLab templates. Avoid mentioning existing issues/MRs, and update the channels. - - - - - d7b0c8b2 by Pier Angelo Vendrame at 2025-12-03T09:16:54-03:00 fixup! BB 31575: Disable Firefox Home (Activity Stream) BB 44302: Add URI_CAN_LOAD_IN_PRIVILEGEDABOUT_PROCESS to some about pages. - - - - - c069186f by Beatriz Rizental at 2025-12-03T09:16:55-03:00 fixup! BB 42728: Modify ./mach lint to skip unused linters - - - - - 696b02a3 by Pier Angelo Vendrame at 2025-12-03T09:16:55-03:00 fixup! Tweaks to the build system TB 44370: Always create target.maven.zip on Android. - - - - - 0f552652 by Henry Wilkes at 2025-12-03T09:16:56-03:00 fixup! BB 40925: Implemented the Security Level component TB 44365: Fix CSS linting errors and missing variables. - - - - - cc63d325 by Henry Wilkes at 2025-12-03T09:16:57-03:00 fixup! BB 32308: Use direct browser sizing for letterboxing. TB 44365: Fix CSS linting errors and missing variables. - - - - - c432145c by Beatriz Rizental at 2025-12-03T09:24:24-03:00 fixup! Tweaks to the build system Fix linter issues. Related to using things that are not being imported since we commented them out. Guess the linter doesnt care that the code is unreacheable. - - - - - 3b120502 by Beatriz Rizental at 2025-12-03T09:24:36-03:00 fixup! BB 43564: Modify ./mach bootstrap for Base Browser - - - - - 9a00ac3f by Beatriz Rizental at 2025-12-03T09:24:49-03:00 BB 44400: Disable liquid app glass icons for MacOS This reverts commit 7ee252421988d7b3a38dc650986a3b4c3321a823. - - - - - 7d555719 by Beatriz Rizental at 2025-12-03T09:24:58-03:00 fixup! BB 42728: Modify ./mach lint to skip unused linters - - - - - fcc576ca by Beatriz Rizental at 2025-12-03T09:25:08-03:00 fixup! Add CI for Base Browser Filed a review ticket https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/44402 Turned a linter rule back to warning for now. - - - - - 25 changed files: - .gitlab/issue_templates/040 Feature.md - .gitlab/issue_templates/050 Backport.md - .gitlab/merge_request_templates/Default.md - browser/app/Makefile.in - browser/app/macbuild/Contents/Info.plist.in - − browser/branding/aurora/Assets.car - − browser/branding/nightly/Assets.car - − browser/branding/official/Assets.car - − browser/branding/unofficial/Assets.car - browser/components/about/AboutRedirector.cpp - browser/components/securitylevel/content/securityLevelPanel.css - browser/components/securitylevel/content/securityLevelPreferences.css - browser/installer/package-manifest.in - build/moz.configure/basebrowser-resources.configure - eslint.config.mjs - mobile/android/mach_commands.py - python/mach/mach/sentry.py - python/mach/mach/telemetry.py - python/mozlint/mozlint/cli.py - testing/testsuite-targets.mk - toolkit/components/resistfingerprinting/content/letterboxing.css - toolkit/components/search/content/base-browser-search-engine-icons.json - toolkit/components/search/content/base-browser-search-engines.json - toolkit/components/search/tests/xpcshell/test_base_browser.js - toolkit/mozapps/update/updater/updater.cpp Changes: ===================================== .gitlab/issue_templates/040 Feature.md ===================================== @@ -18,11 +18,11 @@ Provide an overview of the technical/implementation aspects of this feature ### Proposal <!-- Add links to associated proposal issues (or delete block) --> -- tor-browser#12345 +- tor-browser#xxxxx ### Design <!-- Add links to associated design issues (or delete block) --> -- tpo/UX/Design#123 +- tpo/UX/Design#xyz <!-- Do not edit beneath this line <3 --> ===================================== .gitlab/issue_templates/050 Backport.md ===================================== @@ -13,12 +13,12 @@ please ensure the title has the following format: ## Bookkeeping ### Issue(s) -- tor-browser#12345 -- mullvad-browser#123 -- https://bugzilla.mozilla.org/show_bug.cgi?id=1234567 +- tor-browser#xxxxx +- mullvad-browser#xyz +- https://bugzilla.mozilla.org/show_bug.cgi?id=xxxxxxx ### Merge Request(s) -- tor-browser!123 +- tor-browser!xxxx ### Target Channels ===================================== .gitlab/merge_request_templates/Default.md ===================================== @@ -27,8 +27,8 @@ #### Target Channels -- [ ] **Alpha**: esr140-15.0 -- [ ] **Stable**: esr128-14.5 +- [ ] **Alpha**: rapid release, 16.0 +- [ ] **Stable**: esr140-15.0 - [ ] **Legacy**: esr115-13.5 ### Backporting ===================================== browser/app/Makefile.in ===================================== @@ -92,7 +92,6 @@ tools repackage:: $(DIST)/bin/$(MOZ_APP_NAME) $(objdir)/macbuild/Contents/MacOS- rsync -aL $(DIST)/bin/$(MOZ_APP_NAME) '$(dist_dest)/Contents/MacOS' cp -RL $(topsrcdir)/$(MOZ_BRANDING_DIRECTORY)/firefox.icns '$(dist_dest)/Contents/Resources/firefox.icns' cp -RL $(topsrcdir)/$(MOZ_BRANDING_DIRECTORY)/document.icns '$(dist_dest)/Contents/Resources/document.icns' - cp -RL $(topsrcdir)/$(MOZ_BRANDING_DIRECTORY)/Assets.car '$(dist_dest)/Contents/Resources/Assets.car' ifndef BASE_BROWSER_UPDATE $(MKDIR) -p '$(dist_dest)/Contents/Library/LaunchServices' ifdef MOZ_UPDATER ===================================== browser/app/macbuild/Contents/Info.plist.in ===================================== @@ -190,8 +190,6 @@ <string>@MAC_APP_NAME@ @APP_VERSION@</string> <key>CFBundleIconFile</key> <string>firefox.icns</string> - <key>CFBundleIconName</key> - <string>AppIcon</string> <key>CFBundleIdentifier</key> <string>@MOZ_MACBUNDLE_ID@</string> <key>CFBundleInfoDictionaryVersion</key> ===================================== browser/branding/aurora/Assets.car deleted ===================================== Binary files a/browser/branding/aurora/Assets.car and /dev/null differ ===================================== browser/branding/nightly/Assets.car deleted ===================================== Binary files a/browser/branding/nightly/Assets.car and /dev/null differ ===================================== browser/branding/official/Assets.car deleted ===================================== Binary files a/browser/branding/official/Assets.car and /dev/null differ ===================================== browser/branding/unofficial/Assets.car deleted ===================================== Binary files a/browser/branding/unofficial/Assets.car and /dev/null differ ===================================== browser/components/about/AboutRedirector.cpp ===================================== @@ -36,6 +36,7 @@ struct RedirEntry { static const uint32_t BASE_BROWSER_HOME_PAGE_FLAGS = nsIAboutModule::URI_MUST_LOAD_IN_CHILD | + nsIAboutModule::URI_CAN_LOAD_IN_PRIVILEGEDABOUT_PROCESS | nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT | nsIAboutModule::ALLOW_SCRIPT | nsIAboutModule::IS_SECURE_CHROME_UI; ===================================== browser/components/securitylevel/content/securityLevelPanel.css ===================================== @@ -59,7 +59,7 @@ } #securityLevel-level { - font-size: 1.25em; + font-size: larger; font-weight: var(--font-weight-bold); grid-area: title; } ===================================== browser/components/securitylevel/content/securityLevelPreferences.css ===================================== @@ -63,7 +63,7 @@ .security-level-name { grid-area: name; - font-weight: bold; + font-weight: var(--font-weight-bold); align-self: center; white-space: nowrap; } @@ -97,7 +97,7 @@ #security-level-current { margin-block-start: var(--space-large); background: var(--background-color-box); - border: 1px solid var(--in-content-box-border-color); + border: 1px solid var(--border-color); border-radius: var(--border-radius-small); padding: var(--space-medium); } ===================================== browser/installer/package-manifest.in ===================================== @@ -44,7 +44,6 @@ @APPNAME@/Contents/PkgInfo @RESPATH@/firefox.icns @RESPATH@/document.icns -@RESPATH@/Assets.car @RESPATH@/@LPROJ_ROOT@.lproj/* #endif ===================================== build/moz.configure/basebrowser-resources.configure ===================================== @@ -55,6 +55,7 @@ option( nargs=1, default=None, help="Path to location of fonts directory.", + when=is_desktop_build, ) @@ -63,8 +64,11 @@ option( mozbuild_state_path, bootstrap_path( "fonts", - when=depends("--with-tor-browser-fonts")(lambda x: not x) & is_desktop_build, + when=depends("--with-tor-browser-fonts", when=is_desktop_build)( + lambda x: not x + ), ), + when=is_desktop_build, ) @checking("for tor-browser fonts directory") @imports(_from="pathlib", _import="Path") ===================================== eslint.config.mjs ===================================== @@ -420,7 +420,7 @@ let config = [ ignores: ["toolkit/**/test/**", "toolkit/**/tests/**"], plugins: { mozilla }, rules: { - "mozilla/no-browser-refs-in-toolkit": "error", + "mozilla/no-browser-refs-in-toolkit": "warn", }, }, { ===================================== mobile/android/mach_commands.py ===================================== @@ -197,8 +197,7 @@ def android_archive_geckoview(command_context, args): if ret != 0: return ret - if "MOZ_AUTOMATION" in os.environ: - create_maven_archive(command_context.topobjdir) + create_maven_archive(command_context.topobjdir) return 0 ===================================== python/mach/mach/sentry.py ===================================== @@ -35,7 +35,8 @@ class SentryErrorReporter(ErrorReporter): """Reports errors using Sentry.""" def report_exception(self, exception): - return sentry_sdk.capture_exception(exception) + pass + # return sentry_sdk.capture_exception(exception) class NoopErrorReporter(ErrorReporter): @@ -61,10 +62,10 @@ def register_sentry(argv, settings, topsrcdir: Path): ) _is_unmodified_mach_core_thread.start() - sentry_sdk.init( - _SENTRY_DSN, before_send=lambda event, _: _process_event(event, topsrcdir) - ) - sentry_sdk.add_breadcrumb(message="./mach {}".format(" ".join(argv))) + # sentry_sdk.init( + # _SENTRY_DSN, before_send=lambda event, _: _process_event(event, topsrcdir) + # ) + # sentry_sdk.add_breadcrumb(message="./mach {}".format(" ".join(argv))) return SentryErrorReporter() ===================================== python/mach/mach/telemetry.py ===================================== @@ -7,7 +7,6 @@ import importlib.util import os import subprocess import sys -import urllib.parse as urllib_parse from pathlib import Path from textwrap import dedent @@ -129,40 +128,6 @@ def resolve_setting_from_arcconfig(topsrcdir: Path, setting): def resolve_is_employee_by_credentials(topsrcdir: Path): return None - try: - phabricator_uri = resolve_setting_from_arcconfig(topsrcdir, "phabricator.uri") - - if not phabricator_uri: - return None - - with arcrc_path().open() as arcrc_file: - arcrc = json.load(arcrc_file) - - phabricator_token = ( - arcrc.get("hosts", {}) - .get(urllib_parse.urljoin(phabricator_uri, "api/"), {}) - .get("token") - ) - - if not phabricator_token: - return None - - bmo_uri = ( - resolve_setting_from_arcconfig(topsrcdir, "bmo_url") - or "https://bugzilla.mozilla.org" - ) - bmo_api_url = urllib_parse.urljoin(bmo_uri, "rest/whoami") - bmo_result = requests.get( - bmo_api_url, headers={"X-PHABRICATOR-TOKEN": phabricator_token} - ) - - return "mozilla-employee-confidential" in bmo_result.json().get("groups", []) - except ( - FileNotFoundError, - json.JSONDecodeError, - requests.exceptions.RequestException, - ): - return None def resolve_is_employee_by_vcs(topsrcdir: Path): ===================================== python/mozlint/mozlint/cli.py ===================================== @@ -16,8 +16,11 @@ from mozlint.formatters import all_formatters # Below is a list of linters we do not use, # these will be skipped when running `./mach lint` commands. INACTIVE_LINTERS = [ + "android-ac", "android-api-lint", "android-checkstyle", + "android-fenix", + "android-focus", "android-format", "android-javadoc", "android-lint", @@ -33,7 +36,10 @@ INACTIVE_LINTERS = [ "rejected-words", "rst", "updatebot", + "typescript", "wpt", + "stylelint", + "glean-parser", ] ===================================== testing/testsuite-targets.mk ===================================== @@ -151,7 +151,7 @@ download-wpt-manifest: $(call py_action,download_wpt_manifest) define package_archive -package-tests-$(1): stage-all package-tests-prepare-dest download-wpt-manifest +package-tests-$(1): stage-all package-tests-prepare-dest $$(call py_action,test_archive, \ $(1) \ '$$(abspath $$(test_archive_dir))/$$(PKG_BASENAME).$(1).tests.$(2)') ===================================== toolkit/components/resistfingerprinting/content/letterboxing.css ===================================== @@ -17,6 +17,9 @@ } } +/* stylelint-disable stylelint-plugin-mozilla/use-border-color-tokens */ +/* stylelint-disable stylelint-plugin-mozilla/use-border-radius-tokens */ + #tabbrowser-tabbox.letterboxing { --letterboxing-bgcolor: var(--background-color-canvas); /* Match the border radius used for the sidebar. */ ===================================== toolkit/components/search/content/base-browser-search-engine-icons.json ===================================== @@ -2,6 +2,9 @@ "ddg": [ { "url": "chrome://global/content/search/duckduckgo.ico", "imageSize": 32 } ], + "ddg-noai": [ + { "url": "chrome://global/content/search/duckduckgo.ico", "imageSize": 32 } + ], "startpage": [ { "url": "chrome://global/content/search/startpage-16.png", ===================================== toolkit/components/search/content/base-browser-search-engines.json ===================================== @@ -17,6 +17,24 @@ "recordType": "engine", "variants": [{ "environment": { "allRegionsAndLocales": true } }] }, + { + "base": { + "aliases": ["ddgnoai"], + "classification": "general", + "name": "DuckDuckGo (no AI)", + "urls": { + "search": { + "base": "https://noai.duckduckgo.com/", + "params": [], + "searchTermParamName": "q" + } + } + }, + "id": "91687f02-56dd-4fef-ba26-bf139dff3166", + "identifier": "ddg-noai", + "recordType": "engine", + "variants": [{ "environment": { "allRegionsAndLocales": true } }] + }, { "base": { "aliases": ["startpage", "sp"], @@ -39,5 +57,14 @@ "recordType": "defaultEngines", "globalDefault": "ddg", "globalDefaultPrivate": "ddg" + }, + { + "recordType": "engineOrders", + "orders": [ + { + "environment": { "allRegionsAndLocales": true }, + "order": ["ddg", "ddg-noai", "startpage"] + } + ] } ] ===================================== toolkit/components/search/tests/xpcshell/test_base_browser.js ===================================== @@ -4,12 +4,15 @@ /** * This tests the SearchService to check our override of the remote settings is * working as expected. + * + * When adding new engines, it should be enough to change expectedURLs below. */ "use strict"; const expectedURLs = { ddg: "https://duckduckgo.com/?q=test", + "ddg-noai": "https://noai.duckduckgo.com/?q=test", startpage: "https://www.startpage.com/sp/search?q=test", }; const defaultEngine = "ddg"; @@ -45,3 +48,11 @@ add_task(function test_checkSearchURLs() { Assert.equal(foundUrl, url, `The URL of ${engine.name} is not altered.`); } }); + +add_task(async function test_iconsDoesNotFail() { + for (const id of Object.keys(expectedURLs)) { + const engine = Services.search.getEngineById(id); + // No need to assert anything, as in case of error this method should throw. + await engine.getIconURL(); + } +}); ===================================== toolkit/mozapps/update/updater/updater.cpp ===================================== @@ -3326,6 +3326,10 @@ int NS_main(int argc, NS_tchar** argv) { putenv(const_cast<char*>("MOZ_USING_SERVICE=")); #endif +#if defined(XP_UNIX) && !defined(XP_MACOSX) + unsetenv("FONTCONFIG_PATH"); +#endif + if (argc == 2 && NS_tstrcmp(argv[1], NS_T("--channels-allowed")) == 0) { #ifdef MOZ_VERIFY_MAR_SIGNATURE int rv = PopulategMARStrings(); View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/3e0... -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/3e0... You're receiving this email because of your account on gitlab.torproject.org.