Skip to content

chore(deps): bump uuid from 11.1.1 to 14.0.0#562

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/uuid-14.0.0
Open

chore(deps): bump uuid from 11.1.1 to 14.0.0#562
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/uuid-14.0.0

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github May 6, 2026

Bumps uuid from 11.1.1 to 14.0.0.

Release notes

Sourced from uuid's releases.

v14.0.0

14.0.0 (2026-04-19)

⚠ BREAKING CHANGES

  • expect crypto to be global everywhere (requires node@20+) (#935)
  • drop node@18 support (#934)

Features

Bug Fixes

  • expect crypto to be global everywhere (requires node@20+) (#935) (f2c235f)
  • Use GITHUB_TOKEN for release-please and enable npm provenance (#925) (ffa3138)

v13.0.2

13.0.2 (2026-05-04)

Bug Fixes

  • rerelease to fix provenance. (49ccb35)

v13.0.1

13.0.1 (2026-04-27)

Bug Fixes

v13.0.0

13.0.0 (2025-09-08)

⚠ BREAKING CHANGES

  • make browser exports the default (#901)

Bug Fixes

v12.0.1

12.0.1 (2026-04-29)

... (truncated)

Changelog

Sourced from uuid's changelog.

14.0.0 (2026-04-19)

Security

  • Fixes GHSA-w5hq-g745-h8pq: v3(), v5(), and v6() did not validate that writes would remain within the bounds of a caller-supplied buffer, allowing out-of-bounds writes when an invalid offset was provided. A RangeError is now thrown if offset < 0 or offset + 16 > buf.length.

⚠ BREAKING CHANGES

  • crypto is now expected to be globally defined (requires node@20+) (#935)
  • drop node@18 support (#934)
  • upgrade minimum supported TypeScript version to 5.4.3, in keeping with the project's policy of supporting TypeScript versions released within the last two years

13.0.0 (2025-09-08)

⚠ BREAKING CHANGES

  • make browser exports the default (#901)

Bug Fixes

12.0.0 (2025-09-05)

⚠ BREAKING CHANGES

  • update to typescript@5.2 (#887)
  • remove CommonJS support (#886)
  • drop node@16 support (#883)

Features

Bug Fixes

11.1.0 (2025-02-19)

... (truncated)

Commits
  • 7c1ea08 chore(main): release 14.0.0 (#926)
  • 3d2c5b0 Merge commit from fork
  • f2c235f fix!: expect crypto to be global everywhere (requires node@20+) (#935)
  • 529ef08 chore: upgrade TypeScript and fixup types (#927)
  • 086fd79 chore: update dependencies (#933)
  • dc4ddb8 feat!: drop node@18 support (#934)
  • 0f1f9c9 chore: switch to Biome for parsing and linting (#932)
  • e2879e6 chore: use maintained version of npm-run-all (#930)
  • ffa3138 fix: Use GITHUB_TOKEN for release-please and enable npm provenance (#925)
  • 0423d49 docs: remove obsolete v1 option notes (#915)
  • Additional commits viewable in compare view


Note

Medium Risk
Dependency-only change but uuid@14 has breaking runtime assumptions (expects global crypto / Node 20+), so UUID generation paths could fail in unsupported environments or test runners.

Overview
Updates the uuid dependency from 11.1.1 to 14.0.0 in package.json and refreshes pnpm-lock.yaml accordingly.

No application code changes are included, so any impact will come from uuid behavior/runtime requirement changes affecting existing uuidv4() call sites.

Reviewed by Cursor Bugbot for commit 45c4576. Bugbot is set up for automated code reviews on this repo. Configure here.

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels May 6, 2026
@dependabot dependabot Bot requested a review from a team as a code owner May 6, 2026 18:04
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels May 6, 2026
@dependabot dependabot Bot changed the title chore(deps): bump uuid from 11.1.0 to 14.0.0 chore(deps): bump uuid from 11.1.1 to 14.0.0 May 8, 2026
@dependabot dependabot Bot force-pushed the dependabot/npm_and_yarn/uuid-14.0.0 branch from e87460c to 7149428 Compare May 8, 2026 16:25
Copy link
Copy Markdown
Contributor

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

Bugbot Autofix prepared a fix for the issue found in the latest run.

  • ✅ Fixed: ESM-only uuid breaks declared Node 20.0-20.18 compatibility
    • Replaced direct uuid usage with Node's native randomUUID and removed the uuid dependency so CommonJS output no longer loads an ESM-only package under Node 20.

Create PR

Or push these changes by commenting:

@cursor push 567072a443
Preview (567072a443)
diff --git a/package.json b/package.json
--- a/package.json
+++ b/package.json
@@ -80,7 +80,6 @@
     "recast": "0.23.9",
     "semver": "7.7.1",
     "terminal-link": "2.1.1",
-    "uuid": "14.0.0",
     "xcode": "3.0.1",
     "yargs": "16.2.0",
     "zod": "4.3.6",

diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -113,9 +113,6 @@
       terminal-link:
         specifier: 2.1.1
         version: 2.1.1
-      uuid:
-        specifier: 14.0.0
-        version: 14.0.0
       xcode:
         specifier: 3.0.1
         version: 3.0.1
@@ -3622,10 +3619,6 @@
   util-arity@1.1.0:
     resolution: {integrity: sha512-kkyIsXKwemfSy8ZEoaIz06ApApnWsk5hQO0vLjZS6UkBiGiW++Jsyb8vSBoc0WKlffGoGs5yYy/j5pp8zckrFA==}
 
-  uuid@14.0.0:
-    resolution: {integrity: sha512-Qo+uWgilfSmAhXCMav1uYFynlQO7fMFiMVZsQqZRMIXp0O7rR7qjkj+cPvBHLgBqi960QCoo/PH2/6ZtVqKvrg==}
-    hasBin: true
-
   uuid@7.0.3:
     resolution: {integrity: sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==}
     deprecated: uuid@10 and below is no longer supported.  For ESM codebases, update to uuid@latest.  For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028).
@@ -7205,8 +7198,6 @@
 
   util-arity@1.1.0: {}
 
-  uuid@14.0.0: {}
-
   uuid@7.0.3: {}
 
   v8-compile-cache-lib@3.0.1: {}

diff --git a/src/lib/observability/correlation.ts b/src/lib/observability/correlation.ts
--- a/src/lib/observability/correlation.ts
+++ b/src/lib/observability/correlation.ts
@@ -5,7 +5,7 @@
  * - runId: new UUID per agent attempt (reset on stall-retry)
  */
 
-import { v4 as uuidv4 } from 'uuid';
+import { randomUUID } from 'node:crypto';
 
 let _sessionId: string | null = null;
 let _runId: string | null = null;
@@ -14,7 +14,7 @@
 /** Initialize with the analytics session ID. Call once at startup. */
 export function initCorrelation(sessionId: string): void {
   _sessionId = sessionId;
-  _runId = uuidv4().slice(0, 8); // Short for log readability
+  _runId = randomUUID().slice(0, 8); // Short for log readability
   _sessionStartMs = Date.now();
 }
 
@@ -40,6 +40,6 @@
 
 /** Create a new run ID (call on agent retry / stall recovery). */
 export function rotateRunId(): string {
-  _runId = uuidv4().slice(0, 8);
+  _runId = randomUUID().slice(0, 8);
   return _runId;
 }

diff --git a/src/utils/__tests__/analytics.test.ts b/src/utils/__tests__/analytics.test.ts
--- a/src/utils/__tests__/analytics.test.ts
+++ b/src/utils/__tests__/analytics.test.ts
@@ -1,5 +1,3 @@
-import { type MockedFunction } from 'vitest';
-
 const { mockCreateInstance, MockIdentify } = vi.hoisted(() => {
   const mockCreateInstance = vi.fn(() => ({
     init: vi.fn(() => ({ promise: Promise.resolve() })),
@@ -22,10 +20,6 @@
   Identify: MockIdentify,
 }));
 
-vi.mock('uuid', () => ({
-  v4: vi.fn(() => 'test-uuid'),
-}));
-
 vi.mock('../../lib/observability', () => ({
   getSessionId: vi.fn().mockReturnValue('test-session-id'),
   getRunId: vi.fn().mockReturnValue('test-run-id'),
@@ -54,18 +48,13 @@
   getOrCreateInstallId: vi.fn(() => 'test-uuid'),
 }));
 
-import { v4 as uuidv4 } from 'uuid';
-
 import { Analytics, resolveTelemetryApiKey } from '../analytics.js';
 
-const mockUuidv4 = uuidv4 as MockedFunction<typeof uuidv4>;
-
 describe('Analytics', () => {
   let analytics: Analytics;
 
   beforeEach(() => {
     vi.clearAllMocks();
-    mockUuidv4.mockReturnValue('test-uuid' as any);
     analytics = new Analytics();
   });
 

diff --git a/src/utils/analytics.ts b/src/utils/analytics.ts
--- a/src/utils/analytics.ts
+++ b/src/utils/analytics.ts
@@ -1,6 +1,6 @@
+import { randomUUID } from 'node:crypto';
 import { createInstance, Identify } from '@amplitude/analytics-node';
 import type { WizardSession } from '../lib/wizard-session';
-import { v4 as uuidv4 } from 'uuid';
 import { debug } from './debug';
 import { IS_DEV } from '../lib/constants';
 import { getSessionId, getRunId, setSentryUser } from '../lib/observability';
@@ -96,7 +96,7 @@
     this.sessionProperties = { $app_name: this.appName };
     // Persistent install ID stitches pre-auth runs across invocations;
     // fall back to a per-process UUID if disk access fails.
-    this.anonymousId = getOrCreateInstallId() ?? uuidv4();
+    this.anonymousId = getOrCreateInstallId() ?? randomUUID();
     this.distinctId = undefined;
     this.client = createInstance();
   }

diff --git a/src/utils/install-id.ts b/src/utils/install-id.ts
--- a/src/utils/install-id.ts
+++ b/src/utils/install-id.ts
@@ -12,7 +12,7 @@
 import * as fs from 'node:fs';
 import * as os from 'node:os';
 import * as path from 'node:path';
-import { v4 as uuidv4 } from 'uuid';
+import { randomUUID } from 'node:crypto';
 import { z } from 'zod';
 import { atomicWriteJSON } from './atomic-write.js';
 import { debug } from './debug.js';
@@ -56,7 +56,7 @@
   }
 
   const record: InstallRecord = {
-    installId: uuidv4(),
+    installId: randomUUID(),
     createdAt: new Date().toISOString(),
   };

You can send follow-ups to the cloud agent here.

Reviewed by Cursor Bugbot for commit 7149428. Configure here.

Comment thread package.json
"semver": "7.7.1",
"terminal-link": "2.1.1",
"uuid": "11.1.1",
"uuid": "14.0.0",
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ESM-only uuid breaks declared Node 20.0-20.18 compatibility

Low Severity

Bumping uuid from 11.1.1 to 14.0.0 crosses v12's removal of CommonJS support. This project emits CJS (no "type": "module", module: "node16" in tsconfig), so TypeScript compiles import { v4 } from 'uuid' to require('uuid'). This works on Node 20.19+ (which backported require(esm)) but fails with ERR_REQUIRE_ESM on Node 20.0–20.18, which the engines field ">=20" still advertises as supported.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 7149428. Configure here.

@kelsonpw kelsonpw removed the request for review from a team May 18, 2026 18:05
Bumps [uuid](https://github.com/uuidjs/uuid) from 11.1.1 to 14.0.0.
- [Release notes](https://github.com/uuidjs/uuid/releases)
- [Changelog](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md)
- [Commits](uuidjs/uuid@v11.1.1...v14.0.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-version: 14.0.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot force-pushed the dependabot/npm_and_yarn/uuid-14.0.0 branch from 7149428 to 45c4576 Compare May 22, 2026 18:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants