From 376d5b37a193745df41acce91b70bffd73a4bcfd Mon Sep 17 00:00:00 2001 From: Mike Taylor Date: Mon, 2 May 2022 14:31:33 -0400 Subject: [PATCH] Improve Firefox UA pattern on desktop and mobile (#190) * Fix Firefox UA pattern Similar to Safari, this differentiates between mobile and desktop. In #174, we can further improve this by defining the allowed values for and , etc. Closes #171 * Properly scope both s --- compatibility.bs | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/compatibility.bs b/compatibility.bs index 234af64..639f98a 100644 --- a/compatibility.bs +++ b/compatibility.bs @@ -966,7 +966,7 @@ one or more [=tokens=] representing browser information. "Mozilla/5.0 (<platform>; <oscpu>) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<chromeVersion> -<deviceCompat>Safari/537.36" +<deviceCompat>Safari/537.36"
Desktop: "Mozilla/5.0 (Macintosh; @@ -990,8 +990,7 @@ AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<chromeVersion>

Firefox User-Agent pattern

-"Mozilla/5.0 (<platform>; <oscpu> rv: -<firefoxVersion>) Gecko/<geckoVersion> +"Mozilla/5.0 (<firefoxPlatform>; rv: <firefoxVersion>) Gecko/<geckoVersion> Firefox/<firefoxVersion>"
@@ -1013,13 +1012,32 @@ In Firefox on desktop platforms (Windows, macOS, Linux, etc.), date "20100101". In Firefox on Android, <geckoVersion> is the same value as <firefoxVersion>. +<firefoxPlatform> decomposes to the following: + +On desktop platforms, "<platform>; <oscpu>". + +On Firefox on Android, "<platform>; <deviceCompat>". + + + + + + + + + + + + +
TokensDescription
<deviceCompat>The string "Mobile", without any leading or trailing spaces.
+

Safari

Safari User-Agent pattern

"Mozilla/5.0 (<safariPlatform>) AppleWebKit/605.1.15 (KHTML, like Gecko) -Version/<safariVersion><deviceCompat>Safari/605.1.15" +Version/<safariVersion><deviceCompat>Safari/605.1.15
"