diff --git a/bin/c8.js b/bin/c8.js index dd81d2d6..c78fe58b 100755 --- a/bin/c8.js +++ b/bin/c8.js @@ -1,9 +1,9 @@ #!/usr/bin/env node 'use strict' -const fs = require('fs') const foreground = require('foreground-child') const { outputReport } = require('../lib/commands/report') +const mkdirp = require('mkdirp') const { promisify } = require('util') const rimraf = require('rimraf') const { @@ -24,7 +24,8 @@ let argv = buildYargs().parse(instrumenterArgs) if (argv.clean) { await promisify(rimraf)(argv.tempDirectory) } - await promisify(fs.mkdir)(argv.tempDirectory, { recursive: true }) + // allow c8 to run on Node 8 (coverage just won't work). + await promisify(mkdirp)(argv.tempDirectory) process.env.NODE_V8_COVERAGE = argv.tempDirectory foreground(hideInstrumenterArgs(argv), async (done) => { diff --git a/package-lock.json b/package-lock.json index 1058418a..095f5046 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2505,7 +2505,6 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, "requires": { "minimist": "0.0.8" } diff --git a/package.json b/package.json index 47fbfc38..e353f20c 100644 --- a/package.json +++ b/package.json @@ -39,6 +39,7 @@ "istanbul-lib-coverage": "^2.0.1", "istanbul-lib-report": "^2.0.1", "istanbul-reports": "^2.0.0", + "mkdirp": "^0.5.1", "rimraf": "^2.6.2", "test-exclude": "^5.0.0", "v8-to-istanbul": "^3.1.1",