diff options
author | Kat Marchán <kzm@zkat.tech> | 2018-08-15 23:30:52 +0300 |
---|---|---|
committer | Kat Marchán <kzm@zkat.tech> | 2018-08-21 02:17:43 +0300 |
commit | 37b8f405f35c861b7beeed56f71ad20b0bf87889 (patch) | |
tree | 96cbf4a9121d6a9d29cc72bd0d790011d65d110f /node_modules/extend | |
parent | 1f6ba1cb174590c1f5d2b00e2ca238dfa39d507a (diff) |
request@2.88.0
Credit: @mikeal
Diffstat (limited to 'node_modules/extend')
-rw-r--r-- | node_modules/extend/.editorconfig | 20 | ||||
-rw-r--r-- | node_modules/extend/.jscs.json | 8 | ||||
-rw-r--r-- | node_modules/extend/.npmignore | 1 | ||||
-rw-r--r-- | node_modules/extend/.travis.yml | 115 | ||||
-rw-r--r-- | node_modules/extend/CHANGELOG.md | 6 | ||||
-rw-r--r-- | node_modules/extend/index.js | 39 | ||||
-rw-r--r-- | node_modules/extend/package.json | 35 |
7 files changed, 167 insertions, 57 deletions
diff --git a/node_modules/extend/.editorconfig b/node_modules/extend/.editorconfig new file mode 100644 index 000000000..bc228f826 --- /dev/null +++ b/node_modules/extend/.editorconfig @@ -0,0 +1,20 @@ +root = true + +[*] +indent_style = tab +indent_size = 4 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true +max_line_length = 150 + +[CHANGELOG.md] +indent_style = space +indent_size = 2 + +[*.json] +max_line_length = off + +[Makefile] +max_line_length = off diff --git a/node_modules/extend/.jscs.json b/node_modules/extend/.jscs.json index 0284c86da..3cce01d78 100644 --- a/node_modules/extend/.jscs.json +++ b/node_modules/extend/.jscs.json @@ -157,14 +157,14 @@ "requireImportAlphabetized": false, - "requireSpaceBeforeObjectValues": true, - "requireSpaceBeforeDestructuredValues": true, + "requireSpaceBeforeObjectValues": true, + "requireSpaceBeforeDestructuredValues": true, "disallowSpacesInsideTemplateStringPlaceholders": true, - "disallowArrayDestructuringReturn": false, + "disallowArrayDestructuringReturn": false, - "requireNewlineBeforeSingleStatementsInIf": false, + "requireNewlineBeforeSingleStatementsInIf": false, "disallowUnusedVariables": true, diff --git a/node_modules/extend/.npmignore b/node_modules/extend/.npmignore deleted file mode 100644 index 30d74d258..000000000 --- a/node_modules/extend/.npmignore +++ /dev/null @@ -1 +0,0 @@ -test
\ No newline at end of file diff --git a/node_modules/extend/.travis.yml b/node_modules/extend/.travis.yml index 6bf696c87..5ccdfc494 100644 --- a/node_modules/extend/.travis.yml +++ b/node_modules/extend/.travis.yml @@ -2,10 +2,13 @@ language: node_js os: - linux node_js: - - "7.9" - - "6.10" + - "10.7" + - "9.11" + - "8.11" + - "7.10" + - "6.14" - "5.12" - - "4.8" + - "4.9" - "iojs-v3.3" - "iojs-v2.5" - "iojs-v1.8" @@ -13,10 +16,10 @@ node_js: - "0.10" - "0.8" before_install: - - 'if [ "${TRAVIS_NODE_VERSION}" = "0.6" ]; then npm install -g npm@1.3 ; elif [ "${TRAVIS_NODE_VERSION}" != "0.9" ]; then case "$(npm --version)" in 1.*) npm install -g npm@1.4.28 ;; 2.*) npm install -g npm@2 ;; esac ; fi' - - 'if [ "${TRAVIS_NODE_VERSION}" != "0.6" ] && [ "${TRAVIS_NODE_VERSION}" != "0.9" ]; then npm install -g npm; fi' + - 'case "${TRAVIS_NODE_VERSION}" in 0.*) export NPM_CONFIG_STRICT_SSL=false ;; esac' + - 'nvm install-latest-npm' install: - - 'if [ "${TRAVIS_NODE_VERSION}" = "0.6" ]; then nvm install 0.8 && npm install -g npm@1.3 && npm install -g npm@1.4.28 && npm install -g npm@2 && npm install && nvm use "${TRAVIS_NODE_VERSION}"; else npm install; fi;' + - 'if [ "${TRAVIS_NODE_VERSION}" = "0.6" ] || [ "${TRAVIS_NODE_VERSION}" = "0.9" ]; then nvm install --latest-npm 0.8 && npm install && nvm use "${TRAVIS_NODE_VERSION}"; else npm install; fi;' script: - 'if [ -n "${PRETEST-}" ]; then npm run pretest ; fi' - 'if [ -n "${POSTTEST-}" ]; then npm run posttest ; fi' @@ -28,10 +31,72 @@ env: matrix: fast_finish: true include: - - node_js: "node" + - node_js: "lts/*" env: PRETEST=true - - node_js: "node" + - node_js: "lts/*" + env: POSTTEST=true + - node_js: "4" env: COVERAGE=true + - node_js: "10.6" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.5" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.4" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.3" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.2" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.1" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.0" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.10" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.9" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.8" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.7" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.6" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.5" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.4" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.3" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.2" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.1" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.0" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.10" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.9" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.8" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.7" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.6" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.5" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.4" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.3" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.2" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.1" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.0" + env: TEST=true ALLOW_FAILURE=true + - node_js: "7.9" + env: TEST=true ALLOW_FAILURE=true - node_js: "7.8" env: TEST=true ALLOW_FAILURE=true - node_js: "7.7" @@ -50,6 +115,14 @@ matrix: env: TEST=true ALLOW_FAILURE=true - node_js: "7.0" env: TEST=true ALLOW_FAILURE=true + - node_js: "6.13" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.12" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.11" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.10" + env: TEST=true ALLOW_FAILURE=true - node_js: "6.9" env: TEST=true ALLOW_FAILURE=true - node_js: "6.8" @@ -94,6 +167,8 @@ matrix: env: TEST=true ALLOW_FAILURE=true - node_js: "5.0" env: TEST=true ALLOW_FAILURE=true + - node_js: "4.8" + env: TEST=true ALLOW_FAILURE=true - node_js: "4.7" env: TEST=true ALLOW_FAILURE=true - node_js: "4.6" @@ -150,30 +225,6 @@ matrix: env: TEST=true ALLOW_FAILURE=true - node_js: "0.4" env: TEST=true ALLOW_FAILURE=true - ##- node_js: "7" - #env: TEST=true - #os: osx - #- node_js: "6" - #env: TEST=true - #os: osx - #- node_js: "5" - #env: TEST=true - #os: osx - #- node_js: "4" - #env: TEST=true - #os: osx - #- node_js: "iojs" - #env: TEST=true - #os: osx - #- node_js: "0.12" - #env: TEST=true - #os: osx - #- node_js: "0.10" - #env: TEST=true - #os: osx - #- node_js: "0.8" - #env: TEST=true - #os: osx allow_failures: - os: osx - env: TEST=true ALLOW_FAILURE=true diff --git a/node_modules/extend/CHANGELOG.md b/node_modules/extend/CHANGELOG.md index 0fe528764..2cf7de6fb 100644 --- a/node_modules/extend/CHANGELOG.md +++ b/node_modules/extend/CHANGELOG.md @@ -1,3 +1,9 @@ +3.0.2 / 2018-07-19 +================== + * [Fix] Prevent merging `__proto__` property (#48) + * [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape` + * [Tests] up to `node` `v10.7`, `v9.11`, `v8.11`, `v7.10`, `v6.14`, `v4.9`; use `nvm install-latest-npm` + 3.0.1 / 2017-04-27 ================== * [Fix] deep extending should work with a non-object (#46) diff --git a/node_modules/extend/index.js b/node_modules/extend/index.js index bbe53f660..2aa3faae6 100644 --- a/node_modules/extend/index.js +++ b/node_modules/extend/index.js @@ -2,6 +2,8 @@ var hasOwn = Object.prototype.hasOwnProperty; var toStr = Object.prototype.toString; +var defineProperty = Object.defineProperty; +var gOPD = Object.getOwnPropertyDescriptor; var isArray = function isArray(arr) { if (typeof Array.isArray === 'function') { @@ -31,6 +33,35 @@ var isPlainObject = function isPlainObject(obj) { return typeof key === 'undefined' || hasOwn.call(obj, key); }; +// If name is '__proto__', and Object.defineProperty is available, define __proto__ as an own property on target +var setProperty = function setProperty(target, options) { + if (defineProperty && options.name === '__proto__') { + defineProperty(target, options.name, { + enumerable: true, + configurable: true, + value: options.newValue, + writable: true + }); + } else { + target[options.name] = options.newValue; + } +}; + +// Return undefined instead of __proto__ if '__proto__' is not an own property +var getProperty = function getProperty(obj, name) { + if (name === '__proto__') { + if (!hasOwn.call(obj, name)) { + return void 0; + } else if (gOPD) { + // In early versions of node, obj['__proto__'] is buggy when obj has + // __proto__ as an own property. Object.getOwnPropertyDescriptor() works. + return gOPD(obj, name).value; + } + } + + return obj[name]; +}; + module.exports = function extend() { var options, name, src, copy, copyIsArray, clone; var target = arguments[0]; @@ -55,8 +86,8 @@ module.exports = function extend() { if (options != null) { // Extend the base object for (name in options) { - src = target[name]; - copy = options[name]; + src = getProperty(target, name); + copy = getProperty(options, name); // Prevent never-ending loop if (target !== copy) { @@ -70,11 +101,11 @@ module.exports = function extend() { } // Never move original objects, clone them - target[name] = extend(deep, clone, copy); + setProperty(target, { name: name, newValue: extend(deep, clone, copy) }); // Don't bring in undefined values } else if (typeof copy !== 'undefined') { - target[name] = copy; + setProperty(target, { name: name, newValue: copy }); } } } diff --git a/node_modules/extend/package.json b/node_modules/extend/package.json index fe23ab65b..575353412 100644 --- a/node_modules/extend/package.json +++ b/node_modules/extend/package.json @@ -1,27 +1,30 @@ { - "_from": "extend@~3.0.1", - "_id": "extend@3.0.1", + "_from": "extend@3.0.2", + "_id": "extend@3.0.2", "_inBundle": false, - "_integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", + "_integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", "_location": "/extend", "_phantomChildren": {}, "_requested": { - "type": "range", + "type": "version", "registry": true, - "raw": "extend@~3.0.1", + "raw": "extend@3.0.2", "name": "extend", "escapedName": "extend", - "rawSpec": "~3.0.1", + "rawSpec": "3.0.2", "saveSpec": null, - "fetchSpec": "~3.0.1" + "fetchSpec": "3.0.2" }, "_requiredBy": [ - "/request" + "#USER", + "/", + "/cloudant-follow/request", + "/nano/request" ], - "_resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", - "_shasum": "a755ea7bc1adfcc5a31ce7e762dbaadc5e636444", - "_spec": "extend@~3.0.1", - "_where": "/Users/rebecca/code/npm/node_modules/request", + "_resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "_shasum": "f8b1136b4071fbd8eb140aff858b1019ec2915fa", + "_spec": "extend@3.0.2", + "_where": "/Users/zkat/Documents/code/work/npm", "author": { "name": "Stefan Thomas", "email": "justmoon@members.fsf.org", @@ -41,11 +44,11 @@ "deprecated": false, "description": "Port of jQuery.extend for node.js and the browser", "devDependencies": { - "@ljharb/eslint-config": "^11.0.0", + "@ljharb/eslint-config": "^12.2.1", "covert": "^1.1.0", - "eslint": "^3.19.0", + "eslint": "^4.19.1", "jscs": "^3.0.7", - "tape": "^4.6.3" + "tape": "^4.9.1" }, "homepage": "https://github.com/justmoon/node-extend#readme", "keywords": [ @@ -71,5 +74,5 @@ "test": "npm run tests-only", "tests-only": "node test" }, - "version": "3.0.1" + "version": "3.0.2" } |