aboutsummaryrefslogtreecommitdiff
path: root/node_modules/extend
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2018-09-20 02:56:13 +0200
committerFlorian Dold <florian.dold@gmail.com>2018-09-20 02:56:13 +0200
commitbbff7403fbf46f9ad92240ac213df8d30ef31b64 (patch)
treec58400ec5124da1c7d56b01aea83309f80a56c3b /node_modules/extend
parent003fb34971cf63466184351b4db5f7c67df4f444 (diff)
update packages
Diffstat (limited to 'node_modules/extend')
-rw-r--r--node_modules/extend/.eslintrc2
-rw-r--r--node_modules/extend/.jscs.json8
-rw-r--r--node_modules/extend/.npmignore1
-rw-r--r--node_modules/extend/.travis.yml115
-rw-r--r--node_modules/extend/CHANGELOG.md6
-rw-r--r--node_modules/extend/index.js39
-rw-r--r--node_modules/extend/package.json9
7 files changed, 133 insertions, 47 deletions
diff --git a/node_modules/extend/.eslintrc b/node_modules/extend/.eslintrc
index 90b31938e..a34cf2831 100644
--- a/node_modules/extend/.eslintrc
+++ b/node_modules/extend/.eslintrc
@@ -4,7 +4,7 @@
"extends": "@ljharb",
"rules": {
- "complexity": [2, 15],
+ "complexity": [2, 20],
"eqeqeq": [2, "allow-null"],
"func-name-matching": [1],
"max-depth": [1, 4],
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 f68aa0d23..85279f780 100644
--- a/node_modules/extend/package.json
+++ b/node_modules/extend/package.json
@@ -1,7 +1,7 @@
{
"name": "extend",
"author": "Stefan Thomas <justmoon@members.fsf.org> (http://www.justmoon.net)",
- "version": "3.0.1",
+ "version": "3.0.2",
"description": "Port of jQuery.extend for node.js and the browser",
"main": "index",
"scripts": {
@@ -32,12 +32,11 @@
},
"dependencies": {},
"devDependencies": {
- "tape": "^4.6.3",
+ "@ljharb/eslint-config": "^12.2.1",
"covert": "^1.1.0",
+ "eslint": "^4.19.1",
"jscs": "^3.0.7",
- "eslint": "^3.19.0",
- "@ljharb/eslint-config": "^11.0.0"
+ "tape": "^4.9.1"
},
"license": "MIT"
}
-