Skip to content

v11.0.0

Compare
Choose a tag to compare
@uuidbot uuidbot released this 27 Oct 14:21
c560d8a

11.0.0 (2024-10-27)

⚠ BREAKING CHANGES

  • refactor v1 internal state and options logic (#780)
  • refactor v7 internal state and options logic, fixes #764 (#779)
  • Port to TypeScript, closes #762 (#763)
  • update node support matrix (only support node 16-20) (#750)
  • This library always aims at supporting one EOLed LTS release which by this time now is 12.x which has reached EOL 30 Apr 2022.
  • Remove the minified UMD build from the package.
  • Drop support for browsers that don't correctly implement const/let and default arguments, and no longer transpile the browser build to ES2015.
  • Although in practice this is currently a noop since the resulting build does not change, the build will no longer transpiles future changes for Node.js 8.x targets, so semantically this is still a breaking change.
  • Deep requiring specific algorithms of this library like require('uuid/v4'), which has been deprecated in uuid@7, is no longer supported.
  • The default export, which used to be the v4() method but which was already discouraged in v3.x of this library, has been removed.
  • Explicitly note that deep imports of the different uuid version functions are deprecated and no longer encouraged and that ECMAScript module named imports should be used instead. Emit a deprecation warning for people who deep-require the different algorithm variants.
  • Remove builtin support for insecure random number generators in the browser. Users who want that will have to supply their own random number generator function.
  • Remove support for generating v3 and v5 UUIDs in Node.js<4.x
  • Convert code base to ECMAScript Modules (ESM) and release CommonJS build for node and ESM build for browser bundlers.

Features

  • add parse/stringify/validate/version/NIL APIs (#479) (0e6c10b)
  • add support for MAX uuid (new in RFC9562) (#714) (0385cd3)
  • add UMD build to npm package (#357) (4e75adf)
  • add various es module and CommonJS examples (b238510)
  • enforce Conventional Commit style commit messages (#282) (0705cd5)
  • ensure that docs are up-to-date in CI (ee5e77d)
  • hybrid CommonJS & ECMAScript modules build (a3f078f)
  • improve performance of v1 string representation (#453) (0ee0b67)
  • improve v4 performance by reusing random number array (#435) (bf4af0d)
  • optimize uuid.v1 by 1.3x uuid.v4 by 4.3x (430%) (#597) (3a033f6)
  • optimize V8 performance of bytesToUuid (#434) (e156415)
  • Port to TypeScript, closes #762 (#763) (1e0f987)
  • remove deep requires (#426) (daf72b8)
  • remove deprecated v4 string parameter (#454) (88ce3ca)
  • remove insecure fallback random number generator (3a5842b)
  • remove support for pre Node.js v4 Buffer API (#356) (b59b5c5)
  • remove UMD build (#645) (e948a0f), closes #620
  • rename repository to github:uuidjs/uuid (#351) (c37a518), closes #338
  • rename repository to github:uuidjs/uuid (#351) (e2d7314), closes #338
  • support v6 uuids (#754) (c4ed13e)
  • update node support matrix (only support node 16-20) (#750) (883b163)
  • use native crypto.randomUUID when available (#600) (c9e076c)
  • v8 support (#759) (35a5342)

Bug Fixes

Performance Improvements

  • nodejs: introduce pool into default rng (#513) (7f1af04)
  • remove superfluous call to toLowerCase (#677) (e53793f)

Documentation

  • add note about removal of default export (#372) (12749b7), closes #370
  • deprecated deep requiring of the different algorithm versions (#361) (c0bdf15)

Miscellaneous Chores

Build System

  • drop Node.js 8.x from babel transpile target (#603) (aa11485)
  • drop support for legacy browsers (IE11, Safari 10) (#604) (0f433e5)