Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/npm/cli.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGar <gar+gh@danger.computer>2021-07-02 16:55:14 +0300
committerGar <gar+gh@danger.computer>2021-07-12 18:50:07 +0300
commit3ecf19cdc35684ccb15280b2c34d27496aa1c634 (patch)
tree89062f380d0a942a4f83e1c8b5b1673fa917a9c1
parentf17aca5cdf355aaa7e1f517d1b3bb4213f4df092 (diff)
fix(config): fix noproxy
The flattener worked for everything except for when you are using `npm config set` itself. Now it works for both. PR-URL: https://github.com/npm/cli/pull/3508 Credit: @wraithgar Close: #3508 Reviewed-by: @nlf
-rw-r--r--lib/utils/config/definitions.js5
-rw-r--r--test/lib/utils/config/definitions.js10
2 files changed, 13 insertions, 2 deletions
diff --git a/lib/utils/config/definitions.js b/lib/utils/config/definitions.js
index 5375aeced..9e560fb71 100644
--- a/lib/utils/config/definitions.js
+++ b/lib/utils/config/definitions.js
@@ -1204,7 +1204,10 @@ define('noproxy', {
Also accepts a comma-delimited string.
`,
flatten (key, obj, flatOptions) {
- flatOptions.noProxy = obj[key].join(',')
+ if (Array.isArray(obj[key]))
+ flatOptions.noProxy = obj[key].join(',')
+ else
+ flatOptions.noProxy = obj[key]
},
})
diff --git a/test/lib/utils/config/definitions.js b/test/lib/utils/config/definitions.js
index 8724f0e3b..e829780fc 100644
--- a/test/lib/utils/config/definitions.js
+++ b/test/lib/utils/config/definitions.js
@@ -463,7 +463,7 @@ t.test('search options', t => {
t.end()
})
-t.test('noProxy', t => {
+t.test('noProxy - array', t => {
const obj = { noproxy: ['1.2.3.4,2.3.4.5', '3.4.5.6'] }
const flat = {}
definitions.noproxy.flatten('noproxy', obj, flat)
@@ -471,6 +471,14 @@ t.test('noProxy', t => {
t.end()
})
+t.test('noProxy - string', t => {
+ const obj = { noproxy: '1.2.3.4,2.3.4.5,3.4.5.6' }
+ const flat = {}
+ definitions.noproxy.flatten('noproxy', obj, flat)
+ t.strictSame(flat, { noProxy: '1.2.3.4,2.3.4.5,3.4.5.6' })
+ t.end()
+})
+
t.test('maxSockets', t => {
const obj = { maxsockets: 123 }
const flat = {}