removed uuid dependency from api package

This commit is contained in:
Jan Prochazka
2024-05-20 19:15:03 +02:00
parent 134d8d1b1a
commit 153f40f13e
18 changed files with 20 additions and 38 deletions

View File

@@ -6,7 +6,6 @@ const socket = require('../utility/socket');
const loadFilesRecursive = require('../utility/loadFilesRecursive');
const getJslFileName = require('../utility/getJslFileName');
const { getLogger } = require('dbgate-tools');
const uuidv1 = require('uuid/v1');
const dbgateApi = require('../shell');
const jsldata = require('./jsldata');
const platformInfo = require('../utility/platformInfo');
@@ -127,7 +126,7 @@ module.exports = {
return true;
}
const tmpchangedFilePath = path.join(resolveArchiveFolder(folder), `${file}-${uuidv1()}.jsonl`);
const tmpchangedFilePath = path.join(resolveArchiveFolder(folder), `${file}-${crypto.randomUUID()}.jsonl`);
const reader = await dbgateApi.modifyJsonLinesReader({
fileName: changedFilePath,
changeSet,

View File

@@ -1,14 +1,13 @@
const axios = require('axios');
const jwt = require('jsonwebtoken');
const getExpressPath = require('../utility/getExpressPath');
const uuidv1 = require('uuid/v1');
const { getLogins } = require('../utility/hasPermission');
const { getLogger } = require('dbgate-tools');
const AD = require('activedirectory2').promiseWrapper;
const logger = getLogger('auth');
const tokenSecret = uuidv1();
const tokenSecret = crypto.randomUUID();
function shouldAuthorizeApi() {
const logins = getLogins();

View File

@@ -1,4 +1,3 @@
const uuidv1 = require('uuid/v1');
const connections = require('./connections');
const archive = require('./archive');
const socket = require('../utility/socket');
@@ -137,7 +136,7 @@ module.exports = {
/** @param {import('dbgate-types').OpenedDatabaseConnection} conn */
sendRequest(conn, message) {
const msgid = uuidv1();
const msgid = crypto.randomUUID();
const promise = new Promise((resolve, reject) => {
this.requests[msgid] = [resolve, reject];
try {

View File

@@ -1,4 +1,3 @@
const uuidv1 = require('uuid/v1');
const fs = require('fs-extra');
const path = require('path');
const { filesdir, archivedir, resolveArchiveFolder, uploadsdir, appdir } = require('../utility/directories');
@@ -164,7 +163,7 @@ module.exports = {
generateUploadsFile_meta: true,
async generateUploadsFile({ extension }) {
const fileName = `${uuidv1()}.${extension || 'html'}`;
const fileName = `${crypto.randomUUID()}.${extension || 'html'}`;
return {
fileName,
filePath: path.join(uploadsdir(), fileName),

View File

@@ -1,7 +1,6 @@
const _ = require('lodash');
const path = require('path');
const fs = require('fs-extra');
const uuidv1 = require('uuid/v1');
const byline = require('byline');
const socket = require('../utility/socket');
const { fork } = require('child_process');
@@ -165,7 +164,7 @@ module.exports = {
start_meta: true,
async start({ script }) {
const runid = uuidv1();
const runid = crypto.randomUUID()
if (script.type == 'json') {
const js = jsonScriptToJavascript(script);
@@ -213,7 +212,7 @@ module.exports = {
loadReader_meta: true,
async loadReader({ functionName, props }) {
const promise = new Promise((resolve, reject) => {
const runid = uuidv1();
const runid = crypto.randomUUID();
this.requests[runid] = [resolve, reject];
this.startCore(runid, loaderScriptTemplate(functionName, props, runid));
});

View File

@@ -1,7 +1,6 @@
const connections = require('./connections');
const socket = require('../utility/socket');
const { fork } = require('child_process');
const uuidv1 = require('uuid/v1');
const _ = require('lodash');
const AsyncLock = require('async-lock');
const { handleProcessCommunication } = require('../utility/processComm');
@@ -201,7 +200,7 @@ module.exports = {
},
sendRequest(conn, message) {
const msgid = uuidv1();
const msgid = crypto.randomUUID();
const promise = new Promise((resolve, reject) => {
this.requests[msgid] = [resolve, reject];
try {

View File

@@ -1,5 +1,4 @@
const _ = require('lodash');
const uuidv1 = require('uuid/v1');
const connections = require('./connections');
const socket = require('../utility/socket');
const { fork } = require('child_process');
@@ -85,7 +84,7 @@ module.exports = {
create_meta: true,
async create({ conid, database }) {
const sesid = uuidv1();
const sesid = crypto.randomUUID();
const connection = await connections.getCore({ conid });
const subprocess = fork(
global['API_PACKAGE'] || process.argv[1],

View File

@@ -1,6 +1,5 @@
const path = require('path');
const { uploadsdir } = require('../utility/directories');
const uuidv1 = require('uuid/v1');
const { getLogger } = require('dbgate-tools');
const logger = getLogger('uploads');
@@ -15,7 +14,7 @@ module.exports = {
res.json(null);
return;
}
const uploadName = uuidv1();
const uploadName = crypto.randomUUID();
const filePath = path.join(uploadsdir(), uploadName);
logger.info(`Uploading file ${data.name}, size=${data.size}`);

View File

@@ -1,4 +1,3 @@
const uuidv1 = require('uuid/v1');
const path = require('path');
const fs = require('fs');
const _ = require('lodash');
@@ -31,7 +30,7 @@ class TableWriter {
}
initializeFromQuery(structure, resultIndex) {
this.jslid = uuidv1();
this.jslid = crypto.randomUUID();
this.currentFile = path.join(jsldir(), `${this.jslid}.jsonl`);
fs.writeFileSync(
this.currentFile,

View File

@@ -1,11 +1,10 @@
const path = require('path');
const uuidv1 = require('uuid/v1');
const { uploadsdir } = require('../utility/directories');
const { downloadFile } = require('../utility/downloader');
async function download(url) {
if (url && url.match(/(^http:\/\/)|(^https:\/\/)/)) {
const tmpFile = path.join(uploadsdir(), uuidv1());
const tmpFile = path.join(uploadsdir(), crypto.randomUUID());
await downloadFile(url, tmpFile);
return tmpFile;
}

View File

@@ -1,5 +1,4 @@
const { fork } = require('child_process');
const uuidv1 = require('uuid/v1');
const { handleProcessCommunication } = require('./processComm');
const processArgs = require('../utility/processArgs');
const pipeForkLogs = require('./pipeForkLogs');
@@ -67,7 +66,7 @@ class DatastoreProxy {
async getRows(offset, limit) {
await this.ensureSubprocess();
const msgid = uuidv1();
const msgid = crypto.randomUUID();
const promise = new Promise((resolve, reject) => {
this.requests[msgid] = [resolve, reject];
try {
@@ -81,7 +80,7 @@ class DatastoreProxy {
}
async notifyChangedCore() {
const msgid = uuidv1();
const msgid = crypto.randomUUID();
const promise = new Promise((resolve, reject) => {
this.requests[msgid] = [resolve, reject];
try {

View File

@@ -1,6 +1,5 @@
const AsyncLock = require('async-lock');
const fs = require('fs-extra');
const uuidv1 = require('uuid/v1');
const lock = new AsyncLock();
@@ -57,7 +56,7 @@ class JsonLinesDatabase {
? obj
: {
...obj,
_id: uuidv1(),
_id: crypto.randomUUID(),
};
this.data.push(elem);
await this._save();

View File

@@ -8,7 +8,6 @@ const stableStringify = require('json-stable-stringify');
const { evaluateCondition } = require('dbgate-sqltree');
const requirePluginFunction = require('./requirePluginFunction');
const esort = require('external-sorting');
const uuidv1 = require('uuid/v1');
const { jsldir } = require('./directories');
const LineReader = require('./LineReader');
@@ -28,7 +27,7 @@ class JsonLinesDatastore {
}
static async sortFile(infile, outfile, sort) {
const tempDir = path.join(os.tmpdir(), uuidv1());
const tempDir = path.join(os.tmpdir(), crypto.randomUUID());
fs.mkdirSync(tempDir);
await esort

View File

@@ -1,7 +1,6 @@
// const pacote = require('pacote');
const axios = require('axios');
// const tarballExtract = require('tarball-extract');
const uuidv1 = require('uuid/v1');
const path = require('path');
const fs = require('fs');
const zlib = require('zlib');
@@ -38,9 +37,9 @@ async function downloadPackage(packageName, directory) {
const tarball = infoResp.data.versions[latest].dist.tarball;
const tmpFile = path.join(uploadsdir(), uuidv1() + '.tgz');
const tmpFile = path.join(uploadsdir(), crypto.randomUUID() + '.tgz');
await downloadFile(tarball, tmpFile);
const tmpDir = path.join(uploadsdir(), uuidv1());
const tmpDir = path.join(uploadsdir(), crypto.randomUUID());
fs.mkdirSync(tmpDir);
await extractTarball(tmpFile, tmpDir);
await copyDirectory(path.join(tmpDir, 'package'), directory);

View File

@@ -1,5 +1,4 @@
const { getLogger } = require('dbgate-tools');
const uuidv1 = require('uuid/v1');
const { getSshTunnel } = require('./sshTunnel');
const logger = getLogger('sshTunnelProxy');
@@ -22,7 +21,7 @@ function handleGetSshTunnelResponse({ msgid, response }, subprocess) {
async function getSshTunnelProxy(connection) {
if (!process.send) return getSshTunnel(connection);
const msgid = uuidv1();
const msgid = crypto.randomUUID();
process.send({ msgtype: 'getsshtunnel-request', msgid, connection });
return new Promise((resolve, reject) => {
dispatchedMessages[msgid] = { resolve, reject };