Skip to content

Releases: web-platform-dx/baseline-browser-mapping

v2.11.0

Choose a tag to compare

@tonypconway tonypconway released this 21 Jul 14:13
de733e2

What's Changed in 2.11.0

  • feat: Adds a new getTimeline() method for getting the series of minimum browser changes, either grouped by date or by browser.
  • refactor: Substantial refactoring of the data compression process that replaces the full list of browsers from @mdn/browser-compat-data and downstream-browsers.json and features from web-features (in their very pared down form) with a change-list timeline that reflects which versions supported Baseline (newly available) on a given date. Thanks to @swwind for the idea!
  • refactor: Some common functions have been moved to a util.ts module for use in other scripts.
  • fix: Removes process.exit() calls when unsupported option combinations are passed to getCompatibleVersions() and getAllVersions() in favour of throwing an Error. There is a small security risk with process.exit() calls that sites accepting unsanitised inputs could be the subject of attacks. Unsupported config options now throw and Error which should allow for more graceful handling. Thanks to @bnbdr for flagging this as vulnerability CVE-2026-45819 .

Fixes #134

Full Changelog: v2.10.44...v2.11.0

v2.10.0

Choose a tag to compare

@tonypconway tonypconway released this 19 Feb 13:11
874d44b

What's Changed

  • Introduces support for Node 6 by refactoring all Object.entries and Object.values instances and lowering ES target in Rollup to es2015.
  • Adds specified Node version support in package.json for >=6.0.0.
  • Refactors CLI code to avoid parseArgs which is not supported by versions of Node prior to 18, changes import to require and changes Rollup export to cjs to allow execution on older versions of Node.
  • Adds a new legacy-test.js file that allows basic testing on older versions of Node where current versions of Jasmine and ESLint are not supported.
  • Adds a test matrix to run tests on all even-numbered Node versions from 6 to 24.
  • refactor publish workflows to support NPM's new OIDC integration

Full Changelog: v2.9.24...v2.10.0

v2.9.3 - remove `process.loadEnvFile()`

Choose a tag to compare

@tonypconway tonypconway released this 05 Dec 16:21
3553f31

What's Changed

Full Changelog: v2.9.2...v2.9.3

v2.9.2 - fix browser support bug

Choose a tag to compare

@tonypconway tonypconway released this 04 Dec 14:27
5972583

What's Changed

v2.9.0 - Reduce frequency of data staleness warnings

Choose a tag to compare

@tonypconway tonypconway released this 03 Dec 15:47
226fd01

This version introduces a number of changes to data staleness warnings in response to #105 , #107 and #109

  • Data staleness warnings are now only shown if the getCompatibleVersions() or getAllVersions() functions are called - previously they were shown whenever the module was loaded, which meant many browserslist consumers were seeing the warning despite not targeting Baseline, especially those who were consuming browserslist in a pre-compiled format via next.js.
  • Adds new conditions for these warnings to be displayed which should only warn users for whom data freshness is critical:
    • The feature cut off data must be within the last two months, i.e. widelyAvailableOnDate: today + >2 years and 4 months or newly available in a browserslist query.
    • The module data must be more than 2 months old.
  • Introduces suppression options for these warning via the options objects and environment variables:
    • Adds a new suppressWarnings boolean to the getCompatibleVersions() and getAllVersions()
    • Respects the existing BROWSERSLIST_IGNORE_OLD_DATA environment variable.
    • Respects a new BASELINE_BROWSER_MAPPING_IGNORE_OLD_DATA environment variable.
  • Adds explanatory text to the README for how to avoid such warnings when reproducible builds are a requirement.
  • Change warning text to be package manager agnostic and mention the possibility of pre-compiled data.

v2.8.4 - fixes for older node versions

Choose a tag to compare

@tonypconway tonypconway released this 15 Sep 12:56
v2.8.4
756de63

What's new

  • baseline-browser-mapping is now a dependency of browserslist. The use of spread syntax and optional chaining in the source code caused build problems in older versions of Node.js (spread syntax in <8.3.0 and optional chaining in 14.0.0), so the build targets for baseline-browser-mapping have been changed to ES2017 to ensure compatibility.
  • This release also changes the location of main in package.json to the CommonJS export, which should only be used in older versions of node. Any version of node using that supports ESM build should use the default location(s) in the exports property.

A big thank you to @BrightTan for identifying the issue in browserslist/browserslist#904 !

Full Changelog: v2.8.3...v2.8.4

v2.8.0 - Facebook and Instagram apps

Choose a tag to compare

@tonypconway tonypconway released this 09 Sep 16:05
v2.8.0
dc081f3

What's Changed

  • Add support for Facebook and Instagram Android apps by @tonypconway in #99

Full Changelog: v2.7.4...v2.8.0

v2.7.4 - Compression improvements

Choose a tag to compare

@tonypconway tonypconway released this 05 Sep 14:31
v2.7.4
3a0bdc6

What's Changed

Full Changelog: v2.7.3...v2.7.4

v2.7.0 - Opt-in support for KaiOS

Choose a tag to compare

@tonypconway tonypconway released this 26 Aug 11:01
v2.7.0
03ee679

What's Changed

  • Add support for KaiOS in downstream browsers by @tonypconway in #97
    • This release adds a new config option for both getCompatibleVersions and getAllVersions: includKaiOS. Setting this option to true will include KaiOS versions in the output based on their corresponding Gecko version capabilities. KaiOS has an extra level of opt-in compared to other downstream browsers because its interaction paradigm differs significantly and developers need to be well informed before stating that they support KaiOS.

With thanks to @ai for proposing this change and reviewing along with @rviscomi.
Also a thank you to Jose Briones for providing a test UA from the TCL Flip 4 5G to confirm the Gecko version of KaiOS 4.

Bug fixes

  • Resolves a downstream data issue where an erroneous version of Yandex browser (99.9) had been introduced.

Full Changelog: v2.6.7...v2.7.0

v2.6.6 - data patch

Choose a tag to compare

@tonypconway tonypconway released this 20 Aug 14:49

Full Changelog: v2.6.3...v2.6.6