diff --git a/lib/publish.js b/lib/publish.js index 486333b7fe790..61716e2efdd0a 100644 --- a/lib/publish.js +++ b/lib/publish.js @@ -137,12 +137,7 @@ class Publish extends BaseCommand { publishConfigToOpts (publishConfig) { // create a new object that inherits from the config stack // then squash the css-case into camelCase opts, like we do - const mergedConfigs = Object.assign( - {}, - ...[...this.npm.config.list].reverse(), - publishConfig - ) - return flatten(mergedConfigs) + return flatten({...flatten(this.npm.config.list[0]), ...publishConfig}) } } module.exports = Publish diff --git a/test/lib/publish.js b/test/lib/publish.js index acc1a2ad84947..992a56b4d65df 100644 --- a/test/lib/publish.js +++ b/test/lib/publish.js @@ -521,7 +521,11 @@ t.test('able to publish after if encountered multiple configs', t => { }, null, 2), }) - const configList = [{ tag }, { registry: `https://other.registry`, tag: 'some-tag' }, defaults] + const configList = [ + { ...defaults, tag }, + { ...defaults, registry: `https://other.registry`, tag: 'some-tag' }, + defaults, + ] const Publish = requireInject('../../lib/publish.js', { libnpmpublish: {