Skip to content

Latest commit

 

History

History
184 lines (111 loc) · 12 KB

File metadata and controls

184 lines (111 loc) · 12 KB

0.8.0 (2026-08-27)

  • Sync WhichBrowser/Parser-JavaScript to WhichBrowser/Parser-PHP@581d614 [diff]

  • Fixes:

    • Hide the macOS version when it is reported as the fingerprinting-mitigation frozen value (10.15.7 for Chrome/Safari, 10.15 for Firefox)
    • Recognize macOS versions starting with 2x (e.g. macOS 26 Tahoe) — the OS X version regex previously only matched 1x (10 to 19)
    • Recover the real iOS version from Safari's Version/ token when iOS 26+ freezes the reported OS version at 18.x/19.x
    • update-chrome pulled its data from omahaproxy.appspot.com, which has been shut down for years and returned 404, so it silently updated nothing. Chrome versions released after 118 (Nov 2023) had no matching entry in the stable-channel database and were consequently misidentified as Chrome Dev. Switched to the Chromium Dash release API
  • Database:

    • Adds macOS nicknames Ventura (13), Sonoma (14), Sequoia (15) and Tahoe (26)
    • Adds Darwin-to-macOS/iOS version mapping up to Darwin 25 (macOS 26 Tahoe / iOS 26)
    • Added Chrome stable versions 119 to 153 (desktop) and 119 to 152 (mobile). Firefox and Edge were checked too — both parse the browser version directly from the UA string with no version lookup table, so current releases (Firefox 141, Edge 140) were already detected correctly
    • Routine refresh of the applications, models, indices, profiles and regexes databases
  • Operations:

    • Removed the deprecated request package (unmaintained, several vulnerabilities with no fix available) from the bin/update-* scripts in favor of the native fetch. This also resolved every other outstanding Dependabot alert (js-yaml, handlebars, minimatch, picomatch, path-to-regexp, uuid) by bumping nyc, and picking up newer transitive dependencies for eslint, lint-staged and sinon — none of this affects the published package, which has zero runtime dependencies
    • The bin/update-* scripts used to swallow fetch failures silently (this is exactly how the dead omahaproxy endpoint above went unnoticed for years); they now log the error and exit with a non-zero status code
    • Every devDependency bumped to latest: eslint 8→10, husky 8→9, lint-staged 15→17, sinon 17→22, @hapi/lab 25→26, prettier, eslint-plugin-prettier, eslint-config-prettier
    • Migrated .eslintrc.json to flat config (eslint.config.js), required by ESLint 9+. Replaced eslint-config-google — archived by Google in 2025, last released in 2019, and no longer loadable at all under ESLint 10 since it still references core rules (valid-jsdoc, require-jsdoc) that were removed — with the ~20 rules it contributed that weren't already superseded by Prettier, declared directly so the project no longer depends on an abandoned package
    • husky 9 dropped the .husky/_/husky.sh boilerplate hooks used to source; updated .husky/pre-commit accordingly
    • nyc 18 and lint-staged 17 require Node 20+/22+ to run; updated the CI matrix from Node 16-20 (all EOL except the tail of 20.x) to the currently maintained LTS lines (20.x, 22.x, 24.x), and bumped actions/checkout/actions/setup-node to v4
    • update-all now runs prettier/eslint --fix on data/ right after regenerating it (new format-data script), so the generated files are committed in their final formatted form instead of relying on the pre-commit hook to reformat them after the fact

0.7.1 (2023-11-01)

  • Database: Added Chrome 101 to 118.

0.7.0 (2022-04-21)

  • Sync WhichBrowser/Parser-JavaScript to WhichBrowser/Parser-PHP@1044880

  • Supports Chrome UA reduction

  • BREAKING: Plasystation has been reworded to PlayStation across the whole codebase.

  • Database:

    • Adds support for Huawei Browser
    • Adds support for Xbox Series X
    • Adds support for PlayStation 5
    • Adds support for HarmonyOS

0.6.1 (2022-04-07)

  • Database: Added Chrome 99 and 100 (a770c30)
  • Fixes: Chrome 100+ was being detected as a browser in Camouflage mode. Fixes #61

0.6.0 (2022-02-16)

  • Database: Synced the JavaScript version of WhichBrowser with the latest changes happened in WhichBrowser-PHP until WhichBrowser-PHP@d082883 [diff].
  • Operations: Migrate from TravisCI to GitHub Actuibs

0.5.1 (2019-11-30)

  • Database: Added Chrome 77 and 78.

0.5.0 (2019-08-25)

  • Database: Added support for Chromium based Edge. Updated Android and iOS models. Added Chrome 75 and 76. Added Samsung Galaxy Fold and Galaxy A models.
  • Fixes: False positive for Obigo browser.

0.4.2 (2019-06-01)

Now TypeScript Types are available thanks to @AnandChowdhary and his PR #36

  • Database: Added Chrome 73 and 74 (d2ea800)

0.4.0 (2019-02-07)

  • Fix: Issue 96 of WhichBrowser/Parser-PHP, profiles.js and models-*.js files had some occourrences of spaces replaced by Unicode Character 'EN SPACE' (U+2002). The scripts that download these files are now stripping away that character and replacing it with a normal space. Thanks @koconder for #29 and @Taiwaninja for reporting it.
  • Tools: WhichBrowser/Parser-Javascript is now tested on all the node versions between 6 and 11 included. Thanks again to @koconder for #30.
  • Database: Added Chrome 70, 71 and 72 (34735c2)

0.3.5 (2018-10-01)

  • Database: Added new iPhones XS, XS Max, XR (911ae7a)

0.3.4 (2018-09-13)

  • Database: Added Chrome 69 (5b8a4fa)

0.3.3 (2018-08-22)

  • Fixes: Now is possible to really disable the bot detection with the option detectBots: false (5e02e9a)

0.3.2 (2018-07-27)

  • Database: Added Chrome 68 (0d04c8d & cd5ec81)
  • Database: Fixed name of Oculus Browser and added Oculus Go detection, thanks @frankolivier (#23) (b38377c)

0.3.1 (2018-07-13)

  • Database: Updated Models, Indices and Profiles (fa4dd85)

0.3.0 (2018-06-19)

  • Database: Added Chrome 66 & 67 (a9bce87)

0.2.9 (2018-03-16)

  • Database: Added Chrome 65 (c1c9148)

0.2.8 (2018-03-06)

0.2.7 (2018-01-31)

  • Fixes: Windows IoT 10 being detected as Android (695751b)
  • Database: Added Chrome 64 (ec0e117)

0.2.6 (2018-01-21)

This update is too big to list all the improvements Just to list some of these:

  • Improved XIAOMI and MIUI browser detection
  • Added Zen, Ziox, Yuanda and many others
  • Added a lot of new models
  • Added new browsers

0.2.5 (2017-12-07)

  • Fixes:
  • Database: Added Chrome 63, new iPhones, MANY new models of various manufacturers and Os (6e6715e)
  • Analysis: Better management of Edge, added management of KaiOS (22a2752)

0.2.4 (2017-11-17)

  • Database: Added Chrome 62 (3d4a74c)

0.2.3 (2017-09-25)

  • Database: Added Chrome 61 (6d86594)
  • Database: Added macOS High Sierra (5b8584a)

0.2.2 (2017-08-08)

New Features
  • Database: Added Chrome 60 (0043804)

0.2.1 (2017-07-14)

News
  • This project: 🎊 is now the official JavaScript version of WhichBrowser 🍾
Documentation Changes
  • readme: updated with new badge due to change of GitHub url (11b18b7)
  • changelog: added this changelog
New Features
Bug Fixes
  • coverage: removed unused line of code that lowered the coverage, now is 100% 🎉 (36fed88)

0.2.0 (2017-07-10)

Documentation Changes
  • readme: added instructions 📖 on how to use cache (0e2c83e)
New Features
  • cache: adding a simple cache mechanism (0e2c83e)

0.1.0 (2017-07-06)

New Features
  • npm: First version of JavaScript porting on npm 🎇