Skip to content

Commit 90d5636

Browse files
authored
Merge pull request #8876 from liranmauda/liran-bump-deps
Remove `uuid` module and replace it with the native `crypto.randomUUID()`
2 parents dd317b1 + 0e75259 commit 90d5636

File tree

11 files changed

+39
-57
lines changed

11 files changed

+39
-57
lines changed

package-lock.json

Lines changed: 0 additions & 14 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,6 @@
117117
"seedrandom": "3.0.5",
118118
"setimmediate": "1.0.5",
119119
"typescript": "5.8.2",
120-
"uuid": "10.0.0",
121120
"ws": "8.18.1",
122121
"xml2js": "0.6.2",
123122
"yaml": "2.7.0",

src/agent/agent_cli.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ const os = require('os');
1010
const path = require('path');
1111
const util = require('util');
1212
const repl = require('repl');
13-
const { v4: uuid } = require('uuid');
13+
const crypto = require('crypto');
1414
const argv = require('minimist')(process.argv);
1515
const S3Auth = require('aws-sdk/lib/signers/s3');
1616

@@ -114,7 +114,7 @@ class AgentCLI {
114114
self.client.options.address = self.params.address;
115115
}
116116
if (!self.params.host_id) {
117-
self.params.host_id = uuid();
117+
self.params.host_id = crypto.randomUUID();
118118
return self.agent_conf.update({
119119
host_id: self.params.host_id
120120
});

src/endpoint/s3/ops/s3_put_bucket_lifecycle.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
const _ = require('lodash');
55
const s3_const = require('../s3_constants');
6-
const { v4: uuid } = require('uuid');
6+
const crypto = require('crypto');
77
const dbg = require('../../../util/debug_module')(__filename);
88
const S3Error = require('../s3_errors').S3Error;
99

@@ -98,13 +98,13 @@ async function put_bucket_lifecycle(req) {
9898
}
9999
} else {
100100
// Generate a random ID if missing
101-
current_rule.id = uuid();
101+
current_rule.id = crypto.randomUUID();
102102
}
103103

104104
// Check for duplicate ID in the rules
105105
if (id_set.has(current_rule.id)) {
106106
dbg.error('Rule ID must be unique. Found same ID for more than one rule: ', current_rule.id);
107-
throw new S3Error({ ...S3Error.InvalidArgument, message: 'Rule ID must be unique. Found same ID for more than one rule'});
107+
throw new S3Error({ ...S3Error.InvalidArgument, message: 'Rule ID must be unique. Found same ID for more than one rule' });
108108
}
109109
id_set.add(current_rule.id);
110110

src/hosted_agents/hosted_agents.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/* Copyright (C) 2016 NooBaa */
22
'use strict';
33

4-
const { v4: uuid } = require('uuid');
4+
const crypto = require('crypto');
55
const path = require('path');
66
const util = require('util');
77
const fs = require('fs');
@@ -197,7 +197,7 @@ class HostedAgents {
197197
start_local_agent(params) {
198198
if (!this._started) return;
199199

200-
const host_id = uuid();
200+
const host_id = crypto.randomUUID();
201201
const node_name = 'noobaa-internal-agent-' + params.name;
202202
const storage_path = path.join(process.cwd(), 'noobaa_storage', node_name);
203203

src/sdk/namespace_fs.js

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ const fs = require('fs');
88
const path = require('path');
99
const util = require('util');
1010
const mime = require('mime');
11-
const { v4: uuidv4 } = require('uuid');
1211
const P = require('../util/promise');
1312
const dbg = require('../util/debug_module')(__filename);
1413
const config = require('../../config');
@@ -1283,7 +1282,7 @@ class NamespaceFS {
12831282
let upload_path;
12841283
// upload path is needed only when open_mode is w / for copy
12851284
if (open_mode === 'w' || params.copy_source) {
1286-
const upload_id = uuidv4();
1285+
const upload_id = crypto.randomUUID();
12871286
const bucket_tmp_dir_path = this.get_bucket_tmpdir_full_path();
12881287
upload_path = path.join(bucket_tmp_dir_path, 'uploads', upload_id);
12891288
await native_fs_utils._make_path_dirs(upload_path, fs_context);
@@ -1730,7 +1729,7 @@ class NamespaceFS {
17301729
const fs_context = this.prepare_fs_context(object_sdk);
17311730
await this._load_bucket(params, fs_context);
17321731
await this._throw_if_low_space(fs_context);
1733-
params.obj_id = uuidv4();
1732+
params.obj_id = crypto.randomUUID();
17341733
params.mpu_path = this._mpu_path(params);
17351734
await native_fs_utils._create_path(params.mpu_path, fs_context);
17361735
const create_params = JSON.stringify({ ...params, source_stream: null });

src/server/system_services/pool_controllers.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ const dbg = require('../../util/debug_module')(__filename);
88
const { KubeStore } = require('../kube-store.js');
99
const yaml = require('yaml');
1010
const Agent = require('../../agent/agent');
11-
const { v4: uuid } = require('uuid');
11+
const crypto = require('crypto');
1212
const js_utils = require('../../util/js_utils');
1313
const size_utils = require('../../util/size_utils');
1414

@@ -220,7 +220,7 @@ class InProcessAgentsPoolController extends PoolController {
220220
read: () => _.cloneDeep(create_node_token),
221221
write: new_token => { create_node_token = _.cloneDeep(new_token); }
222222
},
223-
host_id: uuid(),
223+
host_id: crypto.randomUUID(),
224224
test_hostname: hostname
225225
});
226226
await agent.start();

src/test/system_tests/test_bucket_access.js

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ const test_utils = require('./test_utils');
1616

1717
const fs = require('fs');
1818
const AWS = require('aws-sdk');
19-
const { v4: uuid } = require('uuid');
19+
const crypto = require('crypto');
2020
const assert = require('assert');
2121

2222

@@ -114,10 +114,10 @@ async function setup() {
114114
// S3 policies which gives the user equivalent permissions over the buckets that permission_list was giving.
115115
await Promise.all(
116116
full_access_user
117-
.allowed_buckets
118-
.permission_list
119-
.map(bucket => test_utils.generate_s3_policy(full_access_user.email, bucket, ['s3:*']))
120-
.map(generated => client.bucket.put_bucket_policy({ name: generated.params.bucket, policy: generated.policy }))
117+
.allowed_buckets
118+
.permission_list
119+
.map(bucket => test_utils.generate_s3_policy(full_access_user.email, bucket, ['s3:*']))
120+
.map(generated => client.bucket.put_bucket_policy({ name: generated.params.bucket, policy: generated.policy }))
121121
);
122122

123123
account = account_by_name(system_info.accounts, bucket1_user.email);
@@ -127,10 +127,10 @@ async function setup() {
127127
// S3 policies which gives the user equivalent permissions over the buckets that permission_list was giving.
128128
await Promise.all(
129129
full_access_user
130-
.allowed_buckets
131-
.permission_list
132-
.map(bucket => test_utils.generate_s3_policy(full_access_user.email, bucket, ['s3:*']))
133-
.map(generated => client.bucket.put_bucket_policy({ name: generated.params.bucket, policy: generated.policy }))
130+
.allowed_buckets
131+
.permission_list
132+
.map(bucket => test_utils.generate_s3_policy(full_access_user.email, bucket, ['s3:*']))
133+
.map(generated => client.bucket.put_bucket_policy({ name: generated.params.bucket, policy: generated.policy }))
134134
);
135135

136136
account = account_by_name(system_info.accounts, no_access_user.email);
@@ -140,10 +140,10 @@ async function setup() {
140140
// S3 policies which gives the user equivalent permissions over the buckets that permission_list was giving.
141141
await Promise.all(
142142
full_access_user
143-
.allowed_buckets
144-
.permission_list
145-
.map(bucket => test_utils.generate_s3_policy(full_access_user.email, bucket, ['s3:*']))
146-
.map(generated => client.bucket.put_bucket_policy({ name: generated.params.bucket, policy: generated.policy }))
143+
.allowed_buckets
144+
.permission_list
145+
.map(bucket => test_utils.generate_s3_policy(full_access_user.email, bucket, ['s3:*']))
146+
.map(generated => client.bucket.put_bucket_policy({ name: generated.params.bucket, policy: generated.policy }))
147147
);
148148
}
149149

@@ -322,7 +322,7 @@ async function test_bucket_list_denied() {
322322
async function test_create_bucket_add_creator_permissions() {
323323
console.log(`Starting test_create_bucket_add_creator_permissions`);
324324
const server = get_new_server(full_access_user);
325-
const unique_bucket_name = 'bucket' + uuid();
325+
const unique_bucket_name = 'bucket' + crypto.randomUUID();
326326
const params = {
327327
Bucket: unique_bucket_name
328328
};
@@ -336,7 +336,7 @@ async function test_create_bucket_add_creator_permissions() {
336336
async function test_delete_bucket_deletes_permissions() {
337337
console.log(`Starting test_delete_bucket_deletes_permissions`);
338338
const server = get_new_server(full_access_user);
339-
const unique_bucket_name = 'bucket' + uuid();
339+
const unique_bucket_name = 'bucket' + crypto.randomUUID();
340340

341341
await server.createBucket({ Bucket: unique_bucket_name }).promise();
342342

src/test/system_tests/test_node_failure.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,11 @@ const P = require('../../util/promise');
1313
const api = require('../../api');
1414
const ops = require('../utils/basic_server_ops');
1515
const dotenv = require('../../util/dotenv');
16-
const { v4: uuid } = require('uuid');
16+
const crypto = require('crypto');
1717
dotenv.load();
1818

1919

20-
const suffix = uuid().split('-')[0];
20+
const suffix = crypto.randomUUID().split('-')[0];
2121

2222
const {
2323
mgmt_ip = 'localhost',

src/test/unit_tests/test_lifecycle.js

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ const util = require('util');
99
const mocha = require('mocha');
1010
const assert = require('assert');
1111
const mongodb = require('mongodb');
12-
const { v4: uuid } = require('uuid');
1312
const _ = require('lodash');
1413
const crypto = require('crypto');
1514
const stream = require('stream');
@@ -149,7 +148,7 @@ mocha.describe('lifecycle', () => {
149148
}
150149

151150
mocha.it('test prefix, absolute date expiration', async () => {
152-
const key = uuid();
151+
const key = crypto.randomUUID();
153152
const prefix = key.split('-')[0];
154153
const age = 17;
155154
const bucket = Bucket;
@@ -162,7 +161,7 @@ mocha.describe('lifecycle', () => {
162161
await verify_object_deleted(key);
163162
});
164163
mocha.it('test prefix, absolute date and tags expiration', async () => {
165-
const key = uuid();
164+
const key = crypto.randomUUID();
166165
const prefix = key.split('-')[0];
167166
const age = 17;
168167
const bucket = Bucket;
@@ -177,7 +176,7 @@ mocha.describe('lifecycle', () => {
177176
await verify_object_deleted(key);
178177
});
179178
mocha.it('test size less, absolute date expiration', async () => {
180-
const key = uuid();
179+
const key = crypto.randomUUID();
181180
const age = 17;
182181
const size = 64;
183182
const bucket = Bucket;
@@ -189,7 +188,7 @@ mocha.describe('lifecycle', () => {
189188
await verify_object_deleted(key);
190189
});
191190
mocha.it('test size interval, absolute date expiration', async () => {
192-
const key = uuid();
191+
const key = crypto.randomUUID();
193192
const age = 17;
194193
const gt = 1;
195194
const size_object = 2;
@@ -203,7 +202,7 @@ mocha.describe('lifecycle', () => {
203202
await verify_object_deleted(key);
204203
});
205204
mocha.it('test size less, relative days expiration', async () => {
206-
const key = uuid();
205+
const key = crypto.randomUUID();
207206
const object_age = 2;
208207
const days = 1;
209208
const size = 1;
@@ -216,7 +215,7 @@ mocha.describe('lifecycle', () => {
216215
await verify_object_deleted(key);
217216
});
218217
mocha.it('test tag, relative days expiration', async () => {
219-
const key = uuid();
218+
const key = crypto.randomUUID();
220219
const object_age = 2;
221220
const days = 1;
222221
const tag = { key: 'tagname', value: 'tagvalue' };

0 commit comments

Comments
 (0)