tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit 0fdcece56b85cfece9b42a98e0bf25abf3e29b59
parent 1ae413695f06a12829ffc614bbabb106366cd194
Author: Thomas Wisniewski <twisniewski@mozilla.com>
Date:   Fri, 19 Dec 2025 23:16:56 +0000

Bug 2007004 - bump webcompat Chrome UA spoofs to 143.0.0.0 instead of 130.0.0.0; r=webcompat-reviewers,dholbert

Differential Revision: https://phabricator.services.mozilla.com/D277080

Diffstat:
Mbrowser/extensions/webcompat/lib/ua_helpers.js | 4++--
Mbrowser/extensions/webcompat/tests/browser/browser_ua_helpers.js | 79+++++++++++++++++++++++++++++++++++++++++++------------------------------------
2 files changed, 45 insertions(+), 38 deletions(-)

diff --git a/browser/extensions/webcompat/lib/ua_helpers.js b/browser/extensions/webcompat/lib/ua_helpers.js @@ -15,7 +15,7 @@ var UAHelpers = { return `FxQuantum/${UAHelpers.getRunningFirefoxVersion()} `; }, getDeviceAppropriateChromeUA(config = {}) { - let { androidVersion, version = "130.0.0.0", phone, tablet, OS } = config; + let { androidVersion, version = "143.0.0.0", phone, tablet, OS } = config; const key = JSON.stringify(config); if (config.noCache || !UAHelpers._deviceAppropriateChromeUAs[key]) { const userAgent = @@ -76,7 +76,7 @@ var UAHelpers = { ) { return `${ua} Gecko/${version}`; }, - addChrome(ua = navigator.userAgent, version = "130.0.0.0") { + addChrome(ua = navigator.userAgent, version = "143.0.0.0") { const isMobile = navigator.userAgent.includes("Mobile") || navigator.userAgent.includes("Tablet"); diff --git a/browser/extensions/webcompat/tests/browser/browser_ua_helpers.js b/browser/extensions/webcompat/tests/browser/browser_ua_helpers.js @@ -4,6 +4,7 @@ const ORIG_UA = navigator.userAgent; const ORIG_UA_VER = ORIG_UA.match("Firefox/((\d|\.)+)")[1]; +const CURRENT_CHROME_VER = "Chrome/143.0.0.0"; let UA = ORIG_UA; @@ -30,120 +31,120 @@ const DEVICE_APPROPRIATE_TESTS = [ { ua: "Linux", config: { noFxQuantum: true }, - expected: `${PREFIX_LIN} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_LIN} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Android", config: { noFxQuantum: true }, - expected: `${PREFIX_AND} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_AND} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Macintosh", config: { noFxQuantum: true }, - expected: `${PREFIX_MAC} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_MAC} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, // test OS overrides { ua: "Windows", config: { OS: "android", noFxQuantum: true }, - expected: `${PREFIX_AND} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_AND} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Windows", config: { OS: "linux", noFxQuantum: true }, - expected: `${PREFIX_LIN} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_LIN} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Windows", config: { OS: "macOS", noFxQuantum: true }, - expected: `${PREFIX_MAC} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_MAC} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Linux", config: { OS: "android", noFxQuantum: true }, - expected: `${PREFIX_AND} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_AND} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Linux", config: { OS: "windows", noFxQuantum: true }, - expected: `${PREFIX_WIN} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_WIN} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Linux", config: { OS: "macOS", noFxQuantum: true }, - expected: `${PREFIX_MAC} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_MAC} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Macintosh", config: { OS: "android", noFxQuantum: true }, - expected: `${PREFIX_AND} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_AND} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Macintosh", config: { OS: "windows", noFxQuantum: true }, - expected: `${PREFIX_WIN} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_WIN} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Macintosh", config: { OS: "linux", noFxQuantum: true }, - expected: `${PREFIX_LIN} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_LIN} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Android", config: { OS: "windows", noFxQuantum: true }, - expected: `${PREFIX_WIN} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_WIN} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Android", config: { OS: "macOS", noFxQuantum: true }, - expected: `${PREFIX_MAC} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_MAC} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Android", config: { OS: "linux", noFxQuantum: true }, - expected: `${PREFIX_LIN} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_LIN} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, // test that if we don't know what the OS is, we just use Windows { ua: "X", config: {}, - expected: `${PREFIX_WIN} FxQuantum/58.0 ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_WIN} FxQuantum/58.0 ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, // test noFxQuantum config option { ua: "X", config: { noFxQuantum: false }, - expected: `${PREFIX_WIN} FxQuantum/58.0 ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_WIN} FxQuantum/58.0 ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "X", config: { noFxQuantum: true }, - expected: `${PREFIX_WIN} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_WIN} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, // test OS=nonLinux { ua: "Linux", config: { OS: "nonLinux", noFxQuantum: true }, - expected: `${PREFIX_WIN} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_WIN} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Android", config: { OS: "nonLinux", noFxQuantum: true }, - expected: `${PREFIX_AND} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_AND} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Macintosh", config: { OS: "nonLinux", noFxQuantum: true }, - expected: `${PREFIX_MAC} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_MAC} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Windows", config: { OS: "nonLinux", noFxQuantum: true }, - expected: `${PREFIX_WIN} ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `${PREFIX_WIN} ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, // test version config option @@ -157,80 +158,86 @@ const DEVICE_APPROPRIATE_TESTS = [ { ua: "Windows", config: { OS: "android", phone: "PHONE", noFxQuantum: true }, - expected: `Mozilla/5.0 (Linux; Android 6.0; PHONE) ${WEBKIT} Chrome/130.0.0.0 Mobile${SAFARI}`, + expected: `Mozilla/5.0 (Linux; Android 6.0; PHONE) ${WEBKIT} ${CURRENT_CHROME_VER} Mobile${SAFARI}`, }, { ua: "Windows", config: { OS: "android", tablet: "TABLET", noFxQuantum: true }, - expected: `Mozilla/5.0 (Linux; Android 6.0; TABLET) ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `Mozilla/5.0 (Linux; Android 6.0; TABLET) ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, // test an android phone spoofing a tablet and vice versa { ua: "Android 8.8.8 Mobile", config: { noFxQuantum: true, tablet: "TABLET" }, - expected: `Mozilla/5.0 (Linux; Android 8.8.8; TABLET) ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `Mozilla/5.0 (Linux; Android 8.8.8; TABLET) ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Android 8.8.8 Mobile", config: { noFxQuantum: true, tablet: true }, - expected: `Mozilla/5.0 (Linux; Android 8.8.8; ${TABLET}) ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `Mozilla/5.0 (Linux; Android 8.8.8; ${TABLET}) ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, { ua: "Android 8.8.8", config: { noFxQuantum: true, phone: "PHONE" }, - expected: `Mozilla/5.0 (Linux; Android 8.8.8; PHONE) ${WEBKIT} Chrome/130.0.0.0 Mobile${SAFARI}`, + expected: `Mozilla/5.0 (Linux; Android 8.8.8; PHONE) ${WEBKIT} ${CURRENT_CHROME_VER} Mobile${SAFARI}`, }, { ua: "Android 8.8.8", config: { noFxQuantum: true, phone: true }, - expected: `Mozilla/5.0 (Linux; Android 8.8.8; ${PHONE}) ${WEBKIT} Chrome/130.0.0.0 Mobile${SAFARI}`, + expected: `Mozilla/5.0 (Linux; Android 8.8.8; ${PHONE}) ${WEBKIT} ${CURRENT_CHROME_VER} Mobile${SAFARI}`, }, // test that accidentally spoofing both phone and tablet just picks a phone { ua: "Android 8.8.8", config: { noFxQuantum: true, phone: true, tablet: true }, - expected: `Mozilla/5.0 (Linux; Android 8.8.8; ${PHONE}) ${WEBKIT} Chrome/130.0.0.0 Mobile${SAFARI}`, + expected: `Mozilla/5.0 (Linux; Android 8.8.8; ${PHONE}) ${WEBKIT} ${CURRENT_CHROME_VER} Mobile${SAFARI}`, }, // test android version number option { ua: "Android 5.0 Mobile", config: { OS: "android", androidVersion: "VER", noFxQuantum: true }, - expected: `Mozilla/5.0 (Linux; Android VER; ${PHONE}) ${WEBKIT} Chrome/130.0.0.0 Mobile${SAFARI}`, + expected: `Mozilla/5.0 (Linux; Android VER; ${PHONE}) ${WEBKIT} ${CURRENT_CHROME_VER} Mobile${SAFARI}`, }, { ua: "Android 5.0", config: { OS: "android", androidVersion: "VER", noFxQuantum: true }, - expected: `Mozilla/5.0 (Linux; Android VER; ${TABLET}) ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `Mozilla/5.0 (Linux; Android VER; ${TABLET}) ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, // test android version numbers are detected if not given { ua: "Android 8.8.8", config: { OS: "android", phone: "DEV", noFxQuantum: true }, - expected: `Mozilla/5.0 (Linux; Android 8.8.8; DEV) ${WEBKIT} Chrome/130.0.0.0 Mobile${SAFARI}`, + expected: `Mozilla/5.0 (Linux; Android 8.8.8; DEV) ${WEBKIT} ${CURRENT_CHROME_VER} Mobile${SAFARI}`, }, { ua: "Android 8.8.8 (tablet)", config: { OS: "android", noFxQuantum: true }, - expected: `Mozilla/5.0 (Linux; Android 8.8.8; ${TABLET}) ${WEBKIT} Chrome/130.0.0.0${SAFARI}`, + expected: `Mozilla/5.0 (Linux; Android 8.8.8; ${TABLET}) ${WEBKIT} ${CURRENT_CHROME_VER}${SAFARI}`, }, ]; const TESTS = { addChrome(helper) { UA = "X"; - is(helper(), `X ${WEBKIT} Chrome/130.0.0.0 Safari/537.36`); + is(helper(), `X ${WEBKIT} ${CURRENT_CHROME_VER} Safari/537.36`); is(helper(UA, "VER"), `X ${WEBKIT} Chrome/VER Safari/537.36`); UA = "X Mobile"; - is(helper(), `X Mobile ${WEBKIT} Chrome/130.0.0.0 Mobile Safari/537.36`); + is( + helper(), + `X Mobile ${WEBKIT} ${CURRENT_CHROME_VER} Mobile Safari/537.36` + ); is(helper(UA, "VER"), `X Mobile ${WEBKIT} Chrome/VER Mobile Safari/537.36`); UA = "X Tablet"; - is(helper(), `X Tablet ${WEBKIT} Chrome/130.0.0.0 Mobile Safari/537.36`); + is( + helper(), + `X Tablet ${WEBKIT} ${CURRENT_CHROME_VER} Mobile Safari/537.36` + ); is(helper(UA, "VER"), `X Tablet ${WEBKIT} Chrome/VER Mobile Safari/537.36`); }, addGecko(helper) {