diff --git a/lib/get-release-info.js b/lib/get-release-info.js index 6955088a..dd3ef5f1 100644 --- a/lib/get-release-info.js +++ b/lib/get-release-info.js @@ -6,7 +6,7 @@ module.exports = async ( {cwd, env: {DEFAULT_NPM_REGISTRY = 'https://registry.npmjs.org/', ...env}}, registry ) => { - const distTag = tag || (await execa.stdout('npm', ['config', 'get', 'tag'], {cwd, env})) || 'latest'; + const distTag = tag || (await execa('npm', ['config', 'get', 'tag'], {cwd, env})).stdout || 'latest'; return { name: `npm package (@${distTag} dist-tag)`, diff --git a/package.json b/package.json index 65df1912..43a54b8a 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "dependencies": { "@semantic-release/error": "^2.2.0", "aggregate-error": "^3.0.0", - "execa": "^1.0.0", + "execa": "^2.0.0", "fs-extra": "^8.0.0", "lodash": "^4.17.4", "nerf-dart": "^1.0.0", diff --git a/test/integration.test.js b/test/integration.test.js index 4a62da4f..8e278a48 100644 --- a/test/integration.test.js +++ b/test/integration.test.js @@ -257,7 +257,7 @@ test('Publish the package', async t => { t.deepEqual(result, {name: 'npm package (@latest dist-tag)', url: undefined}); t.is((await readJson(path.resolve(cwd, 'package.json'))).version, '1.0.0'); t.false(await pathExists(path.resolve(cwd, `${pkg.name}-1.0.0.tgz`))); - t.is(await execa.stdout('npm', ['view', pkg.name, 'version'], {cwd, env: testEnv}), '1.0.0'); + t.is((await execa('npm', ['view', pkg.name, 'version'], {cwd, env: testEnv})).stdout, '1.0.0'); }); test('Publish the package on a dist-tag', async t => { @@ -282,7 +282,7 @@ test('Publish the package on a dist-tag', async t => { t.deepEqual(result, {name: 'npm package (@next dist-tag)', url: 'https://www.npmjs.com/package/publish-tag'}); t.is((await readJson(path.resolve(cwd, 'package.json'))).version, '1.0.0'); t.false(await pathExists(path.resolve(cwd, `${pkg.name}-1.0.0.tgz`))); - t.is(await execa.stdout('npm', ['view', pkg.name, 'version'], {cwd, env: testEnv}), '1.0.0'); + t.is((await execa('npm', ['view', pkg.name, 'version'], {cwd, env: testEnv})).stdout, '1.0.0'); }); test('Publish the package from a sub-directory', async t => { @@ -307,7 +307,7 @@ test('Publish the package from a sub-directory', async t => { t.deepEqual(result, {name: 'npm package (@latest dist-tag)', url: undefined}); t.is((await readJson(path.resolve(cwd, 'dist/package.json'))).version, '1.0.0'); t.false(await pathExists(path.resolve(cwd, `${pkg.name}-1.0.0.tgz`))); - t.is(await execa.stdout('npm', ['view', pkg.name, 'version'], {cwd, env: testEnv}), '1.0.0'); + t.is((await execa('npm', ['view', pkg.name, 'version'], {cwd, env: testEnv})).stdout, '1.0.0'); }); test('Create the package and skip publish ("npmPublish" is false)', async t => { diff --git a/test/prepare.test.js b/test/prepare.test.js index 3407357e..74d56890 100644 --- a/test/prepare.test.js +++ b/test/prepare.test.js @@ -1,6 +1,6 @@ import path from 'path'; import test from 'ava'; -import {outputJson, readJson, outputFile, readFile, pathExists} from 'fs-extra'; +import {outputJson, readJson, outputFile, readFile, pathExists, appendFile} from 'fs-extra'; import tempy from 'tempy'; import execa from 'execa'; import {stub} from 'sinon'; @@ -70,6 +70,7 @@ test('Updade package.json and package-lock.json', async t => { const packagePath = path.resolve(cwd, 'package.json'); const packageLockPath = path.resolve(cwd, 'package-lock.json'); await outputJson(packagePath, {version: '0.0.0-dev'}); + await appendFile(path.resolve(cwd, '.npmrc'), 'package-lock = true'); // Create a package-lock.json file await execa('npm', ['install'], {cwd}); @@ -126,6 +127,7 @@ test('Updade package.json and package-lock.json in a sub-directory', async t => const packagePath = path.resolve(cwd, pkgRoot, 'package.json'); const packageLockPath = path.resolve(cwd, pkgRoot, 'package-lock.json'); await outputJson(packagePath, {version: '0.0.0-dev'}); + await appendFile(path.resolve(cwd, pkgRoot, '.npmrc'), 'package-lock = true'); // Create a package-lock.json file await execa('npm', ['install'], {cwd: path.resolve(cwd, pkgRoot)});