diff --git a/lib/git-clone.js b/lib/git-clone.js
index d2bc78d41..1d5197f9f 100644
--- a/lib/git-clone.js
+++ b/lib/git-clone.js
@@ -1,10 +1,9 @@
'use strict';
const path = require('path');
-const { promisify } = require('util');
+const { mkdir } = require('fs').promises;
const execa = require('execa');
-const mkdirp = promisify(require('mkdirp'));
function getExecGit(path) {
return function execGit(args) {
@@ -20,7 +19,7 @@ async function gitClone(context) {
const gitRef = context.module.ref;
const modulePath = path.join(context.path, context.module.name);
- await mkdirp(modulePath);
+ await mkdir(modulePath, { recursive: true });
const execGit = getExecGit(modulePath);
await execGit(['init']);
diff --git a/lib/temp-directory.js b/lib/temp-directory.js
index b4c50d241..ca2ca251f 100644
--- a/lib/temp-directory.js
+++ b/lib/temp-directory.js
@@ -2,8 +2,8 @@
const { promisify } = require('util');
let path = require('path'); // Mocked in tests
+const { mkdir } = require('fs').promises;
-const mkdirp = promisify(require('mkdirp'));
const osenv = require('osenv');
const rimraf = promisify(require('rimraf'));
const uuid = require('uuid');
@@ -24,8 +24,8 @@ async function create(context) {
context.homeDir = path.join(context.path, 'home');
context.npmConfigTmp = path.join(context.path, 'npm_config_tmp');
- await mkdirp(context.homeDir);
- await mkdirp(context.npmConfigTmp);
+ await mkdir(context.homeDir, { recursive: true });
+ await mkdir(context.npmConfigTmp, { recursive: true });
}
async function remove(context) {
diff --git a/lib/unpack.js b/lib/unpack.js
index d934a8e32..2183d843d 100644
--- a/lib/unpack.js
+++ b/lib/unpack.js
@@ -4,8 +4,8 @@ const fs = require('fs');
const path = require('path');
const { promisify } = require('util');
const zlib = require('zlib');
+const { mkdir } = fs.promises;
-const mkdirp = promisify(require('mkdirp'));
const stream = require('readable-stream');
const tar = require('tar');
@@ -19,7 +19,7 @@ async function unpack(context) {
throw new Error('Nothing to unpack... Ending');
}
const extractPath = path.join(context.path, context.module.name);
- await mkdirp(extractPath);
+ await mkdir(extractPath, { recursive: true });
context.emit(
'data',
'silly',
diff --git a/package.json b/package.json
index c642f2204..3ae47bc8b 100644
--- a/package.json
+++ b/package.json
@@ -33,14 +33,13 @@
"dependencies": {
"async": "^3.1.0",
"bl": "^4.0.0",
- "chalk": "^2.4.2",
+ "chalk": "^3.0.0",
"columnify": "^1.5.4",
- "execa": "^3.2.0",
+ "execa": "^4.0.0",
"lodash": "^4.17.15",
"make-promises-safe": "^5.1.0",
- "mkdirp": "^0.5.1",
"normalize-git-url": "^3.0.2",
- "npm-package-arg": "^6.1.1",
+ "npm-package-arg": "^8.0.0",
"npm-which": "^3.0.1",
"osenv": "^0.1.5",
"read-package-json": "^2.1.0",
@@ -48,18 +47,18 @@
"request": "^2.88.0",
"rimraf": "^3.0.0",
"root-check": "^1.0.0",
- "semver": "^6.3.0",
- "strip-ansi": "^5.2.0",
+ "semver": "^7.1.1",
+ "strip-ansi": "^6.0.0",
"supports-color": "^7.1.0",
- "tar": "^5.0.5",
+ "tar": "^6.0.0",
"uid-number": "0.0.6",
"update-notifier": "^3.0.1",
- "uuid": "^3.3.3",
+ "uuid": "^7.0.2",
"which": "^2.0.1",
"winston": "^3.2.1",
"xml-sanitizer": "^1.1.6",
- "xmlbuilder": "^13.0.2",
- "yargs": "^14.2.0",
+ "xmlbuilder": "^15.0.0",
+ "yargs": "^15.1.0",
"yarn": "^1.19.1"
},
"devDependencies": {
@@ -67,7 +66,7 @@
"eslint-config-prettier": "^6.4.0",
"eslint-plugin-prettier": "^3.1.1",
"fs-extra": "^8.1.0",
- "prettier": "1.18.2",
+ "prettier": "^1.19.1",
"proxyquire": "^2.1.3",
"rewire": "^4.0.1",
"string-to-stream": "^3.0.1",
diff --git a/test/fixtures/parsed-junit.json b/test/fixtures/parsed-junit.json
index 4207fd7f2..e4562eb71 100644
--- a/test/fixtures/parsed-junit.json
+++ b/test/fixtures/parsed-junit.json
@@ -9,14 +9,14 @@
"name": "iPass-v4.2.2",
"time": "0.05"
},
- "system-out": ["\n \n "]
+ "system-out": [""]
},
{
"$": {
"name": "iFlakyFail-v3.3.3",
"time": "0.05"
},
- "system-out": ["\n Thanks for testing!\n "],
+ "system-out": [" Thanks for testing!"],
"skipped": [""],
"failure": [
{
@@ -32,7 +32,7 @@
"name": "iFail-v3.0.1",
"time": "0.05"
},
- "system-out": ["\n Thanks for testing!\n "],
+ "system-out": [" Thanks for testing!"],
"failure": [
{
"_": "[object Object] ",
@@ -47,7 +47,7 @@
"name": "iSkipped",
"time": "NaN"
},
- "system-out": ["\n \n "],
+ "system-out": [""],
"skipped": [""]
}
]
diff --git a/test/fixtures/test-out-xml-failing.txt b/test/fixtures/test-out-xml-failing.txt
index d9f095bb4..0afc77a96 100644
--- a/test/fixtures/test-out-xml-failing.txt
+++ b/test/fixtures/test-out-xml-failing.txt
@@ -1,26 +1,18 @@
-
-
-
+
-
-
-
+
[object Object]
-
-
-
+
[object Object]
-
-
-
+
diff --git a/test/fixtures/test-out-xml-passing-append.txt b/test/fixtures/test-out-xml-passing-append.txt
index ee96bfaac..2f386c7e7 100644
--- a/test/fixtures/test-out-xml-passing-append.txt
+++ b/test/fixtures/test-out-xml-passing-append.txt
@@ -1,13 +1,9 @@
This is a test!
-
-
-
+
-
-
-
+
diff --git a/test/fixtures/test-out-xml-passing.txt b/test/fixtures/test-out-xml-passing.txt
index fdc68b860..a8cef951d 100644
--- a/test/fixtures/test-out-xml-passing.txt
+++ b/test/fixtures/test-out-xml-passing.txt
@@ -1,12 +1,8 @@
-
-
-
+
-
-
-
+
diff --git a/test/npm/test-npm-install.js b/test/npm/test-npm-install.js
index a952a7758..d5351fac5 100644
--- a/test/npm/test-npm-install.js
+++ b/test/npm/test-npm-install.js
@@ -2,11 +2,11 @@
const os = require('os');
const path = require('path');
+const { mkdir } = require('fs').promises;
const { promisify } = require('util');
const { copy } = require('fs-extra');
const { test } = require('tap');
-const mkdirp = promisify(require('mkdirp'));
const rimraf = promisify(require('rimraf'));
const packageManager = require('../../lib/package-manager');
@@ -26,7 +26,7 @@ let packageManagers;
test('npm-install: setup', async () => {
packageManagers = await packageManager.getPackageManagers();
- await mkdirp(sandbox);
+ await mkdir(sandbox, { recursive: true });
await Promise.all([
copy(moduleFixtures, moduleTemp),
copy(extraParamFixtures, extraParamTemp),
diff --git a/test/npm/test-npm-test.js b/test/npm/test-npm-test.js
index eacf16037..164cb0f67 100644
--- a/test/npm/test-npm-test.js
+++ b/test/npm/test-npm-test.js
@@ -2,11 +2,11 @@
const os = require('os');
const path = require('path');
+const { mkdir } = require('fs').promises;
const { promisify } = require('util');
const { copy, existsSync } = require('fs-extra');
const { test } = require('tap');
-const mkdirp = promisify(require('mkdirp'));
const rimraf = promisify(require('rimraf'));
const makeContext = require('../helpers/make-context');
@@ -35,7 +35,7 @@ let packageManagers;
test('npm-test: setup', async () => {
packageManagers = await packageManager.getPackageManagers();
- await mkdirp(sandbox);
+ await mkdir(sandbox, { recursive: true });
await Promise.all([
copy(passFixtures, passTemp),
copy(failFixtures, failTemp),
diff --git a/test/reporter/test-reporter-junit.js b/test/reporter/test-reporter-junit.js
index 0c5e357fc..f6c74f688 100644
--- a/test/reporter/test-reporter-junit.js
+++ b/test/reporter/test-reporter-junit.js
@@ -1,12 +1,12 @@
'use strict';
const fs = require('fs');
+const { mkdir } = fs.promises;
const path = require('path');
const os = require('os');
const { promisify } = require('util');
const { test } = require('tap');
-const mkdirp = promisify(require('mkdirp'));
const rimraf = promisify(require('rimraf'));
const _ = require('lodash');
const parseString = promisify(require('xml2js').parseString);
@@ -52,7 +52,7 @@ const badOutput = fs.readFileSync(badOutputPath, 'utf-8');
const badOutputToo = fs.readFileSync(badOutputTooPath, 'utf-8');
test('reporter.junit(): setup', async () => {
- await mkdirp(sandbox);
+ await mkdir(sandbox, { recursive: true });
});
test('reporter.junit(): passing', (t) => {
diff --git a/test/reporter/test-reporter-tap.js b/test/reporter/test-reporter-tap.js
index e763de9e0..c6ca208ef 100644
--- a/test/reporter/test-reporter-tap.js
+++ b/test/reporter/test-reporter-tap.js
@@ -2,12 +2,12 @@
'use strict';
const fs = require('fs');
+const { mkdir } = fs.promises;
const path = require('path');
const os = require('os');
const { promisify } = require('util');
const { test } = require('tap');
-const mkdirp = promisify(require('mkdirp'));
const rimraf = promisify(require('rimraf'));
const Parser = require('tap-parser');
const str = require('string-to-stream');
@@ -44,7 +44,7 @@ const failingExpectedPath = path.join(fixturesPath, 'test-out-tap-failing.txt');
const failingExpected = fs.readFileSync(failingExpectedPath, 'utf-8');
test('reporter.tap(): setup', async () => {
- await mkdirp(sandbox);
+ await mkdir(sandbox, { recursive: true });
});
test('reporter.tap(): passing', (t) => {
diff --git a/test/test-grab-project.js b/test/test-grab-project.js
index b95830224..a4aad1551 100644
--- a/test/test-grab-project.js
+++ b/test/test-grab-project.js
@@ -5,11 +5,11 @@
const os = require('os');
const path = require('path');
+const { mkdir } = require('fs').promises;
const { promisify } = require('util');
const { stat } = require('fs-extra');
const { test } = require('tap');
-const mkdirp = promisify(require('mkdirp'));
const rimraf = promisify(require('rimraf'));
const grabProject = require('../lib/grab-project');
@@ -18,7 +18,7 @@ const sandbox = path.join(os.tmpdir(), `citgm-${Date.now()}`);
const fixtures = path.join(__dirname, 'fixtures');
test('grab-project: setup', async () => {
- await mkdirp(sandbox);
+ await mkdir(sandbox, { recursive: true });
});
test('grab-project: npm module', async (t) => {
diff --git a/test/test-temp-directory.js b/test/test-temp-directory.js
index c3d7f3e9c..b3dc5a833 100644
--- a/test/test-temp-directory.js
+++ b/test/test-temp-directory.js
@@ -74,10 +74,7 @@ test('tempDirectory.create: bad path', skipIfWin32, async (t) => {
try {
await tempDirectory.create(badContext);
} catch (e) {
- t.ok(
- e.message.includes(nullDevice),
- `the message should include the path ${nullDevice}`
- );
+ t.ok(e.message.includes('EEXIST'), `the message should include EEXIST`);
t.ok(badContext.path, 'badContext should have a path');
tempDirectory.__set__('path', path);
}
diff --git a/test/yarn/test-yarn-install.js b/test/yarn/test-yarn-install.js
index 366f8d4fb..244025d4c 100644
--- a/test/yarn/test-yarn-install.js
+++ b/test/yarn/test-yarn-install.js
@@ -2,11 +2,11 @@
const os = require('os');
const path = require('path');
+const { mkdir } = require('fs').promises;
const { promisify } = require('util');
const { copy } = require('fs-extra');
const { test } = require('tap');
-const mkdirp = promisify(require('mkdirp'));
const rimraf = promisify(require('rimraf'));
const packageManager = require('../../lib/package-manager');
@@ -26,7 +26,7 @@ let packageManagers;
test('yarn-install: setup', async () => {
packageManagers = await packageManager.getPackageManagers();
- await mkdirp(sandbox);
+ await mkdir(sandbox, { recursive: true });
await Promise.all([
copy(moduleFixtures, moduleTemp),
copy(extraParamFixtures, extraParamTemp),
diff --git a/test/yarn/test-yarn-test.js b/test/yarn/test-yarn-test.js
index e8587a09a..3f082f71b 100644
--- a/test/yarn/test-yarn-test.js
+++ b/test/yarn/test-yarn-test.js
@@ -2,11 +2,11 @@
const os = require('os');
const path = require('path');
+const { mkdir } = require('fs').promises;
const { promisify } = require('util');
const { copy, existsSync } = require('fs-extra');
const { test } = require('tap');
-const mkdirp = promisify(require('mkdirp'));
const rimraf = promisify(require('rimraf'));
const makeContext = require('../helpers/make-context');
@@ -35,7 +35,7 @@ let packageManagers;
test('yarn-test: setup', async () => {
packageManagers = await packageManager.getPackageManagers();
- await mkdirp(sandbox);
+ await mkdir(sandbox, { recursive: true });
await Promise.all([
copy(passFixtures, passTemp),
copy(failFixtures, failTemp),