Merge pull request #34035 from backstage/freben/remove-uuid-dependency

Remove uuid dependency in favor of crypto.randomUUID()
This commit is contained in:
Fredrik Adelöw
2026-04-23 14:19:33 +02:00
committed by GitHub
97 changed files with 162 additions and 179 deletions
-1
View File
@@ -192,7 +192,6 @@
"selfsigned": "^2.0.0",
"tar": "^7.5.6",
"triple-beam": "^1.4.1",
"uuid": "^11.0.0",
"winston": "^3.2.1",
"winston-transport": "^4.5.0",
"yauzl": "^3.2.1",
@@ -25,7 +25,7 @@ import {
import { randomBytes } from 'node:crypto';
import { SignJWT, exportJWK, generateKeyPair } from 'jose';
import { DateTime } from 'luxon';
import { v4 as uuid } from 'uuid';
import { randomUUID as uuid } from 'node:crypto';
import { rest } from 'msw';
import { setupServer } from 'msw/node';
@@ -19,7 +19,7 @@ import { ConfigReader } from '@backstage/config';
import { SignJWT, exportJWK, generateKeyPair } from 'jose';
import { rest } from 'msw';
import { setupServer } from 'msw/node';
import { v4 as uuid } from 'uuid';
import { randomUUID as uuid } from 'node:crypto';
import { jwksTokenHandler } from './jwks';
// Simplified copy of TokenFactory in @backstage/plugin-auth-backend
@@ -17,7 +17,7 @@
import { DatabaseService, LoggerService } from '@backstage/backend-plugin-api';
import { HumanDuration, durationToMilliseconds } from '@backstage/types';
import { JWK, exportJWK, generateKeyPair } from 'jose';
import { v4 as uuid } from 'uuid';
import { randomUUID as uuid } from 'node:crypto';
import { DatabaseKeyStore } from './DatabaseKeyStore';
import { InternalKey, KeyPayload, KeyStore } from './types';
import { PluginKeySource } from './types';
@@ -19,7 +19,7 @@ import { ConflictError, NotFoundError } from '@backstage/errors';
import { CronTime } from 'cron';
import { Knex } from 'knex';
import { DateTime, Duration } from 'luxon';
import { v4 as uuid } from 'uuid';
import { randomUUID as uuid } from 'node:crypto';
import { DB_TASKS_TABLE, DbTasksRow } from '../database/tables';
import {
TaskSettingsV2,
-1
View File
@@ -77,7 +77,6 @@
"pg-connection-string": "^2.3.0",
"testcontainers": "^11.9.0",
"text-extensions": "^2.4.0",
"uuid": "^11.0.0",
"yn": "^4.0.0",
"zod": "^3.25.76 || ^4.0.0",
"zod-to-json-schema": "^3.25.1"
+1 -1
View File
@@ -15,7 +15,7 @@
*/
import Keyv, { type KeyvStoreAdapter } from 'keyv';
import { v4 as uuid } from 'uuid';
import { randomUUID as uuid } from 'node:crypto';
import { waitForReady } from '../util/waitForReady';
import { Instance } from './types';
+1 -1
View File
@@ -16,7 +16,7 @@
import { isDockerDisabledForTests } from '../util/isDockerDisabledForTests';
import { startMemcachedContainer } from './memcache';
import { v4 as uuid } from 'uuid';
import { randomUUID as uuid } from 'node:crypto';
const itIfDocker = isDockerDisabledForTests() ? it.skip : it;
+1 -1
View File
@@ -16,7 +16,7 @@
import { isDockerDisabledForTests } from '../util/isDockerDisabledForTests';
import { startRedisContainer } from './redis';
import { v4 as uuid } from 'uuid';
import { randomUUID as uuid } from 'node:crypto';
const itIfDocker = isDockerDisabledForTests() ? it.skip : it;
+1 -1
View File
@@ -15,7 +15,7 @@
*/
import { isDockerDisabledForTests } from '../util/isDockerDisabledForTests';
import { v4 as uuid } from 'uuid';
import { randomUUID as uuid } from 'node:crypto';
import { startValkeyContainer } from './valkey';
const itIfDocker = isDockerDisabledForTests() ? it.skip : it;
@@ -16,7 +16,7 @@
import { randomBytes } from 'node:crypto';
import knexFactory, { Knex } from 'knex';
import { v4 as uuid } from 'uuid';
import { randomUUID as uuid } from 'node:crypto';
import yn from 'yn';
import { waitForReady } from '../util/waitForReady';
import { Engine, LARGER_POOL_CONFIG, TestDatabaseProperties } from './types';
@@ -17,7 +17,7 @@
import { randomBytes } from 'node:crypto';
import knexFactory, { Knex } from 'knex';
import { parse as parsePgConnectionString } from 'pg-connection-string';
import { v4 as uuid } from 'uuid';
import { randomUUID as uuid } from 'node:crypto';
import { waitForReady } from '../util/waitForReady';
import { Engine, LARGER_POOL_CONFIG, TestDatabaseProperties } from './types';
@@ -4,7 +4,7 @@ import {
EntityProvider,
EntityProviderConnection,
} from '@backstage/plugin-catalog-node';
import * as uuid from 'uuid';
import { randomUUID } from 'node:crypto';
import { readProviderConfigs } from './readProviderConfigs';
import {
LoggerService,
@@ -74,7 +74,7 @@ export class {{providerClass}} implements EntityProvider {
fn: async () => {
const logger = this.#logger.child({
taskId: id,
taskInstanceId: uuid.v4(),
taskInstanceId: randomUUID(),
});
try {