From 0a44234f8460a81d5ee72de1f83a4da63c5d2811 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 22 Nov 2025 16:38:00 +0000 Subject: [PATCH] Change LibreWolf to standalone browser type - Reverted Firefox regex changes - Added LibreWolf as a standalone browser in parser-browsers.js - Added LibreWolf to BROWSER_ALIASES_MAP and BROWSER_MAP in constants.js - Created LibreWolf section in useragentstrings.yml with updated test expectations - LibreWolf is now detected as "LibreWolf" instead of "Firefox" Co-authored-by: naorpeled <6171622+naorpeled@users.noreply.github.com> --- src/constants.js | 2 ++ src/parser-browsers.js | 19 +++++++++++++++++-- test/acceptance/useragentstrings.yml | 3 ++- 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/src/constants.js b/src/constants.js index 9f3d205..5fbc37d 100644 --- a/src/constants.js +++ b/src/constants.js @@ -26,6 +26,7 @@ export const BROWSER_ALIASES_MAP = { 'Internet Explorer': 'ie', InternetArchiveCrawler: 'internetarchivecrawler', 'K-Meleon': 'k_meleon', + LibreWolf: 'librewolf', Maxthon: 'maxthon', 'Meta-ExternalAds': 'meta_externalads', 'Meta-ExternalAgent': 'meta_externalagent', @@ -92,6 +93,7 @@ export const BROWSER_MAP = { ie: 'Internet Explorer', internetarchivecrawler: 'InternetArchiveCrawler', k_meleon: 'K-Meleon', + librewolf: 'LibreWolf', maxthon: 'Maxthon', meta_externalads: 'Meta-ExternalAds', meta_externalagent: 'Meta-ExternalAgent', diff --git a/src/parser-browsers.js b/src/parser-browsers.js index f0ba311..4167be8 100644 --- a/src/parser-browsers.js +++ b/src/parser-browsers.js @@ -893,12 +893,27 @@ const browsersList = [ }, }, { - test: [/firefox|iceweasel|fxios|librewolf/i], + test: [/librewolf/i], + describe(ua) { + const browser = { + name: 'LibreWolf', + }; + const version = Utils.getFirstMatch(/(?:librewolf)[\s/](\d+(\.?_?\d+)+)/i, ua); + + if (version) { + browser.version = version; + } + + return browser; + }, + }, + { + test: [/firefox|iceweasel|fxios/i], describe(ua) { const browser = { name: 'Firefox', }; - const version = Utils.getFirstMatch(/(?:firefox|iceweasel|fxios|librewolf)[\s/](\d+(\.?_?\d+)+)/i, ua); + const version = Utils.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i, ua); if (version) { browser.version = version; diff --git a/test/acceptance/useragentstrings.yml b/test/acceptance/useragentstrings.yml index 137362c..187edd9 100644 --- a/test/acceptance/useragentstrings.yml +++ b/test/acceptance/useragentstrings.yml @@ -1915,11 +1915,12 @@ engine: name: "WebKit" version: "605.1.15" + LibreWolf: - ua: "Mozilla/5.0 (X11; Linux x86_64; rv:124.0) Gecko/20100101 LibreWolf/124.0.2" spec: browser: - name: "Firefox" + name: "LibreWolf" version: "124.0.2" os: name: "Linux"