From 2c2dd1c76fccf84c08aff879d6da4daf9556d284 Mon Sep 17 00:00:00 2001 From: Maxime Poulin Date: Sat, 4 Dec 2021 19:49:21 -0500 Subject: [PATCH] Switch busboy implementation to @fastify/busboy I've been notified the current implementation is abandonned and has been forked by fastify to fix bugs, including some crashes and hangs: See: * https://github.com/mscdex/busboy/issues/250 * https://github.com/mscdex/dicer/pull/22 * https://github.com/mscdex/dicer/pull/25 --- package.json | 2 +- src/plugins/uploader.js | 2 +- yarn.lock | 31 ++++++++++++------------------- 3 files changed, 14 insertions(+), 21 deletions(-) diff --git a/package.json b/package.json index 92e42e8a..7b4fea28 100644 --- a/package.json +++ b/package.json @@ -40,8 +40,8 @@ "node": ">=12.0.0" }, "dependencies": { + "@fastify/busboy": "1.0.0", "bcryptjs": "2.4.3", - "busboy": "0.3.1", "chalk": "4.1.2", "cheerio": "1.0.0-rc.10", "commander": "7.2.0", diff --git a/src/plugins/uploader.js b/src/plugins/uploader.js index eec8b6d6..426f717f 100644 --- a/src/plugins/uploader.js +++ b/src/plugins/uploader.js @@ -1,7 +1,7 @@ "use strict"; const Helper = require("../helper"); -const busboy = require("busboy"); +const busboy = require("@fastify/busboy"); const {v4: uuidv4} = require("uuid"); const path = require("path"); const fs = require("fs"); diff --git a/yarn.lock b/yarn.lock index e3d75142..b0497fa4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1133,6 +1133,13 @@ minimatch "^3.0.4" strip-json-comments "^3.1.1" +"@fastify/busboy@1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@fastify/busboy/-/busboy-1.0.0.tgz#f73182e61955ab91f8ec5a137fda2c9cee366dbd" + integrity sha512-tzTXX1TFEjWCseEsNdIlXXkD+48uJoN+zpqIojUX4pSoMscsbhO/UuVEB5SzJucexqDWOo2ma0ECwdD7hZdrzg== + dependencies: + text-decoding "^1.0.0" + "@fortawesome/fontawesome-free@5.15.4": version "5.15.4" resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-free/-/fontawesome-free-5.15.4.tgz#ecda5712b61ac852c760d8b3c79c96adca5554e5" @@ -2096,13 +2103,6 @@ buffer@^6.0.3: base64-js "^1.3.1" ieee754 "^1.2.1" -busboy@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/busboy/-/busboy-0.3.1.tgz#170899274c5bf38aae27d5c62b71268cd585fd1b" - integrity sha512-y7tTxhGKXcyBxRKAni+awqx8uqaJKrSFSNFSeRG5CsWNdmy2BIK+6VGWEW7TZnIO/533mtMEA4rOevQV815YJw== - dependencies: - dicer "0.3.0" - bytes@3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" @@ -2844,13 +2844,6 @@ detect-libc@^1.0.2: resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= -dicer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/dicer/-/dicer-0.3.0.tgz#eacd98b3bfbf92e8ab5c2fdb71aaac44bb06b872" - integrity sha512-MdceRRWqltEG2dZqO769g27N/3PXfcKl04VhYnBlo2YhH7zPi88VebsjTKclaOyiuMaGU72hTfw3VkUitGcVCA== - dependencies: - streamsearch "0.1.2" - diff@5.0.0, diff@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/diff/-/diff-5.0.0.tgz#7ed6ad76d859d030787ec35855f5b1daf31d852b" @@ -7228,11 +7221,6 @@ stream-browserify@^3.0.0: inherits "~2.0.4" readable-stream "^3.5.0" -streamsearch@0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-0.1.2.tgz#808b9d0e56fc273d809ba57338e929919a1a9f1a" - integrity sha1-gIudDlb8Jz2Am6VzOOkpkZoanxo= - string-width@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" @@ -7598,6 +7586,11 @@ test-exclude@^6.0.0: glob "^7.1.4" minimatch "^3.0.4" +text-decoding@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/text-decoding/-/text-decoding-1.0.0.tgz#38a5692d23b5c2b12942d6e245599cb58b1bc52f" + integrity sha512-/0TJD42KDnVwKmDK6jj3xP7E2MG7SHAOG4tyTgyUCRPdHwvkquYNLEQltmdMa3owq3TkddCVcTsoctJI8VQNKA== + text-table@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"