From 0728b942c62d38ff7748496c72aade053cdfa820 Mon Sep 17 00:00:00 2001 From: elrrrrrrr Date: Sun, 9 Jul 2023 22:23:27 +0800 Subject: [PATCH] feat: use Buffer.concat --- app/common/PackageUtil.ts | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/app/common/PackageUtil.ts b/app/common/PackageUtil.ts index 5e689dc5..2596e0cb 100644 --- a/app/common/PackageUtil.ts +++ b/app/common/PackageUtil.ts @@ -109,18 +109,17 @@ export async function extractPackageJSON(tarballBytes: Buffer): Promise name === 'package/package.json', - onentry: entry => { - let json = ''; - entry.on('data', data => { - json += data.toString(); - }); - entry.on('end', () => { - try { - resolve(JSON.parse(json)); - } catch (err) { - reject(new Error('Error parsing package.json')); - } - }); + onentry: async entry => { + let chunks: Buffer[] = []; + for await (let chunk of entry) { + chunks.push(chunk); + } + try { + const data = Buffer.concat(chunks); + return resolve(JSON.parse(data.toString())); + } catch (err) { + reject(new Error('Error parsing package.json')); + } }, })); });