---
title: "uuid Breaking Changes on npm | Since.dev"
description: "What each uuid release removed, renamed or changed: 46 breaking changes in 10 versions on npm, each with its source."
canonical_url: https://since.dev/packages/npm/uuid
last_updated: 2026-04-19
---

# uuid breaking changes

Every breaking API change we have recorded in uuid on npm: 46 breaking changes in 10 versions. Below are its newest 6 versions, removals and renames first, each with its source.

Newest change April 19, 2026

## 14.0.0

4 breaking changes, first published April 19, 2026.

- **Removed**  

The package no longer supports Node.js 18. Users on Node 18 must upgrade to Node 20 or later before using this version. [github.com](https://github.com/uuidjs/uuid/releases/tag/v14.0.0)
- **Behavior changed**  

The package now expects the crypto global to be available everywhere instead of relying on a fallback. Users need Node.js 20 or later. [github.com](https://github.com/uuidjs/uuid/releases/tag/v14.0.0)
- **Signature changed** `parse`  

Was function parse(uuid: string): Uint8Array; now function parse(uuid: string): NonSharedArrayBuffer. [npmjs.com](https://www.npmjs.com/package/uuid/v/14.0.0)
- **Signature changed** `v1ToV6`  

Was function v1ToV6(uuid: Uint8Array): Uint8Array; now function v1ToV6(uuid: Uint8Array): NonSharedArrayBuffer. [npmjs.com](https://www.npmjs.com/package/uuid/v/14.0.0)

## 13.0.0

1 breaking change, first published September 8, 2025.

- **Configuration changed**  

The package now resolves its browser exports by default. Check that bundlers and runtimes still load the build you expect, and import the Node build explicitly if you need it. [github.com](https://github.com/uuidjs/uuid/releases/tag/v13.0.0)

## 12.0.0

3 breaking changes, first published September 5, 2025.

- **Removed**  

The package no longer ships CommonJS builds. Code that calls require('uuid') must switch to ESM import syntax. [github.com](https://github.com/uuidjs/uuid/releases/tag/v12.0.0)
- **Removed**  

The package no longer supports Node.js 16. Users on Node.js 16 must upgrade their Node.js version or stay on uuid 11. [github.com](https://github.com/uuidjs/uuid/releases/tag/v12.0.0)
- **Behavior changed**  

The project moved to TypeScript 5.2, which may affect projects that rely on older TypeScript typings or tooling. [github.com](https://github.com/uuidjs/uuid/releases/tag/v12.0.0)

## 11.1.0

7 breaking changes, first published February 19, 2025.

- **Signature changed** `UUIDTypes`  

Was type UUIDTypes = string | Uint8Array; now type UUIDTypes<TBuf extends Uint8Array = Uint8Array> = string | TBuf. [npmjs.com](https://www.npmjs.com/package/uuid/v/11.1.0)
- **Signature changed** `v1`  

Was function v1(options: Version1Options | undefined, buf: Uint8Array, offset?: number): Uint8Array; now function v1<Buf extends Uint8Array = Uint8Array>(options: Version1Options | undefined, buf: Buf, offset?: number): Buf. [npmjs.com](https://www.npmjs.com/package/uuid/v/11.1.0)
- **Signature changed** `v3`  

Was function v3(value: string | Uint8Array, namespace: UUIDTypes, buf: Uint8Array, offset?: number): Uint8Array; now function v3<TBuf extends Uint8Array = Uint8Array>(value: string | Uint8Array, namespace: UUIDTypes, buf: TBuf, offset?... [npmjs.com](https://www.npmjs.com/package/uuid/v/11.1.0)
- **Signature changed** `v4`  

Was function v4(options: Version4Options | undefined, buf: Uint8Array, offset?: number): Uint8Array; now function v4<TBuf extends Uint8Array = Uint8Array>(options: Version4Options | undefined, buf: TBuf, offset?: number): TBuf. [npmjs.com](https://www.npmjs.com/package/uuid/v/11.1.0)
- **Signature changed** `v5`  

Was function v5(value: string | Uint8Array, namespace: UUIDTypes, buf: Uint8Array, offset?: number): Uint8Array; now function v5<TBuf extends Uint8Array = Uint8Array>(value: string | Uint8Array, namespace: UUIDTypes, buf: TBuf, offset?... [npmjs.com](https://www.npmjs.com/package/uuid/v/11.1.0)
- **Signature changed** `v6`  

Was function v6(options: Version6Options | undefined, buf: Uint8Array, offset?: number): Uint8Array; now function v6<TBuf extends Uint8Array = Uint8Array>(options: Version6Options | undefined, buf: TBuf, offset?: number): TBuf. [npmjs.com](https://www.npmjs.com/package/uuid/v/11.1.0)
- **Signature changed** `v7`  

Was function v7(options: Version7Options | undefined, buf: Uint8Array, offset?: number): Uint8Array; now function v7<TBuf extends Uint8Array = Uint8Array>(options: Version7Options | undefined, buf: TBuf, offset?: number): TBuf. [npmjs.com](https://www.npmjs.com/package/uuid/v/11.1.0)

## 11.0.5

1 breaking change, first published January 9, 2025.

- **Signature changed** `parse`  

Was function parse(uuid: string): Uint8Array<ArrayBuffer>; now function parse(uuid: string): Uint8Array. [npmjs.com](https://www.npmjs.com/package/uuid/v/11.0.5)

## 11.0.4

1 breaking change, first published January 5, 2025.

- **Signature changed** `parse`  

Was function parse(uuid: string): Uint8Array; now function parse(uuid: string): Uint8Array<ArrayBuffer>. [npmjs.com](https://www.npmjs.com/package/uuid/v/11.0.4)

## Check your code

These are the changes. To see which of them reach your code, [scan a public repository](https://since.dev/scan.md), or have your coding agent call `check_code` with your manifest or lockfile over [MCP](https://since.dev/docs.md#mcp). [The API](https://since.dev/docs.md#api) reads every change in every version, not only the newest. On Team and up, a fix pull request opens for the changes that reach a connected repository. Nothing merges or deploys.

## Put your code on continuous management.

Scan a public repository now, or give your agent one line.

### See how out of date your code is.

[Scan a repository](https://since.dev/scan.md). Any public GitHub repository. No sign-in.

### Tell your agent what changed since it was trained.

`claude mcp add --transport http since https://api.since.dev/mcp`

---

Every page on this site as Markdown: https://since.dev/sitemap.md. For agents: https://since.dev/llms.txt.
