From f0502f97a5e3934a4c46dad7a53b4f3fdbb5ae70 Mon Sep 17 00:00:00 2001 From: Ivan Goncharov Date: Mon, 18 Jan 2021 18:16:31 +0200 Subject: [PATCH] Use correct flags for rmdir/mkdir functions (#2886) --- benchmark/benchmark.js | 8 ++++---- integrationTests/integration-test.js | 2 +- resources/build-deno.js | 4 ++-- resources/build-npm.js | 4 ++-- resources/utils.js | 15 --------------- 5 files changed, 9 insertions(+), 24 deletions(-) diff --git a/benchmark/benchmark.js b/benchmark/benchmark.js index c8da30e1f6..ad14e7f6b0 100644 --- a/benchmark/benchmark.js +++ b/benchmark/benchmark.js @@ -31,10 +31,10 @@ function exec(command, options = {}) { // and returns path to its 'dist' directory. function prepareBenchmarkProjects(revisionList) { const tmpDir = path.join(os.tmpdir(), 'graphql-js-benchmark'); - fs.mkdirSync(tmpDir, { recursive: true }); + fs.mkdirSync(tmpDir); const setupDir = path.join(tmpDir, 'setup'); - fs.rmdirSync(setupDir, { recursive: true }); + fs.rmdirSync(setupDir, { recursive: true, force: true }); fs.mkdirSync(setupDir); return revisionList.map((revision) => { @@ -72,12 +72,12 @@ function prepareBenchmarkProjects(revisionList) { } const repoDir = path.join(tmpDir, hash); - fs.rmdirSync(repoDir, { recursive: true }); + fs.rmdirSync(repoDir, { recursive: true, force: true }); fs.mkdirSync(repoDir); exec(`git archive "${hash}" | tar -xC "${repoDir}"`); exec('npm --quiet ci', { cwd: repoDir }); fs.renameSync(buildNPMArchive(repoDir), archivePath); - fs.rmdirSync(repoDir, { recursive: true }); + fs.rmdirSync(repoDir, { recursive: true, force: true }); return archivePath; } diff --git a/integrationTests/integration-test.js b/integrationTests/integration-test.js index 9ccaddd736..6f3d40cc88 100644 --- a/integrationTests/integration-test.js +++ b/integrationTests/integration-test.js @@ -17,7 +17,7 @@ function exec(command, options = {}) { describe('Integration Tests', () => { const tmpDir = path.join(os.tmpdir(), 'graphql-js-integrationTmp'); - fs.rmdirSync(tmpDir, { recursive: true }); + fs.rmdirSync(tmpDir, { recursive: true, force: true }); fs.mkdirSync(tmpDir); const distDir = path.resolve('./npmDist'); diff --git a/resources/build-deno.js b/resources/build-deno.js index 0c63c06996..1b1685a21a 100644 --- a/resources/build-deno.js +++ b/resources/build-deno.js @@ -5,10 +5,10 @@ const path = require('path'); const babel = require('@babel/core'); -const { rmdirRecursive, readdirRecursive, showDirStats } = require('./utils'); +const { readdirRecursive, showDirStats } = require('./utils'); if (require.main === module) { - rmdirRecursive('./denoDist'); + fs.rmdirSync('./denoDist', { recursive: true, force: true }); fs.mkdirSync('./denoDist'); const srcFiles = readdirRecursive('./src', { ignoreDir: /^__.*__$/ }); diff --git a/resources/build-npm.js b/resources/build-npm.js index b2cd83aade..e39a2c63df 100644 --- a/resources/build-npm.js +++ b/resources/build-npm.js @@ -6,10 +6,10 @@ const assert = require('assert'); const babel = require('@babel/core'); -const { rmdirRecursive, readdirRecursive, showDirStats } = require('./utils'); +const { readdirRecursive, showDirStats } = require('./utils'); if (require.main === module) { - rmdirRecursive('./npmDist'); + fs.rmdirSync('./npmDist', { recursive: true, force: true }); fs.mkdirSync('./npmDist'); const srcFiles = readdirRecursive('./src', { ignoreDir: /^__.*__$/ }); diff --git a/resources/utils.js b/resources/utils.js index d3593816f4..6ab659dc3b 100644 --- a/resources/utils.js +++ b/resources/utils.js @@ -32,20 +32,6 @@ function removeTrailingNewLine(str) { return str.split('\n').slice(0, -1).join('\n'); } -function rmdirRecursive(dirPath) { - if (fs.existsSync(dirPath)) { - for (const dirent of fs.readdirSync(dirPath, { withFileTypes: true })) { - const fullPath = path.join(dirPath, dirent.name); - if (dirent.isDirectory()) { - rmdirRecursive(fullPath); - } else { - fs.unlinkSync(fullPath); - } - } - fs.rmdirSync(dirPath); - } -} - function readdirRecursive(dirPath, opts = {}) { const { ignoreDir } = opts; const result = []; @@ -116,7 +102,6 @@ function showDirStats(dirPath) { module.exports = { exec, execAsync, - rmdirRecursive, readdirRecursive, showDirStats, };