From 32357e3d172a552e0408b3e1ed743e87fe7d5a21 Mon Sep 17 00:00:00 2001 From: Jonas Jenwald Date: Sun, 15 Jan 2023 11:37:53 +0100 Subject: [PATCH] Update `rimraf` to version 4 The primary change is that the `rimraf` function now returns a Promise instead of taking a callback; please see https://github.com/isaacs/rimraf#major-changes-from-v3-to-v4 --- gulpfile.js | 30 +++---- package-lock.json | 222 ++++++++++++++++++++-------------------------- package.json | 2 +- test/test.js | 2 +- test/testutils.js | 6 +- 5 files changed, 113 insertions(+), 149 deletions(-) diff --git a/gulpfile.js b/gulpfile.js index 1a9d91253..40000fb96 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -26,7 +26,7 @@ const rename = require("gulp-rename"); const replace = require("gulp-replace"); const mkdirp = require("mkdirp"); const path = require("path"); -const rimraf = require("rimraf"); +const { rimraf } = require("rimraf"); const stream = require("stream"); const exec = require("child_process").exec; const spawn = require("child_process").spawn; @@ -1461,22 +1461,19 @@ gulp.task( ) ); -gulp.task("jsdoc", function (done) { +gulp.task("jsdoc", async function (done) { console.log(); console.log("### Generating documentation (JSDoc)"); const JSDOC_FILES = ["src/display/api.js"]; - rimraf(JSDOC_BUILD_DIR, function () { - mkdirp(JSDOC_BUILD_DIR).then(function () { - const command = - '"node_modules/.bin/jsdoc" -d ' + - JSDOC_BUILD_DIR + - " " + - JSDOC_FILES.join(" "); - exec(command, done); - }); - }); + await rimraf(JSDOC_BUILD_DIR); + await mkdirp(JSDOC_BUILD_DIR); + + const command = `"node_modules/.bin/jsdoc" -d ${JSDOC_BUILD_DIR} ${JSDOC_FILES.join( + " " + )}`; + exec(command, done); }); gulp.task("types", function (done) { @@ -2083,11 +2080,12 @@ gulp.task( ) ); -gulp.task("clean", function (done) { +gulp.task("clean", async function (done) { console.log(); console.log("### Cleaning up project builds"); - rimraf(BUILD_DIR, done); + await rimraf(BUILD_DIR); + done(); }); gulp.task("importl10n", function (done) { @@ -2254,7 +2252,7 @@ gulp.task( console.log(); console.log("### Overwriting all files"); - rimraf.sync(path.join(DIST_DIR, "*")); + rimraf.sync(DIST_DIR); return merge([ packageJson().pipe(gulp.dest(DIST_DIR)), @@ -2446,7 +2444,7 @@ gulp.task( // The mozcentral baseline directory is a Git repository, so we // remove all files and copy the current mozcentral build files // into it to create the diff. - rimraf.sync(MOZCENTRAL_BASELINE_DIR + "*"); + rimraf.sync(MOZCENTRAL_BASELINE_DIR); gulp .src([BUILD_DIR + "mozcentral/**/*"]) diff --git a/package-lock.json b/package-lock.json index 6b690e846..fe23e5a47 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "postcss-logical": "^5.0.4", "prettier": "^2.8.3", "puppeteer": "^19.0.0", - "rimraf": "^3.0.2", + "rimraf": "^4.0.5", "streamqueue": "^1.1.2", "stylelint": "^14.16.1", "stylelint-config-prettier": "^9.0.4", @@ -2115,6 +2115,21 @@ "node-pre-gyp": "bin/node-pre-gyp" } }, + "node_modules/@mapbox/node-pre-gyp/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@mapbox/node-pre-gyp/node_modules/semver": { "version": "7.3.5", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", @@ -6845,6 +6860,21 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/flat-cache/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/flatted": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", @@ -7844,20 +7874,23 @@ } }, "node_modules/glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.0.4", + "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" }, "engines": { "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/glob-parent": { @@ -9384,26 +9417,6 @@ "integrity": "sha512-9PMzyvhtocxb3aXJVOPqBDswdgyAeSB81QnLop4npOpbqnheaTEwPc9ZloQeVswugPManznQBjD8kWDTjlnHuw==", "dev": true }, - "node_modules/jasmine/node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/jest-worker": { "version": "27.3.1", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.3.1.tgz", @@ -16193,6 +16206,21 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, + "node_modules/puppeteer-core/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -16785,35 +16813,15 @@ } }, "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.0.5.tgz", + "integrity": "sha512-3gf/WdsBM+ZkuPb76MpXSxNKt00QQ3PdXqDCCBOsHgcoBs8DAhXbqtrGQUAkhxHgXYWzXxuaOsN4s21+at5fBw==", "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "rimraf": "dist/cjs/src/bin.js" }, "engines": { - "node": "*" + "node": ">=14" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -19390,26 +19398,6 @@ "lodash": "^4.17.14" } }, - "node_modules/wintersmith/node_modules/glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/wintersmith/node_modules/marked": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/marked/-/marked-0.5.2.tgz", @@ -21213,6 +21201,15 @@ "tar": "^6.1.0" }, "dependencies": { + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, "semver": { "version": "7.3.5", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", @@ -24904,6 +24901,17 @@ "requires": { "flatted": "^3.1.0", "rimraf": "^3.0.2" + }, + "dependencies": { + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, "flatted": { @@ -25754,15 +25762,15 @@ "dev": true }, "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.0.4", + "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" } @@ -26900,22 +26908,6 @@ "requires": { "glob": "^7.1.6", "jasmine-core": "^4.5.0" - }, - "dependencies": { - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } } }, "jasmine-core": { @@ -32148,6 +32140,15 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } } } }, @@ -32606,29 +32607,10 @@ } }, "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.0.5.tgz", + "integrity": "sha512-3gf/WdsBM+ZkuPb76MpXSxNKt00QQ3PdXqDCCBOsHgcoBs8DAhXbqtrGQUAkhxHgXYWzXxuaOsN4s21+at5fBw==", + "dev": true }, "run-parallel": { "version": "1.2.0", @@ -34688,20 +34670,6 @@ "lodash": "^4.17.14" } }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, "marked": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/marked/-/marked-0.5.2.tgz", diff --git a/package.json b/package.json index f74221e25..b50c98273 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "postcss-logical": "^5.0.4", "prettier": "^2.8.3", "puppeteer": "^19.0.0", - "rimraf": "^3.0.2", + "rimraf": "^4.0.5", "streamqueue": "^1.1.2", "stylelint": "^14.16.1", "stylelint-config-prettier": "^9.0.4", diff --git a/test/test.js b/test/test.js index 4eae960f8..dfa2235ba 100644 --- a/test/test.js +++ b/test/test.js @@ -22,6 +22,7 @@ var path = require("path"); var fs = require("fs"); var os = require("os"); var puppeteer = require("puppeteer"); +const { rimraf } = require("rimraf"); var url = require("url"); var testUtils = require("./testutils.js"); const dns = require("dns"); @@ -1043,7 +1044,6 @@ async function closeSession(browser) { }); if (allClosed) { if (tempDir) { - const rimraf = require("rimraf"); rimraf.sync(tempDir); } onAllSessionsClosed?.(); diff --git a/test/testutils.js b/test/testutils.js index a67472606..baa40b491 100644 --- a/test/testutils.js +++ b/test/testutils.js @@ -18,13 +18,11 @@ const fs = require("fs"); const path = require("path"); -const rimrafSync = require("rimraf").sync; +const { rimraf } = require("rimraf"); exports.removeDirSync = function removeDirSync(dir) { fs.readdirSync(dir); // Will throw if dir is not a directory - rimrafSync(dir, { - disableGlob: true, - }); + rimraf.sync(dir); }; exports.copySubtreeSync = function copySubtreeSync(src, dest) {