From 6e5992089f18bdf7ced5efb44349961873fe2722 Mon Sep 17 00:00:00 2001 From: bangbang93 Date: Thu, 25 Jan 2024 10:06:29 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E9=80=90=E6=AD=A5=E6=9B=BF=E6=8D=A2blu?= =?UTF-8?q?ebird?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 17 +++++++++++++++++ package.json | 1 + src/cluster.ts | 3 ++- 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/package-lock.json b/package-lock.json index 6b8402c..c3f97c7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,6 +21,7 @@ "lodash-es": "^4.17.21", "morgan": "^1.9.1", "ms": "^2.1.2", + "p-map": "^7.0.1", "progress": "^2.0.3", "socket.io-client": "^4.5.1", "tail": "^2.2.6" @@ -3643,6 +3644,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/p-map": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.1.tgz", + "integrity": "sha512-2wnaR0XL/FDOj+TgpDuRb2KTjLnu3Fma6b1ZUwGY7LcqenMcvP/YFpjpbPKY6WVGsbuJZRuoUz8iPrt8ORnAFw==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -7630,6 +7642,11 @@ "p-limit": "^3.0.2" } }, + "p-map": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.1.tgz", + "integrity": "sha512-2wnaR0XL/FDOj+TgpDuRb2KTjLnu3Fma6b1ZUwGY7LcqenMcvP/YFpjpbPKY6WVGsbuJZRuoUz8iPrt8ORnAFw==" + }, "parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", diff --git a/package.json b/package.json index 66becb5..8183acf 100644 --- a/package.json +++ b/package.json @@ -36,6 +36,7 @@ "lodash-es": "^4.17.21", "morgan": "^1.9.1", "ms": "^2.1.2", + "p-map": "^7.0.1", "progress": "^2.0.3", "socket.io-client": "^4.5.1", "tail": "^2.2.6" diff --git a/src/cluster.ts b/src/cluster.ts index c9c852a..cfa73a5 100644 --- a/src/cluster.ts +++ b/src/cluster.ts @@ -15,6 +15,7 @@ import {clone, min, sum, template} from 'lodash-es' import morgan from 'morgan' import ms from 'ms' import {tmpdir} from 'os' +import pMap from 'p-map' import {dirname, join, sep} from 'path' import {cwd} from 'process' import ProgressBar from 'progress' @@ -120,7 +121,7 @@ export class Cluster { }) const parallel = parseInt(process.env.SYNC_PARALLEL ?? '1', 10) || 1 const noopen = process.env.FORCE_NOOPEN === 'true' && parallel === 1 ? '1' : '' - await Bluebird.map(missingFiles, async (file, i) => { + await pMap(missingFiles, async (file, i) => { const path = join(this.cacheDir, file.hash.substring(0, 2), file.hash) if (process.stderr.isTTY) { bar.interrupt(`${colors.green('downloading')} ${colors.underline(file.path)}`)