From c81643d8fa442b8bd2ed46569f158cd27977b916 Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Sat, 20 Oct 2018 23:41:24 +0300 Subject: [PATCH 01/18] =?UTF-8?q?=D0=98=D0=B3=D0=BD=D0=BE=D1=80=20=D0=BD?= =?UTF-8?q?=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B5=D0=BA=20IDE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index b512c09..7ff3ebd 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ +.idea/ + node_modules \ No newline at end of file From 79eec830de6fa907a6f6a1e176f0e4d9dea3c600 Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Sat, 20 Oct 2018 23:42:10 +0300 Subject: [PATCH 02/18] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=BE=D0=BF=D0=B5=D1=87=D0=B0=D1=82?= =?UTF-8?q?=D0=BA=D0=B0=20=D0=B2=20readme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ead0967..8f5fd28 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ ```sh git clone git@github.com:dima117/shri-testing-homework.git -cd shri-testing-homework.git +cd shri-testing-homework npm i npm start ``` From ac8b1946ecbcdec188a0c67c5187cd9884c0e56c Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Sun, 21 Oct 2018 00:03:04 +0300 Subject: [PATCH 03/18] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D1=8B=20nodemon,=20mocha=20=D0=B8=20chai,=20nyc?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 5 +- package-lock.json | 2834 ++++++++++++++++++++++++++++++++++----------- package.json | 12 +- 3 files changed, 2161 insertions(+), 690 deletions(-) diff --git a/.gitignore b/.gitignore index 7ff3ebd..b5809f6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,6 @@ .idea/ -node_modules \ No newline at end of file +node_modules + +.nyc_output/ +coverage/ \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index bbf3076..9915248 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4,6 +4,130 @@ "lockfileVersion": 1, "requires": true, "dependencies": { + "@babel/code-frame": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", + "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/generator": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.1.3.tgz", + "integrity": "sha512-ZoCZGcfIJFJuZBqxcY9OjC1KW2lWK64qrX1o4UYL3yshVhwKFYgzpWZ0vvtGMNJdTlvkw0W+HR1VnYN8q3QPFQ==", + "dev": true, + "requires": { + "@babel/types": "^7.1.3", + "jsesc": "^2.5.1", + "lodash": "^4.17.10", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + } + }, + "@babel/helper-function-name": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", + "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", + "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", + "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/highlight": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", + "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.1.3.tgz", + "integrity": "sha512-gqmspPZOMW3MIRb9HlrnbZHXI1/KHTOroBwN1NcLL6pWxzqzEKGvRTq0W/PxS45OtQGbaFikSQpkS5zbnsQm2w==", + "dev": true + }, + "@babel/template": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.1.2.tgz", + "integrity": "sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.1.2", + "@babel/types": "^7.1.2" + } + }, + "@babel/traverse": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.1.4.tgz", + "integrity": "sha512-my9mdrAIGdDiSVBuMjpn/oXYpva0/EZwWL3sm3Wcy/AVWO2eXnsoZruOT9jOGNRXU8KbCIu5zsKnXcAJ6PcV6Q==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.1.3", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.0.0", + "@babel/parser": "^7.1.3", + "@babel/types": "^7.1.3", + "debug": "^3.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.10" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.1.3.tgz", + "integrity": "sha512-RpPOVfK+yatXyn8n4PB1NW6k9qjinrXrRR8ugBN8fD6hCy5RXI6PSbVqpOJBO9oSaY7Nom4ohj35feb0UR9hSA==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.10", + "to-fast-properties": "^2.0.0" + } + }, "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", @@ -15,7 +139,7 @@ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", "requires": { - "mime-types": "2.1.20", + "mime-types": "~2.1.18", "negotiator": "0.6.1" } }, @@ -25,7 +149,7 @@ "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", "dev": true, "requires": { - "es6-promisify": "5.0.0" + "es6-promisify": "^5.0.0" } }, "align-text": { @@ -33,9 +157,9 @@ "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", "requires": { - "kind-of": "3.2.2", - "longest": "1.0.1", - "repeat-string": "1.6.1" + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" }, "dependencies": { "kind-of": { @@ -43,7 +167,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -59,7 +183,7 @@ "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", "dev": true, "requires": { - "string-width": "2.1.1" + "string-width": "^2.0.0" } }, "ansi-regex": { @@ -74,7 +198,7 @@ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { - "color-convert": "1.9.3" + "color-convert": "^1.9.0" } }, "anymatch": { @@ -83,8 +207,8 @@ "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", "dev": true, "requires": { - "micromatch": "3.1.10", - "normalize-path": "2.1.1" + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" } }, "arch": { @@ -122,6 +246,12 @@ "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", "dev": true }, + "assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "dev": true + }, "assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", @@ -163,13 +293,13 @@ "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", "dev": true, "requires": { - "cache-base": "1.0.1", - "class-utils": "0.3.6", - "component-emitter": "1.2.1", - "define-property": "1.0.0", - "isobject": "3.0.1", - "mixin-deep": "1.3.1", - "pascalcase": "0.1.1" + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" }, "dependencies": { "define-property": { @@ -178,7 +308,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "is-accessor-descriptor": { @@ -187,7 +317,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -196,7 +326,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -205,9 +335,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } } } @@ -231,8 +361,8 @@ "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", "dev": true, "requires": { - "readable-stream": "2.3.6", - "safe-buffer": "5.1.2" + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" } }, "body-parser": { @@ -241,15 +371,15 @@ "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", "requires": { "bytes": "3.0.0", - "content-type": "1.0.4", + "content-type": "~1.0.4", "debug": "2.6.9", - "depd": "1.1.2", - "http-errors": "1.6.3", + "depd": "~1.1.2", + "http-errors": "~1.6.3", "iconv-lite": "0.4.23", - "on-finished": "2.3.0", + "on-finished": "~2.3.0", "qs": "6.5.2", "raw-body": "2.3.3", - "type-is": "1.6.16" + "type-is": "~1.6.16" } }, "boxen": { @@ -258,13 +388,13 @@ "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", "dev": true, "requires": { - "ansi-align": "2.0.0", - "camelcase": "4.1.0", - "chalk": "2.4.1", - "cli-boxes": "1.0.0", - "string-width": "2.1.1", - "term-size": "1.2.0", - "widest-line": "2.0.0" + "ansi-align": "^2.0.0", + "camelcase": "^4.0.0", + "chalk": "^2.0.1", + "cli-boxes": "^1.0.0", + "string-width": "^2.0.0", + "term-size": "^1.2.0", + "widest-line": "^2.0.0" } }, "brace-expansion": { @@ -273,7 +403,7 @@ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "requires": { - "balanced-match": "1.0.0", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, @@ -283,16 +413,16 @@ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "extend-shallow": "2.0.1", - "fill-range": "4.0.0", - "isobject": "3.0.1", - "repeat-element": "1.1.3", - "snapdragon": "0.8.2", - "snapdragon-node": "2.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "dependencies": { "extend-shallow": { @@ -301,11 +431,17 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } }, + "browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true + }, "buffer": { "version": "3.6.0", "resolved": "http://registry.npmjs.org/buffer/-/buffer-3.6.0.tgz", @@ -314,8 +450,8 @@ "optional": true, "requires": { "base64-js": "0.0.8", - "ieee754": "1.1.12", - "isarray": "1.0.0" + "ieee754": "^1.1.4", + "isarray": "^1.0.0" } }, "buffer-alloc": { @@ -324,8 +460,8 @@ "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", "dev": true, "requires": { - "buffer-alloc-unsafe": "1.1.0", - "buffer-fill": "1.0.0" + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" } }, "buffer-alloc-unsafe": { @@ -364,15 +500,15 @@ "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", "dev": true, "requires": { - "collection-visit": "1.0.0", - "component-emitter": "1.2.1", - "get-value": "2.0.6", - "has-value": "1.0.0", - "isobject": "3.0.1", - "set-value": "2.0.0", - "to-object-path": "0.3.0", - "union-value": "1.0.0", - "unset-value": "1.0.0" + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" } }, "camelcase": { @@ -393,8 +529,22 @@ "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", "optional": true, "requires": { - "align-text": "0.1.4", - "lazy-cache": "1.0.4" + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" + } + }, + "chai": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", + "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", + "dev": true, + "requires": { + "assertion-error": "^1.1.0", + "check-error": "^1.0.2", + "deep-eql": "^3.0.1", + "get-func-name": "^2.0.0", + "pathval": "^1.1.0", + "type-detect": "^4.0.5" } }, "chalk": { @@ -403,30 +553,36 @@ "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", "dev": true, "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.5.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, + "check-error": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", + "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", + "dev": true + }, "chokidar": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz", "integrity": "sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ==", "dev": true, "requires": { - "anymatch": "2.0.0", - "async-each": "1.0.1", - "braces": "2.3.2", - "fsevents": "1.2.4", - "glob-parent": "3.1.0", - "inherits": "2.0.3", - "is-binary-path": "1.0.1", - "is-glob": "4.0.0", - "lodash.debounce": "4.0.8", - "normalize-path": "2.1.1", - "path-is-absolute": "1.0.1", - "readdirp": "2.2.1", - "upath": "1.1.0" + "anymatch": "^2.0.0", + "async-each": "^1.0.0", + "braces": "^2.3.0", + "fsevents": "^1.2.2", + "glob-parent": "^3.1.0", + "inherits": "^2.0.1", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "lodash.debounce": "^4.0.8", + "normalize-path": "^2.1.1", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.0.0", + "upath": "^1.0.5" } }, "ci-info": { @@ -441,10 +597,10 @@ "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", "dev": true, "requires": { - "arr-union": "3.1.0", - "define-property": "0.2.5", - "isobject": "3.0.1", - "static-extend": "0.1.2" + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" }, "dependencies": { "define-property": { @@ -453,7 +609,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } } } @@ -470,8 +626,8 @@ "integrity": "sha512-2WNImOvCRe6r63Gk9pShfkwXsVtKCroMAevIbiae021mS850UkWPbevxsBz3tnvjZIEGvlwaqCPsw+4ulzNgJA==", "dev": true, "requires": { - "arch": "2.1.1", - "execa": "0.8.0" + "arch": "^2.1.0", + "execa": "^0.8.0" }, "dependencies": { "execa": { @@ -480,13 +636,13 @@ "integrity": "sha1-2NdrvBtVIX7RkP1t1J08d07PyNo=", "dev": true, "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" } } } @@ -497,8 +653,8 @@ "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", "optional": true, "requires": { - "center-align": "0.1.3", - "right-align": "0.1.3", + "center-align": "^0.1.1", + "right-align": "^0.1.1", "wordwrap": "0.0.2" }, "dependencies": { @@ -516,8 +672,8 @@ "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", "dev": true, "requires": { - "map-visit": "1.0.0", - "object-visit": "1.0.1" + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" } }, "color-convert": { @@ -542,7 +698,7 @@ "dev": true, "optional": true, "requires": { - "graceful-readlink": "1.0.1" + "graceful-readlink": ">= 1.0.0" } }, "component-emitter": { @@ -563,10 +719,10 @@ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "dev": true, "requires": { - "buffer-from": "1.1.1", - "inherits": "2.0.3", - "readable-stream": "2.3.6", - "typedarray": "0.0.6" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, "configstore": { @@ -575,12 +731,12 @@ "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", "dev": true, "requires": { - "dot-prop": "4.2.0", - "graceful-fs": "4.1.11", - "make-dir": "1.3.0", - "unique-string": "1.0.0", - "write-file-atomic": "2.3.0", - "xdg-basedir": "3.0.0" + "dot-prop": "^4.1.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "unique-string": "^1.0.0", + "write-file-atomic": "^2.0.0", + "xdg-basedir": "^3.0.0" } }, "content-disposition": { @@ -621,7 +777,7 @@ "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", "dev": true, "requires": { - "capture-stack-trace": "1.0.1" + "capture-stack-trace": "^1.0.0" } }, "cross-spawn": { @@ -630,9 +786,9 @@ "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", "dev": true, "requires": { - "lru-cache": "4.1.3", - "shebang-command": "1.2.0", - "which": "1.3.1" + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } }, "crypto-random-string": { @@ -668,14 +824,14 @@ "dev": true, "optional": true, "requires": { - "decompress-tar": "4.1.1", - "decompress-tarbz2": "4.1.1", - "decompress-targz": "4.1.1", - "decompress-unzip": "4.0.1", - "graceful-fs": "4.1.11", - "make-dir": "1.3.0", - "pify": "2.3.0", - "strip-dirs": "2.1.0" + "decompress-tar": "^4.0.0", + "decompress-tarbz2": "^4.0.0", + "decompress-targz": "^4.0.0", + "decompress-unzip": "^4.0.1", + "graceful-fs": "^4.1.10", + "make-dir": "^1.0.0", + "pify": "^2.3.0", + "strip-dirs": "^2.0.0" }, "dependencies": { "pify": { @@ -693,9 +849,9 @@ "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", "dev": true, "requires": { - "file-type": "5.2.0", - "is-stream": "1.1.0", - "tar-stream": "1.6.2" + "file-type": "^5.2.0", + "is-stream": "^1.1.0", + "tar-stream": "^1.5.2" } }, "decompress-tarbz2": { @@ -705,11 +861,11 @@ "dev": true, "optional": true, "requires": { - "decompress-tar": "4.1.1", - "file-type": "6.2.0", - "is-stream": "1.1.0", - "seek-bzip": "1.0.5", - "unbzip2-stream": "1.3.1" + "decompress-tar": "^4.1.0", + "file-type": "^6.1.0", + "is-stream": "^1.1.0", + "seek-bzip": "^1.0.5", + "unbzip2-stream": "^1.0.9" }, "dependencies": { "file-type": { @@ -727,9 +883,9 @@ "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", "dev": true, "requires": { - "decompress-tar": "4.1.1", - "file-type": "5.2.0", - "is-stream": "1.1.0" + "decompress-tar": "^4.1.1", + "file-type": "^5.2.0", + "is-stream": "^1.1.0" } }, "decompress-unzip": { @@ -739,10 +895,10 @@ "dev": true, "optional": true, "requires": { - "file-type": "3.9.0", - "get-stream": "2.3.1", - "pify": "2.3.0", - "yauzl": "2.10.0" + "file-type": "^3.8.0", + "get-stream": "^2.2.0", + "pify": "^2.3.0", + "yauzl": "^2.4.2" }, "dependencies": { "file-type": { @@ -759,8 +915,8 @@ "dev": true, "optional": true, "requires": { - "object-assign": "4.1.1", - "pinkie-promise": "2.0.1" + "object-assign": "^4.0.1", + "pinkie-promise": "^2.0.0" } }, "pify": { @@ -772,6 +928,15 @@ } } }, + "deep-eql": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", + "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", + "dev": true, + "requires": { + "type-detect": "^4.0.0" + } + }, "deep-extend": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", @@ -784,8 +949,8 @@ "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, "requires": { - "is-descriptor": "1.0.2", - "isobject": "3.0.1" + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" }, "dependencies": { "is-accessor-descriptor": { @@ -794,7 +959,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -803,7 +968,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -812,9 +977,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } } } @@ -829,13 +994,19 @@ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, "dot-prop": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", "dev": true, "requires": { - "is-obj": "1.0.1" + "is-obj": "^1.0.0" } }, "duplexer": { @@ -866,7 +1037,7 @@ "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", "dev": true, "requires": { - "once": "1.4.0" + "once": "^1.4.0" } }, "es6-promise": { @@ -881,7 +1052,7 @@ "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", "dev": true, "requires": { - "es6-promise": "4.2.5" + "es6-promise": "^4.0.3" } }, "escape-html": { @@ -895,6 +1066,12 @@ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, "etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", @@ -906,14 +1083,14 @@ "integrity": "sha512-dGXNg4F/FgVzlApjzItL+7naHutA3fDqbV/zAZqDDlXTjiMnQmZKu+prImWKszeBM5UQeGvAl3u1wBiKeDh61g==", "dev": true, "requires": { - "duplexer": "0.1.1", - "flatmap-stream": "0.1.1", - "from": "0.1.7", + "duplexer": "^0.1.1", + "flatmap-stream": "^0.1.0", + "from": "^0.1.7", "map-stream": "0.0.7", - "pause-stream": "0.0.11", - "split": "1.0.1", - "stream-combiner": "0.2.2", - "through": "2.3.8" + "pause-stream": "^0.0.11", + "split": "^1.0.1", + "stream-combiner": "^0.2.2", + "through": "^2.3.8" } }, "execa": { @@ -922,13 +1099,13 @@ "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", "dev": true, "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" } }, "expand-brackets": { @@ -937,13 +1114,13 @@ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "dev": true, "requires": { - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "posix-character-classes": "0.1.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -952,7 +1129,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -961,7 +1138,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -971,36 +1148,36 @@ "resolved": "https://registry.npmjs.org/express/-/express-4.16.4.tgz", "integrity": "sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==", "requires": { - "accepts": "1.3.5", + "accepts": "~1.3.5", "array-flatten": "1.1.1", "body-parser": "1.18.3", "content-disposition": "0.5.2", - "content-type": "1.0.4", + "content-type": "~1.0.4", "cookie": "0.3.1", "cookie-signature": "1.0.6", "debug": "2.6.9", - "depd": "1.1.2", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "etag": "1.8.1", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", "finalhandler": "1.1.1", "fresh": "0.5.2", "merge-descriptors": "1.0.1", - "methods": "1.1.2", - "on-finished": "2.3.0", - "parseurl": "1.3.2", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", "path-to-regexp": "0.1.7", - "proxy-addr": "2.0.4", + "proxy-addr": "~2.0.4", "qs": "6.5.2", - "range-parser": "1.2.0", + "range-parser": "~1.2.0", "safe-buffer": "5.1.2", "send": "0.16.2", "serve-static": "1.13.2", "setprototypeof": "1.1.0", - "statuses": "1.4.0", - "type-is": "1.6.16", + "statuses": "~1.4.0", + "type-is": "~1.6.16", "utils-merge": "1.0.1", - "vary": "1.1.2" + "vary": "~1.1.2" } }, "extend-shallow": { @@ -1009,8 +1186,8 @@ "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, "requires": { - "assign-symbols": "1.0.0", - "is-extendable": "1.0.1" + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" }, "dependencies": { "is-extendable": { @@ -1019,7 +1196,7 @@ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, "requires": { - "is-plain-object": "2.0.4" + "is-plain-object": "^2.0.4" } } } @@ -1030,14 +1207,14 @@ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "dev": true, "requires": { - "array-unique": "0.3.2", - "define-property": "1.0.0", - "expand-brackets": "2.1.4", - "extend-shallow": "2.0.1", - "fragment-cache": "0.2.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -1046,7 +1223,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "extend-shallow": { @@ -1055,7 +1232,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "is-accessor-descriptor": { @@ -1064,7 +1241,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -1073,7 +1250,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -1082,9 +1259,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } } } @@ -1107,7 +1284,7 @@ "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", "dev": true, "requires": { - "pend": "1.2.0" + "pend": "~1.2.0" } }, "yauzl": { @@ -1116,7 +1293,7 @@ "integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=", "dev": true, "requires": { - "fd-slicer": "1.0.1" + "fd-slicer": "~1.0.1" } } } @@ -1128,7 +1305,7 @@ "dev": true, "optional": true, "requires": { - "pend": "1.2.0" + "pend": "~1.2.0" } }, "file-type": { @@ -1143,10 +1320,10 @@ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "dependencies": { "extend-shallow": { @@ -1155,7 +1332,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -1166,12 +1343,12 @@ "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", "requires": { "debug": "2.6.9", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "on-finished": "2.3.0", - "parseurl": "1.3.2", - "statuses": "1.4.0", - "unpipe": "1.0.0" + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.4.0", + "unpipe": "~1.0.0" } }, "flatmap-stream": { @@ -1202,7 +1379,7 @@ "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", "dev": true, "requires": { - "map-cache": "0.2.2" + "map-cache": "^0.2.2" } }, "fresh": { @@ -1241,8 +1418,8 @@ "dev": true, "optional": true, "requires": { - "nan": "2.11.1", - "node-pre-gyp": "0.10.0" + "nan": "^2.9.2", + "node-pre-gyp": "^0.10.0" }, "dependencies": { "abbrev": { @@ -1268,8 +1445,8 @@ "dev": true, "optional": true, "requires": { - "delegates": "1.0.0", - "readable-stream": "2.3.6" + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" } }, "balanced-match": { @@ -1282,7 +1459,7 @@ "bundled": true, "dev": true, "requires": { - "balanced-match": "1.0.0", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, @@ -1346,7 +1523,7 @@ "dev": true, "optional": true, "requires": { - "minipass": "2.2.4" + "minipass": "^2.2.1" } }, "fs.realpath": { @@ -1361,14 +1538,14 @@ "dev": true, "optional": true, "requires": { - "aproba": "1.2.0", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" } }, "glob": { @@ -1377,12 +1554,12 @@ "dev": true, "optional": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "has-unicode": { @@ -1397,7 +1574,7 @@ "dev": true, "optional": true, "requires": { - "safer-buffer": "2.1.2" + "safer-buffer": "^2.1.0" } }, "ignore-walk": { @@ -1406,7 +1583,7 @@ "dev": true, "optional": true, "requires": { - "minimatch": "3.0.4" + "minimatch": "^3.0.4" } }, "inflight": { @@ -1415,8 +1592,8 @@ "dev": true, "optional": true, "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { @@ -1435,7 +1612,7 @@ "bundled": true, "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "isarray": { @@ -1449,7 +1626,7 @@ "bundled": true, "dev": true, "requires": { - "brace-expansion": "1.1.11" + "brace-expansion": "^1.1.7" } }, "minimist": { @@ -1462,8 +1639,8 @@ "bundled": true, "dev": true, "requires": { - "safe-buffer": "5.1.1", - "yallist": "3.0.2" + "safe-buffer": "^5.1.1", + "yallist": "^3.0.0" } }, "minizlib": { @@ -1472,7 +1649,7 @@ "dev": true, "optional": true, "requires": { - "minipass": "2.2.4" + "minipass": "^2.2.1" } }, "mkdirp": { @@ -1495,9 +1672,9 @@ "dev": true, "optional": true, "requires": { - "debug": "2.6.9", - "iconv-lite": "0.4.21", - "sax": "1.2.4" + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" } }, "node-pre-gyp": { @@ -1506,16 +1683,16 @@ "dev": true, "optional": true, "requires": { - "detect-libc": "1.0.3", - "mkdirp": "0.5.1", - "needle": "2.2.0", - "nopt": "4.0.1", - "npm-packlist": "1.1.10", - "npmlog": "4.1.2", - "rc": "1.2.7", - "rimraf": "2.6.2", - "semver": "5.5.0", - "tar": "4.4.1" + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.0", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.1.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" } }, "nopt": { @@ -1524,8 +1701,8 @@ "dev": true, "optional": true, "requires": { - "abbrev": "1.1.1", - "osenv": "0.1.5" + "abbrev": "1", + "osenv": "^0.1.4" } }, "npm-bundled": { @@ -1540,8 +1717,8 @@ "dev": true, "optional": true, "requires": { - "ignore-walk": "3.0.1", - "npm-bundled": "1.0.3" + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" } }, "npmlog": { @@ -1550,10 +1727,10 @@ "dev": true, "optional": true, "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" } }, "number-is-nan": { @@ -1572,7 +1749,7 @@ "bundled": true, "dev": true, "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "os-homedir": { @@ -1593,8 +1770,8 @@ "dev": true, "optional": true, "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" } }, "path-is-absolute": { @@ -1615,10 +1792,10 @@ "dev": true, "optional": true, "requires": { - "deep-extend": "0.5.1", - "ini": "1.3.5", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" + "deep-extend": "^0.5.1", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" }, "dependencies": { "minimist": { @@ -1635,13 +1812,13 @@ "dev": true, "optional": true, "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "2.0.0", - "safe-buffer": "5.1.1", - "string_decoder": "1.1.1", - "util-deprecate": "1.0.2" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, "rimraf": { @@ -1650,7 +1827,7 @@ "dev": true, "optional": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } }, "safe-buffer": { @@ -1693,9 +1870,9 @@ "bundled": true, "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "string_decoder": { @@ -1704,7 +1881,7 @@ "dev": true, "optional": true, "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "~5.1.0" } }, "strip-ansi": { @@ -1712,7 +1889,7 @@ "bundled": true, "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "strip-json-comments": { @@ -1727,13 +1904,13 @@ "dev": true, "optional": true, "requires": { - "chownr": "1.0.1", - "fs-minipass": "1.2.5", - "minipass": "2.2.4", - "minizlib": "1.1.0", - "mkdirp": "0.5.1", - "safe-buffer": "5.1.1", - "yallist": "3.0.2" + "chownr": "^1.0.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.2.4", + "minizlib": "^1.1.0", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.1", + "yallist": "^3.0.2" } }, "util-deprecate": { @@ -1748,7 +1925,7 @@ "dev": true, "optional": true, "requires": { - "string-width": "1.0.2" + "string-width": "^1.0.2" } }, "wrappy": { @@ -1763,6 +1940,12 @@ } } }, + "get-func-name": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", + "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", + "dev": true + }, "get-stream": { "version": "3.0.0", "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", @@ -1781,12 +1964,12 @@ "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "glob-parent": { @@ -1795,8 +1978,8 @@ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", "dev": true, "requires": { - "is-glob": "3.1.0", - "path-dirname": "1.0.2" + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" }, "dependencies": { "is-glob": { @@ -1805,7 +1988,7 @@ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", "dev": true, "requires": { - "is-extglob": "2.1.1" + "is-extglob": "^2.1.0" } } } @@ -1816,26 +1999,32 @@ "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", "dev": true, "requires": { - "ini": "1.3.5" + "ini": "^1.3.4" } }, + "globals": { + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.8.0.tgz", + "integrity": "sha512-io6LkyPVuzCHBSQV9fmOwxZkUk6nIaGmxheLDgmuFv89j0fm2aqDbIXKAGfzCMHqz3HLF2Zf8WSG6VqMh2qFmA==", + "dev": true + }, "got": { "version": "6.7.1", "resolved": "http://registry.npmjs.org/got/-/got-6.7.1.tgz", "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", "dev": true, "requires": { - "create-error-class": "3.0.2", - "duplexer3": "0.1.4", - "get-stream": "3.0.0", - "is-redirect": "1.0.0", - "is-retry-allowed": "1.1.0", - "is-stream": "1.1.0", - "lowercase-keys": "1.0.1", - "safe-buffer": "5.1.2", - "timed-out": "4.0.1", - "unzip-response": "2.0.1", - "url-parse-lax": "1.0.0" + "create-error-class": "^3.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-redirect": "^1.0.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "lowercase-keys": "^1.0.0", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "unzip-response": "^2.0.1", + "url-parse-lax": "^1.0.0" } }, "graceful-fs": { @@ -1851,15 +2040,21 @@ "dev": true, "optional": true }, + "growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, "handlebars": { "version": "4.0.5", "resolved": "http://registry.npmjs.org/handlebars/-/handlebars-4.0.5.tgz", "integrity": "sha1-ksbta7FkEQxQ1NjQ+93HCAbG+Oc=", "requires": { - "async": "1.5.2", - "optimist": "0.6.1", - "source-map": "0.4.4", - "uglify-js": "2.8.29" + "async": "^1.4.0", + "optimist": "^0.6.1", + "source-map": "^0.4.4", + "uglify-js": "^2.6" }, "dependencies": { "source-map": { @@ -1867,7 +2062,7 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", "requires": { - "amdefine": "1.0.1" + "amdefine": ">=0.0.4" } } } @@ -1884,9 +2079,9 @@ "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", "dev": true, "requires": { - "get-value": "2.0.6", - "has-values": "1.0.0", - "isobject": "3.0.1" + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" } }, "has-values": { @@ -1895,8 +2090,8 @@ "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", "dev": true, "requires": { - "is-number": "3.0.0", - "kind-of": "4.0.0" + "is-number": "^3.0.0", + "kind-of": "^4.0.0" }, "dependencies": { "kind-of": { @@ -1905,7 +2100,7 @@ "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -1919,15 +2114,21 @@ "walk": "2.3.9" } }, + "he": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", + "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", + "dev": true + }, "http-errors": { "version": "1.6.3", "resolved": "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", "requires": { - "depd": "1.1.2", + "depd": "~1.1.2", "inherits": "2.0.3", "setprototypeof": "1.1.0", - "statuses": "1.4.0" + "statuses": ">= 1.4.0 < 2" } }, "https-proxy-agent": { @@ -1936,8 +2137,8 @@ "integrity": "sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==", "dev": true, "requires": { - "agent-base": "4.2.1", - "debug": "3.2.6" + "agent-base": "^4.1.0", + "debug": "^3.1.0" }, "dependencies": { "debug": { @@ -1946,7 +2147,7 @@ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.1.1" + "ms": "^2.1.1" } }, "ms": { @@ -1962,7 +2163,7 @@ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", "requires": { - "safer-buffer": "2.1.2" + "safer-buffer": ">= 2.1.2 < 3" } }, "ieee754": { @@ -1996,8 +2197,8 @@ "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { @@ -2022,7 +2223,7 @@ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -2031,7 +2232,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -2042,7 +2243,7 @@ "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", "dev": true, "requires": { - "binary-extensions": "1.12.0" + "binary-extensions": "^1.0.0" } }, "is-buffer": { @@ -2056,7 +2257,7 @@ "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==", "dev": true, "requires": { - "ci-info": "1.6.0" + "ci-info": "^1.5.0" } }, "is-data-descriptor": { @@ -2065,7 +2266,7 @@ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -2074,7 +2275,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -2085,9 +2286,9 @@ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" }, "dependencies": { "kind-of": { @@ -2122,7 +2323,7 @@ "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", "dev": true, "requires": { - "is-extglob": "2.1.1" + "is-extglob": "^2.1.1" } }, "is-installed-globally": { @@ -2131,8 +2332,8 @@ "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", "dev": true, "requires": { - "global-dirs": "0.1.1", - "is-path-inside": "1.0.1" + "global-dirs": "^0.1.0", + "is-path-inside": "^1.0.0" } }, "is-natural-number": { @@ -2154,7 +2355,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -2163,7 +2364,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -2180,7 +2381,7 @@ "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", "dev": true, "requires": { - "path-is-inside": "1.0.2" + "path-is-inside": "^1.0.1" } }, "is-plain-object": { @@ -2189,7 +2390,7 @@ "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.1" } }, "is-redirect": { @@ -2234,7 +2435,7 @@ "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==", "dev": true, "requires": { - "buffer-alloc": "1.2.0" + "buffer-alloc": "^1.2.0" } }, "isexe": { @@ -2249,6 +2450,39 @@ "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", "dev": true }, + "istanbul-lib-coverage": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", + "integrity": "sha512-nPvSZsVlbG9aLhZYaC3Oi1gT/tpyo3Yt5fNyf6NmcKIayz4VV/txxJFFKAK/gU4dcNn8ehsanBbVHVl0+amOLA==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.0.0.tgz", + "integrity": "sha512-eQY9vN9elYjdgN9Iv6NS/00bptm02EBBk70lRMaVjeA6QYocQgenVrSgC28TJurdnZa80AGO3ASdFN+w/njGiQ==", + "dev": true, + "requires": { + "@babel/generator": "^7.0.0", + "@babel/parser": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0", + "istanbul-lib-coverage": "^2.0.1", + "semver": "^5.5.0" + } + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "jsesc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", + "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", + "dev": true + }, "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", @@ -2261,7 +2495,7 @@ "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", "dev": true, "requires": { - "package-json": "4.0.1" + "package-json": "^4.0.0" } }, "lazy-cache": { @@ -2270,6 +2504,12 @@ "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", "optional": true }, + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true + }, "lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -2293,8 +2533,8 @@ "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", "dev": true, "requires": { - "pseudomap": "1.0.2", - "yallist": "2.1.2" + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, "make-dir": { @@ -2303,7 +2543,7 @@ "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", "dev": true, "requires": { - "pify": "3.0.0" + "pify": "^3.0.0" } }, "map-cache": { @@ -2324,7 +2564,7 @@ "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", "dev": true, "requires": { - "object-visit": "1.0.1" + "object-visit": "^1.0.0" } }, "media-typer": { @@ -2348,19 +2588,19 @@ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "braces": "2.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "extglob": "2.0.4", - "fragment-cache": "0.2.1", - "kind-of": "6.0.2", - "nanomatch": "1.2.13", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" } }, "mime": { @@ -2378,7 +2618,7 @@ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.20.tgz", "integrity": "sha512-HrkrPaP9vGuWbLK1B1FfgAkbqNjIuy4eHlIYnFi7kamZyLLrGlo2mpcx0bBmNpKqBtYtAfGbodDddIgddSJC2A==", "requires": { - "mime-db": "1.36.0" + "mime-db": "~1.36.0" } }, "minimatch": { @@ -2387,7 +2627,7 @@ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, "requires": { - "brace-expansion": "1.1.11" + "brace-expansion": "^1.1.7" } }, "minimist": { @@ -2402,8 +2642,8 @@ "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", "dev": true, "requires": { - "for-in": "1.0.2", - "is-extendable": "1.0.1" + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" }, "dependencies": { "is-extendable": { @@ -2412,7 +2652,7 @@ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, "requires": { - "is-plain-object": "2.0.4" + "is-plain-object": "^2.0.4" } } } @@ -2434,6 +2674,65 @@ } } }, + "mocha": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.2.0.tgz", + "integrity": "sha512-2IUgKDhc3J7Uug+FxMXuqIyYzH7gJjXECKe/w43IGgQHTSj3InJi+yAA7T24L9bQMRKiUEHxEX37G5JpVUGLcQ==", + "dev": true, + "requires": { + "browser-stdout": "1.3.1", + "commander": "2.15.1", + "debug": "3.1.0", + "diff": "3.5.0", + "escape-string-regexp": "1.0.5", + "glob": "7.1.2", + "growl": "1.10.5", + "he": "1.1.1", + "minimatch": "3.0.4", + "mkdirp": "0.5.1", + "supports-color": "5.4.0" + }, + "dependencies": { + "commander": { + "version": "2.15.1", + "resolved": "http://registry.npmjs.org/commander/-/commander-2.15.1.tgz", + "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==", + "dev": true + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "supports-color": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", + "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", @@ -2452,17 +2751,17 @@ "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "fragment-cache": "0.2.1", - "is-windows": "1.0.2", - "kind-of": "6.0.2", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" } }, "ndb": { @@ -2471,18 +2770,18 @@ "integrity": "sha512-W3pXOa/TAwHkapwkUN7JZ0B3qAKWcUkhpeTcYRtreqyGhzEqwsIR1ju8adrnN0lq62SKep3+y1XiNOf4F+xC1g==", "dev": true, "requires": { - "chokidar": "2.0.4", - "clipboardy": "1.2.3", - "fs-copy-file-sync": "1.1.1", - "isbinaryfile": "3.0.3", - "mime": "2.3.1", - "ndb-node-pty-prebuilt": "0.8.0", - "opn": "5.4.0", + "chokidar": "^2.0.4", + "clipboardy": "^1.2.3", + "fs-copy-file-sync": "^1.1.1", + "isbinaryfile": "^3.0.3", + "mime": "^2.3.1", + "ndb-node-pty-prebuilt": "^0.8.0", + "opn": "^5.3.0", "puppeteer": "1.7.0", - "rimraf": "2.6.2", - "update-notifier": "2.5.0", - "ws": "6.1.0", - "xterm": "3.8.0" + "rimraf": "^2.6.2", + "update-notifier": "^2.5.0", + "ws": "^6.0.0", + "xterm": "^3.7.0" }, "dependencies": { "mime": { @@ -2500,8 +2799,8 @@ "dev": true, "optional": true, "requires": { - "decompress": "4.2.0", - "decompress-targz": "4.1.1", + "decompress": "^4.2.0", + "decompress-targz": "^4.1.1", "nan": "2.10.0" }, "dependencies": { @@ -2525,16 +2824,16 @@ "integrity": "sha512-hyK6vl65IPnky/ee+D3IWvVGgJa/m3No2/Xc/3wanS6Ce1MWjCzH6NnhPJ/vZM+6JFym16jtHx51lmCMB9HDtg==", "dev": true, "requires": { - "chokidar": "2.0.4", - "debug": "3.2.6", - "ignore-by-default": "1.0.1", - "minimatch": "3.0.4", - "pstree.remy": "1.1.0", - "semver": "5.6.0", - "supports-color": "5.5.0", - "touch": "3.1.0", - "undefsafe": "2.0.2", - "update-notifier": "2.5.0" + "chokidar": "^2.0.2", + "debug": "^3.1.0", + "ignore-by-default": "^1.0.1", + "minimatch": "^3.0.4", + "pstree.remy": "^1.1.0", + "semver": "^5.5.0", + "supports-color": "^5.2.0", + "touch": "^3.1.0", + "undefsafe": "^2.0.2", + "update-notifier": "^2.3.0" }, "dependencies": { "debug": { @@ -2543,7 +2842,7 @@ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.1.1" + "ms": "^2.1.1" } }, "ms": { @@ -2560,7 +2859,7 @@ "integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=", "dev": true, "requires": { - "abbrev": "1.1.1" + "abbrev": "1" } }, "normalize-path": { @@ -2569,7 +2868,7 @@ "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", "dev": true, "requires": { - "remove-trailing-separator": "1.1.0" + "remove-trailing-separator": "^1.0.1" } }, "npm-run-path": { @@ -2578,130 +2877,1269 @@ "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", "dev": true, "requires": { - "path-key": "2.0.1" - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, - "requires": { - "copy-descriptor": "0.1.1", - "define-property": "0.2.5", - "kind-of": "3.2.2" + "path-key": "^2.0.0" + } + }, + "nyc": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-13.1.0.tgz", + "integrity": "sha512-3GyY6TpQ58z9Frpv4GMExE1SV2tAgYqC7HSy2omEhNiCT3mhT9NyiOvIE8zkbuJVFzmvvNTnE4h/7/wQae7xLg==", + "dev": true, + "requires": { + "archy": "^1.0.0", + "arrify": "^1.0.1", + "caching-transform": "^2.0.0", + "convert-source-map": "^1.6.0", + "debug-log": "^1.0.1", + "find-cache-dir": "^2.0.0", + "find-up": "^3.0.0", + "foreground-child": "^1.5.6", + "glob": "^7.1.3", + "istanbul-lib-coverage": "^2.0.1", + "istanbul-lib-hook": "^2.0.1", + "istanbul-lib-instrument": "^3.0.0", + "istanbul-lib-report": "^2.0.2", + "istanbul-lib-source-maps": "^2.0.1", + "istanbul-reports": "^2.0.1", + "make-dir": "^1.3.0", + "merge-source-map": "^1.1.0", + "resolve-from": "^4.0.0", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.2", + "spawn-wrap": "^1.4.2", + "test-exclude": "^5.0.0", + "uuid": "^3.3.2", + "yargs": "11.1.0", + "yargs-parser": "^9.0.2" }, "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "align-text": { + "version": "0.1.4", + "bundled": true, "dev": true, "requires": { - "is-descriptor": "0.1.6" + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" } }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "amdefine": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "ansi-regex": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "append-transform": { + "version": "1.0.0", + "bundled": true, "dev": true, "requires": { - "is-buffer": "1.1.6" + "default-require-extensions": "^2.0.0" } - } - } - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dev": true, - "requires": { - "isobject": "3.0.1" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dev": true, - "requires": { - "isobject": "3.0.1" - } - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "requires": { - "ee-first": "1.1.1" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1.0.2" - } - }, - "opn": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", - "integrity": "sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==", - "dev": true, - "requires": { - "is-wsl": "1.1.0" - } - }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "requires": { - "minimist": "0.0.10", - "wordwrap": "0.0.3" - }, - "dependencies": { - "minimist": { - "version": "0.0.10", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=" - } - } - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true - }, - "package-json": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", - "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", - "dev": true, - "requires": { - "got": "6.7.1", - "registry-auth-token": "3.3.2", - "registry-url": "3.1.0", - "semver": "5.6.0" - } - }, - "parseurl": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", - "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" - }, + }, + "archy": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "arrify": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "async": { + "version": "1.5.2", + "bundled": true, + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "builtin-modules": { + "version": "1.1.1", + "bundled": true, + "dev": true + }, + "caching-transform": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "make-dir": "^1.0.0", + "md5-hex": "^2.0.0", + "package-hash": "^2.0.0", + "write-file-atomic": "^2.0.0" + } + }, + "camelcase": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true + }, + "center-align": { + "version": "0.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" + } + }, + "cliui": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "center-align": "^0.1.1", + "right-align": "^0.1.1", + "wordwrap": "0.0.2" + }, + "dependencies": { + "wordwrap": { + "version": "0.0.2", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "commondir": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "convert-source-map": { + "version": "1.6.0", + "bundled": true, + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cross-spawn": { + "version": "4.0.2", + "bundled": true, + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "debug": { + "version": "3.1.0", + "bundled": true, + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "debug-log": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "decamelize": { + "version": "1.2.0", + "bundled": true, + "dev": true + }, + "default-require-extensions": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "strip-bom": "^3.0.0" + } + }, + "error-ex": { + "version": "1.3.2", + "bundled": true, + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es6-error": { + "version": "4.1.1", + "bundled": true, + "dev": true + }, + "execa": { + "version": "0.7.0", + "bundled": true, + "dev": true, + "requires": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "5.1.0", + "bundled": true, + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + } + } + }, + "find-cache-dir": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^3.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "foreground-child": { + "version": "1.5.6", + "bundled": true, + "dev": true, + "requires": { + "cross-spawn": "^4", + "signal-exit": "^3.0.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "get-caller-file": { + "version": "1.0.3", + "bundled": true, + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "glob": { + "version": "7.1.3", + "bundled": true, + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.11", + "bundled": true, + "dev": true + }, + "handlebars": { + "version": "4.0.11", + "bundled": true, + "dev": true, + "requires": { + "async": "^1.4.0", + "optimist": "^0.6.1", + "source-map": "^0.4.4", + "uglify-js": "^2.6" + }, + "dependencies": { + "source-map": { + "version": "0.4.4", + "bundled": true, + "dev": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "has-flag": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "hosted-git-info": { + "version": "2.7.1", + "bundled": true, + "dev": true + }, + "imurmurhash": { + "version": "0.1.4", + "bundled": true, + "dev": true + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "invert-kv": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "is-arrayish": { + "version": "0.2.1", + "bundled": true, + "dev": true + }, + "is-buffer": { + "version": "1.1.6", + "bundled": true, + "dev": true + }, + "is-builtin-module": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "builtin-modules": "^1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "isexe": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "istanbul-lib-coverage": { + "version": "2.0.1", + "bundled": true, + "dev": true + }, + "istanbul-lib-hook": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "append-transform": "^1.0.0" + } + }, + "istanbul-lib-report": { + "version": "2.0.2", + "bundled": true, + "dev": true, + "requires": { + "istanbul-lib-coverage": "^2.0.1", + "make-dir": "^1.3.0", + "supports-color": "^5.4.0" + } + }, + "istanbul-lib-source-maps": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "debug": "^3.1.0", + "istanbul-lib-coverage": "^2.0.1", + "make-dir": "^1.3.0", + "rimraf": "^2.6.2", + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "bundled": true, + "dev": true + } + } + }, + "istanbul-reports": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "handlebars": "^4.0.11" + } + }, + "json-parse-better-errors": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "kind-of": { + "version": "3.2.2", + "bundled": true, + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "lazy-cache": { + "version": "1.0.4", + "bundled": true, + "dev": true, + "optional": true + }, + "lcid": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, + "load-json-file": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash.flattendeep": { + "version": "4.4.0", + "bundled": true, + "dev": true + }, + "longest": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "lru-cache": { + "version": "4.1.3", + "bundled": true, + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "make-dir": { + "version": "1.3.0", + "bundled": true, + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "md5-hex": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "md5-o-matic": { + "version": "0.1.1", + "bundled": true, + "dev": true + }, + "mem": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "merge-source-map": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "requires": { + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "bundled": true, + "dev": true + } + } + }, + "mimic-fn": { + "version": "1.2.0", + "bundled": true, + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.10", + "bundled": true, + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true + } + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "normalize-package-data": { + "version": "2.4.0", + "bundled": true, + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "npm-run-path": { + "version": "2.0.2", + "bundled": true, + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "optimist": { + "version": "0.6.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "os-locale": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" + } + }, + "p-finally": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "p-limit": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "package-hash": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "lodash.flattendeep": "^4.4.0", + "md5-hex": "^2.0.0", + "release-zalgo": "^1.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "path-exists": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "path-key": { + "version": "2.0.1", + "bundled": true, + "dev": true + }, + "path-type": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "pseudomap": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "read-pkg": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + } + }, + "release-zalgo": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "es6-error": "^4.0.1" + } + }, + "repeat-string": { + "version": "1.6.1", + "bundled": true, + "dev": true + }, + "require-directory": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "resolve-from": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "right-align": { + "version": "0.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "align-text": "^0.1.1" + } + }, + "rimraf": { + "version": "2.6.2", + "bundled": true, + "dev": true, + "requires": { + "glob": "^7.0.5" + } + }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true, + "dev": true + }, + "semver": { + "version": "5.5.0", + "bundled": true, + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "shebang-command": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true + }, + "source-map": { + "version": "0.5.7", + "bundled": true, + "dev": true, + "optional": true + }, + "spawn-wrap": { + "version": "1.4.2", + "bundled": true, + "dev": true, + "requires": { + "foreground-child": "^1.5.6", + "mkdirp": "^0.5.0", + "os-homedir": "^1.0.1", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.2", + "which": "^1.3.0" + } + }, + "spdx-correct": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.1.0", + "bundled": true, + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "string-width": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "strip-eof": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "supports-color": { + "version": "5.4.0", + "bundled": true, + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "test-exclude": { + "version": "5.0.0", + "bundled": true, + "dev": true, + "requires": { + "arrify": "^1.0.1", + "minimatch": "^3.0.4", + "read-pkg-up": "^4.0.0", + "require-main-filename": "^1.0.1" + } + }, + "uglify-js": { + "version": "2.8.29", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" + }, + "dependencies": { + "yargs": { + "version": "3.10.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", + "window-size": "0.1.0" + } + } + } + }, + "uglify-to-browserify": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "uuid": { + "version": "3.3.2", + "bundled": true, + "dev": true + }, + "validate-npm-package-license": { + "version": "3.0.3", + "bundled": true, + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "which": { + "version": "1.3.1", + "bundled": true, + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "window-size": { + "version": "0.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "wordwrap": { + "version": "0.0.3", + "bundled": true, + "dev": true + }, + "wrap-ansi": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "write-file-atomic": { + "version": "2.3.0", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "y18n": { + "version": "3.2.1", + "bundled": true, + "dev": true + }, + "yallist": { + "version": "2.1.2", + "bundled": true, + "dev": true + }, + "yargs": { + "version": "11.1.0", + "bundled": true, + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^9.0.2" + }, + "dependencies": { + "cliui": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "bundled": true, + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "bundled": true, + "dev": true + } + } + }, + "yargs-parser": { + "version": "9.0.2", + "bundled": true, + "dev": true, + "requires": { + "camelcase": "^4.1.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "bundled": true, + "dev": true + } + } + } + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true, + "optional": true + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "requires": { + "isobject": "^3.0.0" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "opn": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", + "integrity": "sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + } + }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + }, + "dependencies": { + "minimist": { + "version": "0.0.10", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", + "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=" + } + } + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "package-json": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", + "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "dev": true, + "requires": { + "got": "^6.7.1", + "registry-auth-token": "^3.0.1", + "registry-url": "^3.0.3", + "semver": "^5.1.0" + } + }, + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" + }, "pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", @@ -2737,13 +4175,19 @@ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" }, + "pathval": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", + "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", + "dev": true + }, "pause-stream": { "version": "0.0.11", "resolved": "http://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", "integrity": "sha1-/lo0sMvOErWqaitAPuLnO2AvFEU=", "dev": true, "requires": { - "through": "2.3.8" + "through": "~2.3" } }, "pend": { @@ -2772,7 +4216,7 @@ "dev": true, "optional": true, "requires": { - "pinkie": "2.0.4" + "pinkie": "^2.0.0" } }, "posix-character-classes": { @@ -2804,7 +4248,7 @@ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz", "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==", "requires": { - "forwarded": "0.1.2", + "forwarded": "~0.1.2", "ipaddr.js": "1.8.0" } }, @@ -2820,7 +4264,7 @@ "integrity": "sha1-tCGyQUDWID8e08dplrRCewjowBQ=", "dev": true, "requires": { - "event-stream": "3.3.6" + "event-stream": "~3.3.0" } }, "pseudomap": { @@ -2835,7 +4279,7 @@ "integrity": "sha512-q5I5vLRMVtdWa8n/3UEzZX7Lfghzrg9eG2IKk2ENLSofKRCXVqMvMUHxCKgXNaqH/8ebhBxrqftHWnyTFweJ5Q==", "dev": true, "requires": { - "ps-tree": "1.1.0" + "ps-tree": "^1.1.0" } }, "puppeteer": { @@ -2844,14 +4288,14 @@ "integrity": "sha512-f+1DxKHPqce6CXUBz2eVO2WcATeVeQSOPG9GYaGObEZDCiCEUwG+gogjMsrvn7he2wHTqNVb5p6RUrwmr8XFBA==", "dev": true, "requires": { - "debug": "3.2.6", - "extract-zip": "1.6.7", - "https-proxy-agent": "2.2.1", - "mime": "2.3.1", - "progress": "2.0.0", - "proxy-from-env": "1.0.0", - "rimraf": "2.6.2", - "ws": "5.2.2" + "debug": "^3.1.0", + "extract-zip": "^1.6.6", + "https-proxy-agent": "^2.2.1", + "mime": "^2.0.3", + "progress": "^2.0.0", + "proxy-from-env": "^1.0.0", + "rimraf": "^2.6.1", + "ws": "^5.1.1" }, "dependencies": { "debug": { @@ -2860,7 +4304,7 @@ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.1.1" + "ms": "^2.1.1" } }, "mime": { @@ -2881,7 +4325,7 @@ "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", "dev": true, "requires": { - "async-limiter": "1.0.0" + "async-limiter": "~1.0.0" } } } @@ -2913,10 +4357,10 @@ "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", "dev": true, "requires": { - "deep-extend": "0.6.0", - "ini": "1.3.5", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" } }, "readable-stream": { @@ -2925,13 +4369,13 @@ "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "dev": true, "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "2.0.0", - "safe-buffer": "5.1.2", - "string_decoder": "1.1.1", - "util-deprecate": "1.0.2" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, "readdirp": { @@ -2940,9 +4384,9 @@ "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "micromatch": "3.1.10", - "readable-stream": "2.3.6" + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" } }, "regex-not": { @@ -2951,8 +4395,8 @@ "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", "dev": true, "requires": { - "extend-shallow": "3.0.2", - "safe-regex": "1.1.0" + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" } }, "registry-auth-token": { @@ -2961,8 +4405,8 @@ "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", "dev": true, "requires": { - "rc": "1.2.8", - "safe-buffer": "5.1.2" + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" } }, "registry-url": { @@ -2971,7 +4415,7 @@ "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", "dev": true, "requires": { - "rc": "1.2.8" + "rc": "^1.0.1" } }, "remove-trailing-separator": { @@ -3009,7 +4453,7 @@ "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", "optional": true, "requires": { - "align-text": "0.1.4" + "align-text": "^0.1.1" } }, "rimraf": { @@ -3018,7 +4462,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.1.3" + "glob": "^7.0.5" } }, "safe-buffer": { @@ -3032,7 +4476,7 @@ "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", "dev": true, "requires": { - "ret": "0.1.15" + "ret": "~0.1.10" } }, "safer-buffer": { @@ -3047,7 +4491,7 @@ "dev": true, "optional": true, "requires": { - "commander": "2.8.1" + "commander": "~2.8.1" } }, "semver": { @@ -3062,7 +4506,7 @@ "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", "dev": true, "requires": { - "semver": "5.6.0" + "semver": "^5.0.3" } }, "send": { @@ -3071,18 +4515,18 @@ "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", "requires": { "debug": "2.6.9", - "depd": "1.1.2", - "destroy": "1.0.4", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "etag": "1.8.1", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "1.6.3", + "http-errors": "~1.6.2", "mime": "1.4.1", "ms": "2.0.0", - "on-finished": "2.3.0", - "range-parser": "1.2.0", - "statuses": "1.4.0" + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.4.0" } }, "serve-static": { @@ -3090,9 +4534,9 @@ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", "requires": { - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "parseurl": "1.3.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.2", "send": "0.16.2" } }, @@ -3102,10 +4546,10 @@ "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-extendable": "0.1.1", - "is-plain-object": "2.0.4", - "split-string": "3.1.0" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" }, "dependencies": { "extend-shallow": { @@ -3114,7 +4558,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -3130,7 +4574,7 @@ "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", "dev": true, "requires": { - "shebang-regex": "1.0.0" + "shebang-regex": "^1.0.0" } }, "shebang-regex": { @@ -3151,14 +4595,14 @@ "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", "dev": true, "requires": { - "base": "0.11.2", - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "map-cache": "0.2.2", - "source-map": "0.5.7", - "source-map-resolve": "0.5.2", - "use": "3.1.1" + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" }, "dependencies": { "define-property": { @@ -3167,7 +4611,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -3176,7 +4620,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -3187,9 +4631,9 @@ "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", "dev": true, "requires": { - "define-property": "1.0.0", - "isobject": "3.0.1", - "snapdragon-util": "3.0.1" + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" }, "dependencies": { "define-property": { @@ -3198,7 +4642,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "is-accessor-descriptor": { @@ -3207,7 +4651,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -3216,7 +4660,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -3225,9 +4669,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } } } @@ -3238,7 +4682,7 @@ "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.2.0" }, "dependencies": { "kind-of": { @@ -3247,7 +4691,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -3263,11 +4707,11 @@ "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", "dev": true, "requires": { - "atob": "2.1.2", - "decode-uri-component": "0.2.0", - "resolve-url": "0.2.1", - "source-map-url": "0.4.0", - "urix": "0.1.0" + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" } }, "source-map-url": { @@ -3282,7 +4726,7 @@ "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", "dev": true, "requires": { - "through": "2.3.8" + "through": "2" } }, "split-string": { @@ -3291,7 +4735,7 @@ "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", "dev": true, "requires": { - "extend-shallow": "3.0.2" + "extend-shallow": "^3.0.0" } }, "static-extend": { @@ -3300,8 +4744,8 @@ "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", "dev": true, "requires": { - "define-property": "0.2.5", - "object-copy": "0.1.0" + "define-property": "^0.2.5", + "object-copy": "^0.1.0" }, "dependencies": { "define-property": { @@ -3310,7 +4754,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } } } @@ -3326,8 +4770,8 @@ "integrity": "sha1-rsjLrBd7Vrb0+kec7YwZEs7lKFg=", "dev": true, "requires": { - "duplexer": "0.1.1", - "through": "2.3.8" + "duplexer": "~0.1.1", + "through": "~2.3.4" } }, "string-width": { @@ -3336,8 +4780,8 @@ "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" } }, "string_decoder": { @@ -3346,7 +4790,7 @@ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "~5.1.0" } }, "strip-ansi": { @@ -3355,7 +4799,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } }, "strip-dirs": { @@ -3365,7 +4809,7 @@ "dev": true, "optional": true, "requires": { - "is-natural-number": "4.0.1" + "is-natural-number": "^4.0.1" } }, "strip-eof": { @@ -3386,7 +4830,7 @@ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { - "has-flag": "3.0.0" + "has-flag": "^3.0.0" } }, "tar-stream": { @@ -3395,13 +4839,13 @@ "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", "dev": true, "requires": { - "bl": "1.2.2", - "buffer-alloc": "1.2.0", - "end-of-stream": "1.4.1", - "fs-constants": "1.0.0", - "readable-stream": "2.3.6", - "to-buffer": "1.1.1", - "xtend": "4.0.1" + "bl": "^1.0.0", + "buffer-alloc": "^1.2.0", + "end-of-stream": "^1.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.3.0", + "to-buffer": "^1.1.1", + "xtend": "^4.0.0" } }, "term-size": { @@ -3410,7 +4854,7 @@ "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", "dev": true, "requires": { - "execa": "0.7.0" + "execa": "^0.7.0" } }, "through": { @@ -3431,13 +4875,19 @@ "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==", "dev": true }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + }, "to-object-path": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -3446,7 +4896,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -3457,10 +4907,10 @@ "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", "dev": true, "requires": { - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "regex-not": "1.0.2", - "safe-regex": "1.1.0" + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" } }, "to-regex-range": { @@ -3469,8 +4919,8 @@ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", "dev": true, "requires": { - "is-number": "3.0.0", - "repeat-string": "1.6.1" + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" } }, "touch": { @@ -3479,16 +4929,28 @@ "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", "dev": true, "requires": { - "nopt": "1.0.10" + "nopt": "~1.0.10" } }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true + }, "type-is": { "version": "1.6.16", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", "requires": { "media-typer": "0.3.0", - "mime-types": "2.1.20" + "mime-types": "~2.1.18" } }, "typedarray": { @@ -3503,9 +4965,9 @@ "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", "optional": true, "requires": { - "source-map": "0.5.7", - "uglify-to-browserify": "1.0.2", - "yargs": "3.10.0" + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" } }, "uglify-to-browserify": { @@ -3521,8 +4983,8 @@ "dev": true, "optional": true, "requires": { - "buffer": "3.6.0", - "through": "2.3.8" + "buffer": "^3.0.1", + "through": "^2.3.6" } }, "undefsafe": { @@ -3531,7 +4993,7 @@ "integrity": "sha1-Il9rngM3Zj4Njnz9aG/Cg2zKznY=", "dev": true, "requires": { - "debug": "2.6.9" + "debug": "^2.2.0" } }, "union-value": { @@ -3540,10 +5002,10 @@ "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", "dev": true, "requires": { - "arr-union": "3.1.0", - "get-value": "2.0.6", - "is-extendable": "0.1.1", - "set-value": "0.4.3" + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" }, "dependencies": { "extend-shallow": { @@ -3552,7 +5014,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "set-value": { @@ -3561,10 +5023,10 @@ "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-extendable": "0.1.1", - "is-plain-object": "2.0.4", - "to-object-path": "0.3.0" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" } } } @@ -3575,7 +5037,7 @@ "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", "dev": true, "requires": { - "crypto-random-string": "1.0.0" + "crypto-random-string": "^1.0.0" } }, "unpipe": { @@ -3589,8 +5051,8 @@ "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", "dev": true, "requires": { - "has-value": "0.3.1", - "isobject": "3.0.1" + "has-value": "^0.3.1", + "isobject": "^3.0.0" }, "dependencies": { "has-value": { @@ -3599,9 +5061,9 @@ "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", "dev": true, "requires": { - "get-value": "2.0.6", - "has-values": "0.1.4", - "isobject": "2.1.0" + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" }, "dependencies": { "isobject": { @@ -3641,16 +5103,16 @@ "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", "dev": true, "requires": { - "boxen": "1.3.0", - "chalk": "2.4.1", - "configstore": "3.1.2", - "import-lazy": "2.1.0", - "is-ci": "1.2.1", - "is-installed-globally": "0.1.0", - "is-npm": "1.0.0", - "latest-version": "3.1.0", - "semver-diff": "2.1.0", - "xdg-basedir": "3.0.0" + "boxen": "^1.2.1", + "chalk": "^2.0.1", + "configstore": "^3.0.0", + "import-lazy": "^2.1.0", + "is-ci": "^1.0.10", + "is-installed-globally": "^0.1.0", + "is-npm": "^1.0.0", + "latest-version": "^3.0.0", + "semver-diff": "^2.0.0", + "xdg-basedir": "^3.0.0" } }, "urix": { @@ -3665,7 +5127,7 @@ "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", "dev": true, "requires": { - "prepend-http": "1.0.4" + "prepend-http": "^1.0.1" } }, "use": { @@ -3695,7 +5157,7 @@ "resolved": "https://registry.npmjs.org/walk/-/walk-2.3.9.tgz", "integrity": "sha1-MbTbZnjyrgHDnqn7hyWpAx5Vins=", "requires": { - "foreachasync": "3.0.0" + "foreachasync": "^3.0.0" } }, "which": { @@ -3704,7 +5166,7 @@ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, "requires": { - "isexe": "2.0.0" + "isexe": "^2.0.0" } }, "widest-line": { @@ -3713,7 +5175,7 @@ "integrity": "sha1-AUKk6KJD+IgsAjOqDgKBqnYVInM=", "dev": true, "requires": { - "string-width": "2.1.1" + "string-width": "^2.1.1" } }, "window-size": { @@ -3739,9 +5201,9 @@ "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "imurmurhash": "0.1.4", - "signal-exit": "3.0.2" + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" } }, "ws": { @@ -3750,7 +5212,7 @@ "integrity": "sha512-H3dGVdGvW2H8bnYpIDc3u3LH8Wue3Qh+Zto6aXXFzvESkTVT6rAfKR6tR/+coaUvxs8yHtmNV0uioBF62ZGSTg==", "dev": true, "requires": { - "async-limiter": "1.0.0" + "async-limiter": "~1.0.0" } }, "xdg-basedir": { @@ -3783,9 +5245,9 @@ "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", "optional": true, "requires": { - "camelcase": "1.2.1", - "cliui": "2.1.0", - "decamelize": "1.2.0", + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", "window-size": "0.1.0" }, "dependencies": { @@ -3804,8 +5266,8 @@ "dev": true, "optional": true, "requires": { - "buffer-crc32": "0.2.13", - "fd-slicer": "1.1.0" + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" } } } diff --git a/package.json b/package.json index f735db0..ee94696 100644 --- a/package.json +++ b/package.json @@ -4,9 +4,11 @@ "description": "", "main": "index.js", "scripts": { - "test": "echo \"Error: no test specified\" && exit 1", + "test": "mocha tests", + "test-cover": "nyc --reporter=html --reporter=text mocha tests", "start": "node ./bin/www", - "devstart": "ndb ./bin/www" + "dev": "nodemon ./bin/www", + "debug": "ndb" }, "keywords": [], "author": "", @@ -16,6 +18,10 @@ "hbs": "^4.0.1" }, "devDependencies": { - "ndb": "^1.0.26" + "chai": "^4.2.0", + "mocha": "^5.2.0", + "ndb": "^1.0.26", + "nodemon": "^1.18.4", + "nyc": "^13.1.0" } } From 17605188faec24540ae3f413bb6d113821f76ea6 Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Sun, 21 Oct 2018 00:21:31 +0300 Subject: [PATCH 04/18] =?UTF-8?q?=D0=9B=D0=B8=D0=BD=D1=82=D0=B5=D1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .eslintrc.json | 40 +++ .prettierrc | 6 + package-lock.json | 707 +++++++++++++++++++++++++++++++++++++++++++++- package.json | 8 +- 4 files changed, 754 insertions(+), 7 deletions(-) create mode 100644 .eslintrc.json create mode 100644 .prettierrc diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 0000000..e102d52 --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,40 @@ +{ + "env": { + "browser": true, + "commonjs": true, + "es6": true, + "node": true + }, + "extends": "eslint:recommended", + "parserOptions": { + "ecmaVersion": 2016, + "sourceType": "module" + }, + "plugins": [ + "prettier" + ], + "rules": { + "indent": [ + "error", + 2, + { "SwitchCase": 1 } + ], + "linebreak-style": [ + "error", + "unix" + ], + "quotes": [ + "error", + "single" + ], + "semi": [ + "error", + "always" + ], + "prettier/prettier": "error" + }, + "globals": { + "describe": true, + "it": true + } +} \ No newline at end of file diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..220ae8e --- /dev/null +++ b/.prettierrc @@ -0,0 +1,6 @@ +{ + "useTabs": false, + "printWidth": 120, + "tabWidth": 2, + "singleQuote": true +} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 9915248..f96510a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -143,6 +143,21 @@ "negotiator": "0.6.1" } }, + "acorn": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", + "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "dev": true + }, + "acorn-jsx": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-4.1.1.tgz", + "integrity": "sha512-JY+iV6r+cO21KtntVvFkD+iqjtdpRUpGqKWgfkCdZq1R+kbreEl8EcdcJR4SmiIgsIQT33s6QzheQ9a275Q8xw==", + "dev": true, + "requires": { + "acorn": "^5.0.3" + } + }, "agent-base": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", @@ -152,6 +167,18 @@ "es6-promisify": "^5.0.0" } }, + "ajv": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.4.tgz", + "integrity": "sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, "align-text": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", @@ -186,6 +213,12 @@ "string-width": "^2.0.0" } }, + "ansi-escapes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", + "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==", + "dev": true + }, "ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", @@ -217,6 +250,15 @@ "integrity": "sha512-BLM56aPo9vLLFVa8+/+pJLnrZ7QGGTVHWsCwieAWT9o9K8UeGaQbzZbGoabWLOo2ksBCztoXdqBZBplqLDDCSg==", "dev": true }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, "arr-diff": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", @@ -240,12 +282,33 @@ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, "array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", "dev": true }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, "assertion-error": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", @@ -511,6 +574,21 @@ "unset-value": "^1.0.0" } }, + "caller-path": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", + "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", + "dev": true, + "requires": { + "callsites": "^0.2.0" + } + }, + "callsites": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", + "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", + "dev": true + }, "camelcase": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", @@ -558,6 +636,12 @@ "supports-color": "^5.3.0" } }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, "check-error": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", @@ -591,6 +675,12 @@ "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==", "dev": true }, + "circular-json": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", + "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", + "dev": true + }, "class-utils": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", @@ -620,6 +710,21 @@ "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", "dev": true }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true + }, "clipboardy": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-1.2.3.tgz", @@ -943,6 +1048,12 @@ "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", "dev": true }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, "define-property": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", @@ -984,6 +1095,29 @@ } } }, + "del": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", + "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", + "dev": true, + "requires": { + "globby": "^5.0.0", + "is-path-cwd": "^1.0.0", + "is-path-in-cwd": "^1.0.0", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "rimraf": "^2.2.8" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, "depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", @@ -1000,6 +1134,15 @@ "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", "dev": true }, + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, "dot-prop": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", @@ -1066,6 +1209,153 @@ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, + "eslint": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.7.0.tgz", + "integrity": "sha512-zYCeFQahsxffGl87U2aJ7DPyH8CbWgxBC213Y8+TCanhUTf2gEvfq3EKpHmEcozTLyPmGe9LZdMAwC/CpJBM5A==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.5.3", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^2.1.0", + "eslint-scope": "^4.0.0", + "eslint-utils": "^1.3.1", + "eslint-visitor-keys": "^1.0.0", + "espree": "^4.0.0", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^2.0.0", + "functional-red-black-tree": "^1.0.1", + "glob": "^7.1.2", + "globals": "^11.7.0", + "ignore": "^4.0.6", + "imurmurhash": "^0.1.4", + "inquirer": "^6.1.0", + "is-resolvable": "^1.1.0", + "js-yaml": "^3.12.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.5", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.2", + "pluralize": "^7.0.0", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "require-uncached": "^1.0.3", + "semver": "^5.5.1", + "strip-ansi": "^4.0.0", + "strip-json-comments": "^2.0.1", + "table": "^5.0.2", + "text-table": "^0.2.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "debug": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.0.tgz", + "integrity": "sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "eslint-plugin-prettier": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.0.0.tgz", + "integrity": "sha512-4g11opzhqq/8+AMmo5Vc2Gn7z9alZ4JqrbZ+D4i8KlSyxeQhZHlmIrY8U9Akf514MoEhogPa87Jgkq87aZ2Ohw==", + "dev": true, + "requires": { + "prettier-linter-helpers": "^1.0.0" + } + }, + "eslint-scope": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.0.tgz", + "integrity": "sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.3.1.tgz", + "integrity": "sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==", + "dev": true + }, + "eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", + "dev": true + }, + "espree": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-4.0.0.tgz", + "integrity": "sha512-kapdTCt1bjmspxStVKX6huolXVV5ZfyZguY1lcfhVVZstce3bqxH9mcLzNn3/mlgW6wQ732+0fuG9v7h0ZQoKg==", + "dev": true, + "requires": { + "acorn": "^5.6.0", + "acorn-jsx": "^4.1.1" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "esquery": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", + "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", + "dev": true, + "requires": { + "estraverse": "^4.0.0" + } + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "dev": true, + "requires": { + "estraverse": "^4.1.0" + } + }, + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", + "dev": true + }, "esutils": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", @@ -1201,6 +1491,28 @@ } } }, + "external-editor": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", + "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", + "dev": true, + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "dependencies": { + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + } + } + }, "extglob": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", @@ -1298,6 +1610,30 @@ } } }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, "fd-slicer": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", @@ -1308,6 +1644,25 @@ "pend": "~1.2.0" } }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-entry-cache": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", + "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", + "dev": true, + "requires": { + "flat-cache": "^1.2.1", + "object-assign": "^4.0.1" + } + }, "file-type": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", @@ -1351,6 +1706,18 @@ "unpipe": "~1.0.0" } }, + "flat-cache": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz", + "integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=", + "dev": true, + "requires": { + "circular-json": "^0.3.1", + "del": "^2.0.2", + "graceful-fs": "^4.1.2", + "write": "^0.2.1" + } + }, "flatmap-stream": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/flatmap-stream/-/flatmap-stream-0.1.1.tgz", @@ -1940,6 +2307,12 @@ } } }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, "get-func-name": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", @@ -2008,6 +2381,28 @@ "integrity": "sha512-io6LkyPVuzCHBSQV9fmOwxZkUk6nIaGmxheLDgmuFv89j0fm2aqDbIXKAGfzCMHqz3HLF2Zf8WSG6VqMh2qFmA==", "dev": true }, + "globby": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", + "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, "got": { "version": "6.7.1", "resolved": "http://registry.npmjs.org/got/-/got-6.7.1.tgz", @@ -2173,6 +2568,12 @@ "dev": true, "optional": true }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, "ignore-by-default": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", @@ -2212,6 +2613,27 @@ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", "dev": true }, + "inquirer": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.0.tgz", + "integrity": "sha512-QIEQG4YyQ2UYZGDC4srMZ7BjHOmNk1lR2JQj5UknBapklm6WHA+VVH7N+sUdX3A7NeCfGF8o4X1S3Ao7nAcIeg==", + "dev": true, + "requires": { + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.0", + "figures": "^2.0.0", + "lodash": "^4.17.10", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^6.1.0", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" + } + }, "ipaddr.js": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz", @@ -2375,6 +2797,21 @@ "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", "dev": true }, + "is-path-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", + "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", + "dev": true + }, + "is-path-in-cwd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", + "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", + "dev": true, + "requires": { + "is-path-inside": "^1.0.0" + } + }, "is-path-inside": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", @@ -2393,12 +2830,24 @@ "isobject": "^3.0.1" } }, + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "dev": true + }, "is-redirect": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", "dev": true }, + "is-resolvable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", + "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", + "dev": true + }, "is-retry-allowed": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", @@ -2477,12 +2926,34 @@ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "dev": true }, + "js-yaml": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz", + "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, "jsesc": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", "dev": true }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", @@ -2504,6 +2975,16 @@ "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", "optional": true }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, "lodash": { "version": "4.17.11", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", @@ -2621,6 +3102,12 @@ "mime-db": "~1.36.0" } }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -2738,6 +3225,12 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, "nan": { "version": "2.11.1", "resolved": "https://registry.npmjs.org/nan/-/nan-2.11.1.tgz", @@ -2764,6 +3257,12 @@ "to-regex": "^3.0.1" } }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, "ndb": { "version": "1.0.26", "resolved": "https://registry.npmjs.org/ndb/-/ndb-1.0.26.tgz", @@ -2818,6 +3317,12 @@ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, "nodemon": { "version": "1.18.4", "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-1.18.4.tgz", @@ -4023,8 +4528,7 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true + "dev": true }, "object-copy": { "version": "0.1.0", @@ -4092,6 +4596,15 @@ "wrappy": "1" } }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, "opn": { "version": "5.4.0", "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", @@ -4117,6 +4630,34 @@ } } }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "dev": true, + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + }, + "dependencies": { + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true + } + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", @@ -4206,31 +4747,56 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true, - "optional": true + "dev": true }, "pinkie-promise": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "dev": true, - "optional": true, "requires": { "pinkie": "^2.0.0" } }, + "pluralize": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", + "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", + "dev": true + }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", "dev": true }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, "prepend-http": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", "dev": true }, + "prettier": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.14.3.tgz", + "integrity": "sha512-qZDVnCrnpsRJJq5nSsiHCE3BYMED2OtsI+cmzIzF1QIfqm5ALf8tEJcO27zV1gKNKRPdhjO0dNWnrzssDQ1tFg==", + "dev": true + }, + "prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "requires": { + "fast-diff": "^1.1.2" + } + }, "process-nextick-args": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", @@ -4282,6 +4848,12 @@ "ps-tree": "^1.1.0" } }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, "puppeteer": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.7.0.tgz", @@ -4399,6 +4971,12 @@ "safe-regex": "^1.1.0" } }, + "regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "dev": true + }, "registry-auth-token": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", @@ -4435,12 +5013,38 @@ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" }, + "require-uncached": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", + "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", + "dev": true, + "requires": { + "caller-path": "^0.1.0", + "resolve-from": "^1.0.0" + } + }, + "resolve-from": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", + "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", + "dev": true + }, "resolve-url": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", "dev": true }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, "ret": { "version": "0.1.15", "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", @@ -4465,6 +5069,24 @@ "glob": "^7.0.5" } }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true, + "requires": { + "is-promise": "^2.1.0" + } + }, + "rxjs": { + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", + "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", @@ -4589,6 +5211,15 @@ "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", "dev": true }, + "slice-ansi": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", + "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0" + } + }, "snapdragon": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", @@ -4738,6 +5369,12 @@ "extend-shallow": "^3.0.0" } }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, "static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", @@ -4833,6 +5470,18 @@ "has-flag": "^3.0.0" } }, + "table": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/table/-/table-5.1.0.tgz", + "integrity": "sha512-e542in22ZLhD/fOIuXs/8yDZ9W61ltF8daM88rkRNtgTIct+vI2fTnAyu/Db2TCfEcI8i7mjZz6meLq0nW7TYg==", + "dev": true, + "requires": { + "ajv": "^6.5.3", + "lodash": "^4.17.10", + "slice-ansi": "1.0.0", + "string-width": "^2.1.1" + } + }, "tar-stream": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", @@ -4857,6 +5506,12 @@ "execa": "^0.7.0" } }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, "through": { "version": "2.3.8", "resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz", @@ -4869,6 +5524,15 @@ "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", "dev": true }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + }, "to-buffer": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", @@ -4938,6 +5602,21 @@ "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", "dev": true }, + "tslib": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", + "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", + "dev": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + }, "type-detect": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", @@ -5115,6 +5794,15 @@ "xdg-basedir": "^3.0.0" } }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, "urix": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", @@ -5195,6 +5883,15 @@ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "dev": true }, + "write": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", + "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", + "dev": true, + "requires": { + "mkdirp": "^0.5.1" + } + }, "write-file-atomic": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz", diff --git a/package.json b/package.json index ee94696..a026577 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,8 @@ "test-cover": "nyc --reporter=html --reporter=text mocha tests", "start": "node ./bin/www", "dev": "nodemon ./bin/www", - "debug": "ndb" + "debug": "ndb", + "lint": "./node_modules/.bin/eslint --fix tests" }, "keywords": [], "author": "", @@ -19,9 +20,12 @@ }, "devDependencies": { "chai": "^4.2.0", + "eslint": "^5.7.0", + "eslint-plugin-prettier": "^3.0.0", "mocha": "^5.2.0", "ndb": "^1.0.26", "nodemon": "^1.18.4", - "nyc": "^13.1.0" + "nyc": "^13.1.0", + "prettier": "^1.14.3" } } From a2e7b9f70d3426f86b000c275cbed1abd02c0a08 Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Sun, 21 Oct 2018 14:46:00 +0300 Subject: [PATCH 05/18] =?UTF-8?q?=D0=9B=D0=BE=D0=B3=D0=B8=D1=87=D0=B5?= =?UTF-8?q?=D1=81=D0=BA=D0=B8=D0=B5=20=D0=B1=D0=BB=D0=BE=D0=BA=D0=B8=20?= =?UTF-8?q?=D0=B8=20=D0=B8=D1=85=20=D1=81=D1=86=D0=B5=D0=BD=D0=B0=D1=80?= =?UTF-8?q?=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/README.md b/README.md index 8f5fd28..887e1cb 100644 --- a/README.md +++ b/README.md @@ -31,3 +31,30 @@ npm start - нужно добавить в README список логических блоков системы и их сценариев - для каждого блока нужно написать модульные тесты - если необходимо, выполните рефакторинг, чтобы реорганизовать логические блоки или добавить точки расширения + +#### Логические блоки и их сценарии (только публичные методы) + +- Используем хелпер navigation + - вызываем функцию buildFolderUrl + - получаем url по hash, без path + - вызываем функцию buildBreadcrumbs + - получаем крошки без параметров + - получаем крошки по hash + - получаем крошки по hash и path + - вызываем функцию buildObjectUrl + - получаем url по hash и path с предачей type = tree + - получаем url hash и path с предачей type = blob + - получаем url hash и path hash без type +- Используем хелпер git + - вызываем функцию gitHistory + - получаем ошибку Error: git log + - получаем историю коммитов со второй позиции с лимитом два + - вызываем функцию gitFileTree + - получаем ошибку Error: git ls-tree + - получаем дерево файловой системы коммита по hash + - получаем дерево файловой системы коммита по hash и path + - вызываем функцию gitFileContent + - получаем ошибку Error: git show + - получаем изменнения в коммите по hash + +#### Рефакторинг From 61d23f4f64857be6f1235782c055a1aa262acaea Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Sun, 21 Oct 2018 14:57:30 +0300 Subject: [PATCH 06/18] =?UTF-8?q?=D0=A0=D0=B5=D1=84=D0=B0=D0=BA=D1=82?= =?UTF-8?q?=D0=BE=D1=80=D0=B8=D0=BD=D0=B3=20=D1=85=D0=B5=D0=BB=D0=BF=D0=B5?= =?UTF-8?q?=D1=80=D0=B0=20navigation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit функция buildObjectUrl перенесена в хелпер navigation --- README.md | 2 ++ controllers/filesController.js | 12 +----------- utils/navigation.js | 14 +++++++++++++- 3 files changed, 16 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 887e1cb..dbb9ce9 100644 --- a/README.md +++ b/README.md @@ -58,3 +58,5 @@ npm start - получаем изменнения в коммите по hash #### Рефакторинг + +- функция buildObjectUrl перенесена в хелпер navigation \ No newline at end of file diff --git a/controllers/filesController.js b/controllers/filesController.js index 02fe732..bcb538e 100644 --- a/controllers/filesController.js +++ b/controllers/filesController.js @@ -1,21 +1,11 @@ const { gitFileTree } = require('../utils/git'); const { + buildObjectUrl, buildFolderUrl, buildFileUrl, buildBreadcrumbs } = require('../utils/navigation'); -function buildObjectUrl(parentHash, { path, type }) { - switch (type) { - case 'tree': - return buildFolderUrl(parentHash, path); - case 'blob': - return buildFileUrl(parentHash, path); - default: - return '#'; - } -} - module.exports = function(req, res, next) { const { hash } = req.params; const pathParam = (req.params[0] || '').split('/').filter(Boolean); diff --git a/utils/navigation.js b/utils/navigation.js index 08fce47..89f5eca 100644 --- a/utils/navigation.js +++ b/utils/navigation.js @@ -45,8 +45,20 @@ function buildBreadcrumbs(hash, path) { return bc; } +function buildObjectUrl(parentHash, { path, type }) { + switch (type) { + case 'tree': + return buildFolderUrl(parentHash, path); + case 'blob': + return buildFileUrl(parentHash, path); + default: + return '#'; + } +} + module.exports = { buildFolderUrl, buildFileUrl, - buildBreadcrumbs + buildBreadcrumbs, + buildObjectUrl }; From 7ca983dadaf374d2bbd001447d49c9bf34cc54fc Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Sun, 21 Oct 2018 15:04:17 +0300 Subject: [PATCH 07/18] =?UTF-8?q?=D0=A2=D0=B5=D1=81=D1=82=D1=8B=20=D0=B4?= =?UTF-8?q?=D0=BB=D1=8F=20=D1=85=D0=B5=D0=BB=D0=BF=D0=B5=D1=80=D0=B0=20nav?= =?UTF-8?q?igation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- package-lock.json | 6 ++++ package.json | 1 + tests/navigation.test.js | 70 ++++++++++++++++++++++++++++++++++++++++ 4 files changed, 78 insertions(+), 1 deletion(-) create mode 100644 tests/navigation.test.js diff --git a/README.md b/README.md index dbb9ce9..339a0ce 100644 --- a/README.md +++ b/README.md @@ -36,7 +36,7 @@ npm start - Используем хелпер navigation - вызываем функцию buildFolderUrl - - получаем url по hash, без path + - получаем url по hash, без передачи path - вызываем функцию buildBreadcrumbs - получаем крошки без параметров - получаем крошки по hash diff --git a/package-lock.json b/package-lock.json index f96510a..104cc38 100644 --- a/package-lock.json +++ b/package-lock.json @@ -625,6 +625,12 @@ "type-detect": "^4.0.5" } }, + "chai-shallow-deep-equal": { + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/chai-shallow-deep-equal/-/chai-shallow-deep-equal-1.4.6.tgz", + "integrity": "sha1-QYS1oTOTra40ts7wxptazILE2DQ=", + "dev": true + }, "chalk": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", diff --git a/package.json b/package.json index a026577..118c19c 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ }, "devDependencies": { "chai": "^4.2.0", + "chai-shallow-deep-equal": "^1.4.6", "eslint": "^5.7.0", "eslint-plugin-prettier": "^3.0.0", "mocha": "^5.2.0", diff --git a/tests/navigation.test.js b/tests/navigation.test.js new file mode 100644 index 0000000..261ec38 --- /dev/null +++ b/tests/navigation.test.js @@ -0,0 +1,70 @@ +const { use, expect } = require('chai'); +use(require('chai-shallow-deep-equal')); + +const { buildFolderUrl, buildBreadcrumbs, buildObjectUrl } = require('../utils/navigation'); + +const hash = '0e82282ad8e8f14a76aadcd5724842ca8d1ad71d'; +const pathFolder = 'utils'; +const pathFile = 'navigation.js'; +const pathFileFull = `${pathFolder}/${pathFile}`; + +describe('Используем хелпер navigation', () => { + describe('вызываем функцию buildFolderUrl', () => { + it('получаем url по hash без передачи path', () => { + const href = buildFolderUrl(hash); + + expect(href).to.equal(`/files/${hash}/`); + }); + }); + + describe('вызываем функцию buildBreadcrumbs', () => { + it('получаем крошки без параметров', () => { + const bc = buildBreadcrumbs(); + + expect(bc).to.shallowDeepEqual([{ text: 'HISTORY', href: undefined }]); + }); + + it('получаем крошки по hash', () => { + const bc = buildBreadcrumbs(hash); + + expect(bc).to.shallowDeepEqual([{ text: 'HISTORY', href: '/' }, { text: 'ROOT', href: undefined }]); + }); + + it('получаем крошки по hash и path', () => { + const bc = buildBreadcrumbs(hash, pathFileFull); + + expect(bc).to.shallowDeepEqual([ + { text: 'HISTORY', href: '/' }, + { text: 'ROOT', href: `/files/${hash}/` }, + { text: pathFolder, href: `/files/${hash}/${pathFolder}/` }, + { text: pathFile } + ]); + }); + }); + + describe('вызываем функцию buildObjectUrl', () => { + it('получаем url по hash и path с предачей type = tree', () => { + const href = buildObjectUrl(hash, { + path: pathFolder, + type: 'tree' + }); + + expect(href).to.equal(`/files/${hash}/${pathFolder}`); + }); + + it('получаем url hash и path с предачей type = blob', () => { + const href = buildObjectUrl(hash, { + path: pathFileFull, + type: 'blob' + }); + + expect(href).to.equal(`/content/${hash}/${pathFileFull}`); + }); + + it('получаем url hash и path hash без type', () => { + const href = buildObjectUrl(hash, {}); + + expect(href).to.equal('#'); + }); + }); +}); From f955adfc43b8dc46359b0cc1f1265506d80f0644 Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Sun, 21 Oct 2018 15:24:01 +0300 Subject: [PATCH 08/18] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=B2=D0=BE=D0=B7=D0=BC=D0=BE=D0=B6=D0=BD?= =?UTF-8?q?=D0=BE=D1=81=D1=82=D1=8C=20=D0=B8=D0=BD=D1=8A=D0=B5=D0=BA=D1=86?= =?UTF-8?q?=D0=B8=D0=B8=20mock=20=D0=B4=D0=BB=D1=8F=20execFile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- utils/git.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/utils/git.js b/utils/git.js index 34c8f2e..fdddec6 100644 --- a/utils/git.js +++ b/utils/git.js @@ -1,7 +1,11 @@ const { resolve } = require('path'); const REPO = resolve('.'); -const { execFile } = require('child_process'); +let { execFile } = require('child_process'); + +function injectExecFileFunc(mock) { + execFile = mock; +} function executeGit(cmd, args) { return new Promise((resolve, reject) => { @@ -71,5 +75,6 @@ function gitFileContent(hash) { module.exports = { gitHistory, gitFileTree, - gitFileContent + gitFileContent, + injectExecFileFunc }; From dc4a6ee4ba07076809598566179530a56492b2fa Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Sun, 21 Oct 2018 17:09:28 +0300 Subject: [PATCH 09/18] =?UTF-8?q?=D0=A2=D0=B5=D1=81=D1=82=D1=8B=20=D0=B4?= =?UTF-8?q?=D0=BB=D1=8F=20=D1=85=D0=B5=D0=BB=D0=BF=D0=B5=D1=80=D0=B0=20git?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 5 +- fixtures/git-log.json | 124 ++++++++++++++++++++++++++++++++++++++ fixtures/git-ls-tree.json | 85 ++++++++++++++++++++++++++ fixtures/git-show.json | 5 ++ tests/git.test.js | 124 ++++++++++++++++++++++++++++++++++++++ 5 files changed, 341 insertions(+), 2 deletions(-) create mode 100644 fixtures/git-log.json create mode 100644 fixtures/git-ls-tree.json create mode 100644 fixtures/git-show.json create mode 100644 tests/git.test.js diff --git a/README.md b/README.md index 339a0ce..57c8ad8 100644 --- a/README.md +++ b/README.md @@ -55,8 +55,9 @@ npm start - получаем дерево файловой системы коммита по hash и path - вызываем функцию gitFileContent - получаем ошибку Error: git show - - получаем изменнения в коммите по hash + - получаем содержимое файла по hash #### Рефакторинг -- функция buildObjectUrl перенесена в хелпер navigation \ No newline at end of file +- функция buildObjectUrl перенесена в хелпер navigation +- в хелпере git добавлена возиожность инъекции mock для execFile \ No newline at end of file diff --git a/fixtures/git-log.json b/fixtures/git-log.json new file mode 100644 index 0000000..aacdbe6 --- /dev/null +++ b/fixtures/git-log.json @@ -0,0 +1,124 @@ +{ + "log": [ + { + "hash": "a650ac6d04e840290cf02bc4e8fcf917d2f1c4d0", + "author": "Ivan Kolobaev", + "timestamp": "2018-10-21 03:12:43 +0300", + "msg": "Хелпер git переписан на класс" + }, + { + "hash": "bf6f83f2779b4829ee5301211352f3a3814feedb", + "author": "Ivan Kolobaev", + "timestamp": "2018-10-21 01:00:50 +0300", + "msg": "Сценарии тестирования и тесты для хелпера navigation" + }, + { + "hash": "17605188faec24540ae3f413bb6d113821f76ea6", + "author": "Ivan Kolobaev", + "timestamp": "2018-10-21 00:21:31 +0300", + "msg": "Линтер" + }, + { + "hash": "ac8b1946ecbcdec188a0c67c5187cd9884c0e56c", + "author": "Ivan Kolobaev", + "timestamp": "2018-10-21 00:03:04 +0300", + "msg": "Добавлены nodemon, mocha и chai, nyc" + }, + { + "hash": "79eec830de6fa907a6f6a1e176f0e4d9dea3c600", + "author": "Ivan Kolobaev", + "timestamp": "2018-10-20 23:42:10 +0300", + "msg": "Исправлена опечатка в readme" + }, + { + "hash": "c81643d8fa442b8bd2ed46569f158cd27977b916", + "author": "Ivan Kolobaev", + "timestamp": "2018-10-20 23:41:24 +0300", + "msg": "Игнор настроек IDE" + }, + { + "hash": "90180910fc27a11272a3e5caeeb119a51e5c0545", + "author": "Dmitry Andriyanov", + "timestamp": "2018-10-16 12:49:56 +0300", + "msg": "исправлена опечатка в readme" + }, + { + "hash": "cc2284293758e32c50fa952da2f487c8c5e8d023", + "author": "Dmitry Andriyanov", + "timestamp": "2018-10-16 12:36:32 +0300", + "msg": "readme" + }, + { + "hash": "7e013ae0440ad6e91082599376a6aaebe20d2112", + "author": "Dmitry Andriyanov", + "timestamp": "2018-10-16 12:10:05 +0300", + "msg": "codestyle" + }, + { + "hash": "f2df8ac23e817f6da01624a77ec050a0147f642a", + "author": "Dmitry Andriyanov", + "timestamp": "2018-10-16 12:02:11 +0300", + "msg": "стили" + }, + { + "hash": "0f7b962409d6980236944164c5b0c9f43f9348e9", + "author": "Dmitry Andriyanov", + "timestamp": "2018-10-16 11:54:32 +0300", + "msg": "хлебные крошки" + }, + { + "hash": "82810cf7d56476059477aaa5ff55c99ff191be29", + "author": "Dmitry Andriyanov", + "timestamp": "2018-10-16 11:25:59 +0300", + "msg": "исправлена ошибка" + }, + { + "hash": "30fc48ec578e6b0052f6ab9ea7a118fb31574cdc", + "author": "Dmitry Andriyanov", + "timestamp": "2018-10-16 11:23:01 +0300", + "msg": "ссылки на корневую папку" + }, + { + "hash": "f69c43393449afe9284f3fa20010695a5faa3849", + "author": "Dmitry Andriyanov", + "timestamp": "2018-10-16 11:20:57 +0300", + "msg": "ссылки на корневую папку" + }, + { + "hash": "5dec08da64c3b090708aa8412924b26744d60597", + "author": "Dmitry Andriyanov", + "timestamp": "2018-10-16 11:19:59 +0300", + "msg": "отображение списка коммитов" + }, + { + "hash": "144944153a24f28bd13bcd60aa7f588523649a53", + "author": "Dmitry Andriyanov", + "timestamp": "2018-10-16 11:17:57 +0300", + "msg": "экранирование контента" + }, + { + "hash": "e91effac1a382d9569198e0625d5c979956e9870", + "author": "Dmitry Andriyanov", + "timestamp": "2018-10-16 11:16:20 +0300", + "msg": "стили для списка коммитов" + }, + { + "hash": "1bd9b4848866f8d83cbb45b45193c695ffebb282", + "author": "Dmitry Andriyanov", + "timestamp": "2018-10-16 10:15:28 +0300", + "msg": "навигация для страницы с контентом файла" + }, + { + "hash": "cdd4eb0149493540c34103e7ac2a49a5f67a917b", + "author": "Dmitry Andriyanov", + "timestamp": "2018-10-16 09:53:14 +0300", + "msg": "просмотр содержимого файла" + }, + { + "hash": "172001aeb63bdfc4e3f01f29e30876022cf6ad45", + "author": "Dmitry Andriyanov", + "timestamp": "2018-10-16 09:02:52 +0300", + "msg": "список файлов" + } + ] +} \ No newline at end of file diff --git a/fixtures/git-ls-tree.json b/fixtures/git-ls-tree.json new file mode 100644 index 0000000..8d073c4 --- /dev/null +++ b/fixtures/git-ls-tree.json @@ -0,0 +1,85 @@ +{ + "ls": { + "f955adfc43b8dc46359b0cc1f1265506d80f0644": [ + { + "type": "blob", + "hash": "e102d52abefd86fb2e30bbb3751e0f0432834fd2", + "path": ".eslintrc.json" + }, + { + "type": "blob", + "hash": "b5809f6d2d86cbe8d75b343d8460f46b6e16a0e5", + "path": ".gitignore" + }, + { + "type": "blob", + "hash": "220ae8ef248e310e5ad4d8f8a79cb00485c3dc81", + "path": ".prettierrc" + }, + { + "type": "blob", + "hash": "339a0cebf88c1eac07052a66d8ef94b5cf29c624", + "path": "README.md" + }, + { + "type": "blob", + "hash": "70461d5f9009344d9933e889b0448aa3f18d83d9", + "path": "app.js" + }, + { + "type": "tree", + "hash": "152db3caa8a0d01acc76abc9df36e6b432ad1e55", + "path": "bin" + }, + { + "type": "tree", + "hash": "9b406f59179a5ebf9ee120ca7c4a7ceced0e6192", + "path": "controllers" + }, + { + "type": "blob", + "hash": "104cc38bbc5416252cdeac15238b3aaceccbaa8d", + "path": "package-lock.json" + }, + { + "type": "blob", + "hash": "118c19c06afcfe6b709d4739443e859f5cf50454", + "path": "package.json" + }, + { + "type": "tree", + "hash": "6a033b657f10911ad9b65c27c3f9b6fb6130b058", + "path": "public" + }, + { + "type": "tree", + "hash": "1a3c12b118bf123395852a688e46bab374c4c261", + "path": "tests" + }, + { + "type": "tree", + "hash": "7b0aafd9e1a67392c6492e340ce52ab8624360c4", + "path": "utils" + }, + { + "type": "tree", + "hash": "4c0e80c9ffcda3ef1a11b2d8ecd552418dad68b5", + "path": "views" + } + ], + "7ca983dadaf374d2bbd001447d49c9bf34cc54fc": { + "utils/": [ + { + "type": "blob", + "hash": "34c8f2ef3a70fb1c8cd197ae20c5b366ca630bca", + "path": "utils/git.js" + }, + { + "type": "blob", + "hash": "89f5eca8135b6f4f64a19a3813ea3a30eed2e8d3", + "path": "utils/navigation.js" + } + ] + } + } +} \ No newline at end of file diff --git a/fixtures/git-show.json b/fixtures/git-show.json new file mode 100644 index 0000000..319fbf0 --- /dev/null +++ b/fixtures/git-show.json @@ -0,0 +1,5 @@ +{ + "show": { + "b5809f6d2d86cbe8d75b343d8460f46b6e16a0e5": ".idea/\nnode_modules/\n\n.nyc_output/\ncoverage/\n" + } +} \ No newline at end of file diff --git a/tests/git.test.js b/tests/git.test.js new file mode 100644 index 0000000..397c2eb --- /dev/null +++ b/tests/git.test.js @@ -0,0 +1,124 @@ +const {use, expect} = require('chai'); +use(require('chai-shallow-deep-equal')); + +const { + gitHistory, + gitFileTree, + gitFileContent, + injectExecFileFunc +} = require('../utils/git'); +const fixture = {}; +fixture.log = require('../fixtures/git-log').log; +fixture.lsTree = require('../fixtures/git-ls-tree').ls; +fixture.show = require('../fixtures/git-show').show; + +describe('Используем хелпер git', () => { + describe('вызываем функцию gitHistory', () => { + it('получаем ошибку Error: git log', async () => { + const text = 'Error: git log'; + injectExecFileFunc((cmd, args, options, callback) => { + callback(text, null); + }); + + let error = ''; + try { + await gitHistory(); + } catch (e) { + error = e + } + + expect(error).to.equal(text); + }); + + it('получаем историю коммитов со второй позиции с лимитом два', async () => { + injectExecFileFunc((cmd, args, options, callback) => { + const string = fixture.log.slice(args[4] - 1, args[4] - 1 + args[6]).reduce((string, item) => { + return string + `${item.hash}\t${item.author}\t${item.timestamp}\t${item.msg}\n`; + }, ''); + callback(null, string); + }); + + const history = await gitHistory(2, 2); + + expect(history).to.shallowDeepEqual(fixture.log.slice(1, 3)); + }); + }); + + describe('вызываем функцию gitFileTree', () => { + it('получаем ошибку Error: git ls-tree', async () => { + const text = 'Error: git ls-tree'; + injectExecFileFunc((cmd, args, options, callback) => { + callback(text, null); + }); + + let error = ''; + try { + await gitFileTree(); + } catch (e) { + error = e + } + + expect(error).to.equal(text); + }); + + it('получаем дерево файловой системы коммита по hash', async () => { + const hash = 'f955adfc43b8dc46359b0cc1f1265506d80f0644'; + injectExecFileFunc((cmd, args, options, callback) => { + const string = fixture.lsTree[args[1]].reduce((string, item) => { + return string + `100644 ${item.type} ${item.hash}\t${item.path}\n`; + }, ''); + callback(null, string); + }); + + const tree = await gitFileTree(hash); + + expect(tree).to.shallowDeepEqual(fixture.lsTree[hash]); + }); + + it('получаем дерево файловой системы коммита по hash и path', async () => { + const hash = '7ca983dadaf374d2bbd001447d49c9bf34cc54fc'; + const path = 'utils/'; + injectExecFileFunc((cmd, args, options, callback) => { + const string = fixture.lsTree[args[1]][args[2]].reduce((string, item) => { + return string + `100644 ${item.type} ${item.hash}\t${item.path}\n`; + }, ''); + callback(null, string); + }); + + const tree = await gitFileTree(hash, path); + + expect(tree).to.shallowDeepEqual(fixture.lsTree[hash][path]); + }); + }); + + describe('вызываем функцию gitFileContent', () => { + it('получаем ошибку Error: git show', async () => { + const text = 'Error: git show'; + injectExecFileFunc((cmd, args, options, callback) => { + callback(text, null); + }); + + let error = ''; + try { + await gitFileContent(); + } catch (e) { + error = e + } + + expect(error).to.equal(text); + }); + }); + + describe('вызываем функцию gitFileContent', () => { + it('получаем изменнения содержимое файла по hash', async () => { + const hash = 'b5809f6d2d86cbe8d75b343d8460f46b6e16a0e5'; + injectExecFileFunc((cmd, args, options, callback) => { + callback(null, fixture.show[args[1]]); + }); + + const content = await gitFileContent(hash); + + expect(content).to.equal(fixture.show[hash]); + }); + }); +}); \ No newline at end of file From 79f4b0a929d162c1de7495bf8dc874c58cb831c6 Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Mon, 22 Oct 2018 00:57:28 +0300 Subject: [PATCH 10/18] =?UTF-8?q?=D0=92=20=D1=80=D0=B8=D0=B4=D0=BC=D0=B8?= =?UTF-8?q?=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=BE=20?= =?UTF-8?q?=D1=8E=D0=B7=D0=B5=D1=80=20=D1=81=D1=82=D0=BE=D1=80=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/README.md b/README.md index 57c8ad8..b9111eb 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,17 @@ npm start - из списка файлов на страницу отдельного файла - переходы по хлебным крошкам +#### User Story + +- как пользователь, я хочу открыть главную страницу, чтобы увидеть список коммитов репозитрория +- как пользователь, я хочу видеть информацию о коммите, чтобы можно было понять кто автор, время, описание, хэш +- как пользователь, я хочу открыть страницу определенного коммита, чтобы увидеть корневую файловую структуру коммита +- как пользователь, я хочу открыть определенную папку, чтобы увидеть вложенную файловую структуру +- как пользователь, я хочу открыть определенный файл, чтобы просмотреть содержимое файла +- как пользователь, я хочу переходить от комитов к файловой структуре, переходить по папкам файловой структуры, смотреть содержимое файлов, чтобы была удобная навигация +- как пользователь, я хочу видеть путь от главной страницы до той, на которой я сейчас нахожусь (хлебные крошки), для удобной навигации +- как пользователь, я переходить элементам хлебных крошек, что бы перейти к определенному уровню иерархии + ## Модульные тесты - нужно добавить в README список логических блоков системы и их сценариев From ab4735fc9e1a0530965e8848b1bb8cf05a860b36 Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Mon, 22 Oct 2018 01:03:53 +0300 Subject: [PATCH 11/18] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=BE=20hermione?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 4 +- package-lock.json | 3231 ++++++++++++++++++++++++++++++++++++++++++++- package.json | 5 +- 3 files changed, 3204 insertions(+), 36 deletions(-) diff --git a/.gitignore b/.gitignore index b5809f6..079b7e7 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,6 @@ node_modules .nyc_output/ -coverage/ \ No newline at end of file +coverage/ + +hermione-html-report/ \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 104cc38..41f44ce 100644 --- a/package-lock.json +++ b/package-lock.json @@ -128,6 +128,139 @@ "to-fast-properties": "^2.0.0" } }, + "@gemini-testing/commander": { + "version": "2.15.2", + "resolved": "https://registry.npmjs.org/@gemini-testing/commander/-/commander-2.15.2.tgz", + "integrity": "sha512-hjTona7ySenkm+qKGAJ2uEAa1Y/VFZ14ieMWUwlb7MGoBPL3VVoTwEL7bCQiOvbDc2ld5LnDmzzJYcWAw9psbg==", + "dev": true + }, + "@gemini-testing/webdriverio": { + "version": "4.9.11", + "resolved": "https://registry.npmjs.org/@gemini-testing/webdriverio/-/webdriverio-4.9.11.tgz", + "integrity": "sha512-b9ZMPq1o7JloqmgL6bZDeXpTusuOp2WAbtJCdsmxuvGhf+tco52c8qfY/l82g7zq3HzLYZFxQUj9xfIR798dsA==", + "dev": true, + "requires": { + "archiver": "~2.1.0", + "babel-runtime": "^6.26.0", + "css-parse": "~2.0.0", + "css-value": "~0.0.1", + "deepmerge": "~2.0.1", + "ejs": "~2.5.6", + "gaze": "~1.1.2", + "glob": "~7.1.1", + "inquirer": "~3.3.0", + "json-stringify-safe": "~5.0.1", + "mkdirp": "~0.5.1", + "npm-install-package": "~2.1.0", + "optimist": "~0.6.1", + "q": "~1.5.0", + "request": "~2.83.0", + "rgb2hex": "~0.1.0", + "safe-buffer": "~5.1.1", + "supports-color": "~5.0.0", + "url": "~0.11.0", + "validator": "~9.1.1", + "wdio-dot-reporter": "~0.0.8", + "wgxpath": "~1.0.0" + }, + "dependencies": { + "chardet": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", + "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", + "dev": true + }, + "external-editor": { + "version": "2.2.0", + "resolved": "http://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", + "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", + "dev": true, + "requires": { + "chardet": "^0.4.0", + "iconv-lite": "^0.4.17", + "tmp": "^0.0.33" + } + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "inquirer": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", + "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", + "dev": true, + "requires": { + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.0.4", + "figures": "^2.0.0", + "lodash": "^4.3.0", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rx-lite": "^4.0.8", + "rx-lite-aggregates": "^4.0.8", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" + } + }, + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", + "dev": true + }, + "supports-color": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.0.1.tgz", + "integrity": "sha512-7FQGOlSQ+AQxBNXJpVDj8efTA/FtyB5wcNE1omXXJ0cq6jm1jjDwuROlYDbnzHqdNPqliWFhcioCWSyav+xBnA==", + "dev": true, + "requires": { + "has-flag": "^2.0.0" + } + } + } + }, + "@gemini-testing/worker-farm": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@gemini-testing/worker-farm/-/worker-farm-1.6.0.tgz", + "integrity": "sha512-YOmMjlhUo6ae5I7/6zKgpMurujOO5lfcWOPtX4Y+NN59EBoJuG0iX9vTvVz8uSO9najv+VfDmrfPHozapCmQ2g==", + "dev": true, + "requires": { + "errno": "~0.1.7" + } + }, + "@mrmlnc/readdir-enhanced": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", + "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", + "dev": true, + "requires": { + "call-me-maybe": "^1.0.1", + "glob-to-regexp": "^0.3.0" + } + }, + "@nodelib/fs.stat": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.2.tgz", + "integrity": "sha512-yprFYuno9FtNsSHVlSWd+nRlmGoAbqbeCwOryP6sC/zoCjhpArcRMYp19EvpSUSizJAlsXEwJv+wcWS9XaXdMw==", + "dev": true + }, + "JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "dev": true, + "requires": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + } + }, "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", @@ -158,6 +291,31 @@ "acorn": "^5.0.3" } }, + "acorn-node": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.6.0.tgz", + "integrity": "sha512-ZsysjEh+Y3i14f7YXCAKJy99RXbd56wHKYBzN4FlFtICIZyFpYwK6OwNJhcz8A/FMtxoUZkJofH1v9KIfNgWmw==", + "dev": true, + "requires": { + "acorn": "^6.0.1", + "acorn-walk": "^6.0.1", + "xtend": "^4.0.1" + }, + "dependencies": { + "acorn": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.0.2.tgz", + "integrity": "sha512-GXmKIvbrN3TV7aVqAzVFaMW8F8wzVX7voEBRO3bDA64+EX37YSayggRJP5Xig6HYHBkWKpFg9W5gg6orklubhg==", + "dev": true + } + } + }, + "acorn-walk": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.1.0.tgz", + "integrity": "sha512-ugTb7Lq7u4GfWSqqpwE0bGyoBZNMTok/zDBXxfEG0QM50jNlGhIWjRC1pPN7bvV1anhF+bs+/gNcRw+o55Evbg==", + "dev": true + }, "agent-base": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", @@ -179,6 +337,15 @@ "uri-js": "^4.2.2" } }, + "aliasify": { + "version": "1.9.0", + "resolved": "http://registry.npmjs.org/aliasify/-/aliasify-1.9.0.tgz", + "integrity": "sha1-A6oaX+W0ysYE47lnvEx86s+VcDA=", + "dev": true, + "requires": { + "browserify-transform-tools": "~1.5.1" + } + }, "align-text": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", @@ -250,6 +417,47 @@ "integrity": "sha512-BLM56aPo9vLLFVa8+/+pJLnrZ7QGGTVHWsCwieAWT9o9K8UeGaQbzZbGoabWLOo2ksBCztoXdqBZBplqLDDCSg==", "dev": true }, + "archiver": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-2.1.1.tgz", + "integrity": "sha1-/2YrSnggFJSj7lRNOjP+dJZQnrw=", + "dev": true, + "requires": { + "archiver-utils": "^1.3.0", + "async": "^2.0.0", + "buffer-crc32": "^0.2.1", + "glob": "^7.0.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0", + "tar-stream": "^1.5.0", + "zip-stream": "^1.2.0" + }, + "dependencies": { + "async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", + "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", + "dev": true, + "requires": { + "lodash": "^4.17.10" + } + } + } + }, + "archiver-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz", + "integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=", + "dev": true, + "requires": { + "glob": "^7.0.0", + "graceful-fs": "^4.1.0", + "lazystream": "^1.0.0", + "lodash": "^4.8.0", + "normalize-path": "^2.0.0", + "readable-stream": "^2.0.0" + } + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -277,11 +485,29 @@ "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", "dev": true }, + "array-filter": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", + "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=", + "dev": true + }, "array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" }, + "array-map": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", + "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=", + "dev": true + }, + "array-reduce": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", + "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=", + "dev": true + }, "array-union": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", @@ -309,6 +535,64 @@ "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", "dev": true }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", + "dev": true + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "assert": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", + "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "dev": true, + "requires": { + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, "assertion-error": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", @@ -338,12 +622,46 @@ "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==", "dev": true }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, "atob": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", "dev": true }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "dev": true + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "bail": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.3.tgz", + "integrity": "sha512-1X8CnjFVQ+a+KW36uBNMTU5s8+v5FzeqrP7hTG5aTb4aPreSbZJlhwPon9VKMuEVgV++JM+SQrALY3kr7eswdg==", + "dev": true + }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", @@ -412,6 +730,15 @@ "dev": true, "optional": true }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, "binary-extensions": { "version": "1.12.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.12.0.tgz", @@ -428,6 +755,27 @@ "safe-buffer": "^5.1.1" } }, + "bluebird": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.2.tgz", + "integrity": "sha512-dhHTWMI7kMx5whMQntl7Vr9C6BvV10lFXDAasnqnrMYhXVCzzk6IO9Fo2L75jXHT07WrOngL1WDXOp+yYS91Yg==", + "dev": true + }, + "bluebird-q": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bluebird-q/-/bluebird-q-2.1.1.tgz", + "integrity": "sha1-cfk9BVVdYNkPJzKK3Vcw2rlOmYs=", + "dev": true, + "requires": { + "bluebird": "^3.4.6" + } + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "dev": true + }, "body-parser": { "version": "1.18.3", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", @@ -445,6 +793,15 @@ "type-is": "~1.6.16" } }, + "boom": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", + "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", + "dev": true, + "requires": { + "hoek": "4.x.x" + } + }, "boxen": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", @@ -499,12 +856,249 @@ } } }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, + "browser-pack": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.1.0.tgz", + "integrity": "sha512-erYug8XoqzU3IfcU8fUgyHqyOXqIE4tUTTQ+7mqUjQlvnXkOO6OlT9c/ZoJVHYoAaqGxr09CN53G7XIsO4KtWA==", + "dev": true, + "requires": { + "JSONStream": "^1.0.3", + "combine-source-map": "~0.8.0", + "defined": "^1.0.0", + "safe-buffer": "^5.1.1", + "through2": "^2.0.0", + "umd": "^3.0.0" + } + }, + "browser-resolve": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", + "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", + "dev": true, + "requires": { + "resolve": "1.1.7" + }, + "dependencies": { + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + } + } + }, "browser-stdout": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", "dev": true }, + "browserify": { + "version": "13.3.0", + "resolved": "http://registry.npmjs.org/browserify/-/browserify-13.3.0.tgz", + "integrity": "sha1-tanJAgJD8McORnW+yCI7xifkFc4=", + "dev": true, + "requires": { + "JSONStream": "^1.0.3", + "assert": "^1.4.0", + "browser-pack": "^6.0.1", + "browser-resolve": "^1.11.0", + "browserify-zlib": "~0.1.2", + "buffer": "^4.1.0", + "cached-path-relative": "^1.0.0", + "concat-stream": "~1.5.1", + "console-browserify": "^1.1.0", + "constants-browserify": "~1.0.0", + "crypto-browserify": "^3.0.0", + "defined": "^1.0.0", + "deps-sort": "^2.0.0", + "domain-browser": "~1.1.0", + "duplexer2": "~0.1.2", + "events": "~1.1.0", + "glob": "^7.1.0", + "has": "^1.0.0", + "htmlescape": "^1.1.0", + "https-browserify": "~0.0.0", + "inherits": "~2.0.1", + "insert-module-globals": "^7.0.0", + "labeled-stream-splicer": "^2.0.0", + "module-deps": "^4.0.8", + "os-browserify": "~0.1.1", + "parents": "^1.0.1", + "path-browserify": "~0.0.0", + "process": "~0.11.0", + "punycode": "^1.3.2", + "querystring-es3": "~0.2.0", + "read-only-stream": "^2.0.0", + "readable-stream": "^2.0.2", + "resolve": "^1.1.4", + "shasum": "^1.0.0", + "shell-quote": "^1.6.1", + "stream-browserify": "^2.0.0", + "stream-http": "^2.0.0", + "string_decoder": "~0.10.0", + "subarg": "^1.0.0", + "syntax-error": "^1.1.1", + "through2": "^2.0.0", + "timers-browserify": "^1.0.1", + "tty-browserify": "~0.0.0", + "url": "~0.11.0", + "util": "~0.10.1", + "vm-browserify": "~0.0.1", + "xtend": "^4.0.0" + }, + "dependencies": { + "base64-js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", + "dev": true + }, + "buffer": { + "version": "4.9.1", + "resolved": "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "concat-stream": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", + "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "~2.0.0", + "typedarray": "~0.0.5" + }, + "dependencies": { + "readable-stream": { + "version": "2.0.6", + "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", + "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "~1.0.0", + "process-nextick-args": "~1.0.6", + "string_decoder": "~0.10.x", + "util-deprecate": "~1.0.1" + } + } + } + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "dev": true + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + } + } + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "dev": true, + "requires": { + "bn.js": "^4.1.1", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.2", + "elliptic": "^6.0.0", + "inherits": "^2.0.1", + "parse-asn1": "^5.0.0" + } + }, + "browserify-transform-tools": { + "version": "1.5.3", + "resolved": "http://registry.npmjs.org/browserify-transform-tools/-/browserify-transform-tools-1.5.3.tgz", + "integrity": "sha1-UJycZS+2sHvw0h787rsdgm+AdUs=", + "dev": true, + "requires": { + "falafel": "^1.0.1", + "through": "^2.3.7" + } + }, + "browserify-zlib": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", + "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=", + "dev": true, + "requires": { + "pako": "~0.2.0" + } + }, "buffer": { "version": "3.6.0", "resolved": "http://registry.npmjs.org/buffer/-/buffer-3.6.0.tgz", @@ -537,8 +1131,7 @@ "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", - "dev": true, - "optional": true + "dev": true }, "buffer-fill": { "version": "1.0.0", @@ -552,6 +1145,18 @@ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", "dev": true }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, "bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", @@ -574,6 +1179,18 @@ "unset-value": "^1.0.0" } }, + "cached-path-relative": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.0.1.tgz", + "integrity": "sha1-0JxLUoAKpMB44t2BqGmqyQ0uVOc=", + "dev": true + }, + "call-me-maybe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", + "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", + "dev": true + }, "caller-path": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", @@ -601,11 +1218,16 @@ "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", "dev": true }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, "center-align": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", - "optional": true, "requires": { "align-text": "^0.1.3", "lazy-cache": "^1.0.3" @@ -642,6 +1264,24 @@ "supports-color": "^5.3.0" } }, + "character-entities": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.2.tgz", + "integrity": "sha512-sMoHX6/nBiy3KKfC78dnEalnpn0Az0oSNvqUWYTtYrhRI5iUIYsROU48G+E+kMFQzqXaJ8kHJZ85n7y6/PHgwQ==", + "dev": true + }, + "character-entities-legacy": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.2.tgz", + "integrity": "sha512-9NB2VbXtXYWdXzqrvAHykE/f0QJxzaKIpZ5QzNZrrgQ7Iyxr2vnfS8fCBNVW9nUEZE0lo57nxKRqnzY/dKrwlA==", + "dev": true + }, + "character-reference-invalid": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.2.tgz", + "integrity": "sha512-7I/xceXfKyUJmSAn/jw8ve/9DyOP7XxufNYLI9Px7CmsKgEUaZLUTax6nZxGQtaoiZCjpu6cHPj20xC/vqRReQ==", + "dev": true + }, "chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", @@ -681,8 +1321,18 @@ "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==", "dev": true }, - "circular-json": { - "version": "0.3.3", + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "circular-json": { + "version": "0.3.3", "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", "dev": true @@ -710,6 +1360,16 @@ } } }, + "clear-require": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/clear-require/-/clear-require-1.0.1.tgz", + "integrity": "sha1-X+/mPx9XhpmgSbWF0xNq0qoPrX8=", + "dev": true, + "requires": { + "caller-path": "^0.1.0", + "resolve-from": "^1.0.0" + } + }, "cli-boxes": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", @@ -762,7 +1422,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "optional": true, "requires": { "center-align": "^0.1.1", "right-align": "^0.1.1", @@ -772,11 +1431,22 @@ "wordwrap": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "optional": true + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=" } } }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "collapse-white-space": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.4.tgz", + "integrity": "sha512-YfQ1tAUZm561vpYD+5eyWN8+UsceQbSrqqlc/6zDY2gtAE+uZLSdkkovhnGpmCThsvKBFakq4EdY/FF93E8XIw==", + "dev": true + }, "collection-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", @@ -787,6 +1457,15 @@ "object-visit": "^1.0.0" } }, + "collections": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/collections/-/collections-5.1.5.tgz", + "integrity": "sha1-VbkAeZMG1PvRw1h7H0AL99tXLXc=", + "dev": true, + "requires": { + "weak-map": "~1.0.x" + } + }, "color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", @@ -796,12 +1475,39 @@ "color-name": "1.1.3" } }, + "color-diff": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/color-diff/-/color-diff-1.1.0.tgz", + "integrity": "sha1-mDrn+TZnnpTjZd/kShaqFTva6I4=", + "dev": true + }, "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, + "combine-source-map": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz", + "integrity": "sha1-pY0N8ELBhvz4IqjoAV9UUNLXmos=", + "dev": true, + "requires": { + "convert-source-map": "~1.1.0", + "inline-source-map": "~0.6.0", + "lodash.memoize": "~3.0.3", + "source-map": "~0.5.3" + } + }, + "combined-stream": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", + "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, "commander": { "version": "2.8.1", "resolved": "http://registry.npmjs.org/commander/-/commander-2.8.1.tgz", @@ -818,6 +1524,18 @@ "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", "dev": true }, + "compress-commons": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", + "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=", + "dev": true, + "requires": { + "buffer-crc32": "^0.2.1", + "crc32-stream": "^2.0.0", + "normalize-path": "^2.0.0", + "readable-stream": "^2.0.0" + } + }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -850,6 +1568,21 @@ "xdg-basedir": "^3.0.0" } }, + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "dev": true, + "requires": { + "date-now": "^0.1.4" + } + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, "content-disposition": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", @@ -860,6 +1593,12 @@ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" }, + "convert-source-map": { + "version": "1.1.3", + "resolved": "http://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz", + "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=", + "dev": true + }, "cookie": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", @@ -876,12 +1615,65 @@ "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", "dev": true }, + "core-js": { + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz", + "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==", + "dev": true + }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", "dev": true }, + "crc": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", + "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", + "dev": true, + "requires": { + "buffer": "^5.1.0" + }, + "dependencies": { + "base64-js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", + "dev": true + }, + "buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz", + "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4" + } + } + } + }, + "crc32-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz", + "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=", + "dev": true, + "requires": { + "crc": "^3.4.4", + "readable-stream": "^2.0.0" + } + }, + "create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" + } + }, "create-error-class": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", @@ -891,6 +1683,33 @@ "capture-stack-trace": "^1.0.0" } }, + "create-hash": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, "cross-spawn": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", @@ -902,12 +1721,101 @@ "which": "^1.2.9" } }, + "cryptiles": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", + "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", + "dev": true, + "requires": { + "boom": "5.x.x" + }, + "dependencies": { + "boom": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", + "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", + "dev": true, + "requires": { + "hoek": "4.x.x" + } + } + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, "crypto-random-string": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", "dev": true }, + "css": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "css-parse": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", + "integrity": "sha1-pGjuZnwW2BzPBcWMONKpfHgNv9Q=", + "dev": true, + "requires": { + "css": "^2.0.0" + } + }, + "css-value": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/css-value/-/css-value-0.0.1.tgz", + "integrity": "sha1-Xv1sLupeof1rasV+wEJ7GEUkJOo=", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", + "dev": true + }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -919,8 +1827,7 @@ "decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "optional": true + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" }, "decode-uri-component": { "version": "0.2.0", @@ -1060,6 +1967,12 @@ "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", "dev": true }, + "deepmerge": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.0.1.tgz", + "integrity": "sha512-VIPwiMJqJ13ZQfaCsIFnp5Me9tnjURiaIFxfz7EH0Ci0dTSQpZtSLrqOicXqEd/z2r+z+Klk9GzmnRsgpgbOsQ==", + "dev": true + }, "define-property": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", @@ -1101,6 +2014,12 @@ } } }, + "defined": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", + "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", + "dev": true + }, "del": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", @@ -1124,22 +2043,71 @@ } } }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, "depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" }, + "deps-sort": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.0.tgz", + "integrity": "sha1-CRckkC6EZYJg65EHSMzNGvbiH7U=", + "dev": true, + "requires": { + "JSONStream": "^1.0.3", + "shasum": "^1.0.0", + "subarg": "^1.0.0", + "through2": "^2.0.0" + } + }, + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, "destroy": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" }, + "detective": { + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-4.7.1.tgz", + "integrity": "sha512-H6PmeeUcZloWtdt4DAkFyzFL94arpHr3NOwwmVILFiy+9Qd4JTxxXrzfyGk/lmct2qVGBwTSwSXagqu2BxmWig==", + "dev": true, + "requires": { + "acorn": "^5.2.1", + "defined": "^1.0.0" + } + }, "diff": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", "dev": true }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, "doctrine": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", @@ -1149,6 +2117,12 @@ "esutils": "^2.0.2" } }, + "domain-browser": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.7.tgz", + "integrity": "sha1-hnqksJP6oF8d4IwG9NeyH9+GmLw=", + "dev": true + }, "dot-prop": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", @@ -1164,17 +2138,57 @@ "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", "dev": true }, + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "dev": true, + "requires": { + "readable-stream": "^2.0.2" + } + }, "duplexer3": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", "dev": true }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, + "ejs": { + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.5.9.tgz", + "integrity": "sha512-GJCAeDBKfREgkBtgrYSf9hQy9kTb3helv0zGdzqhM7iAkW8FA/ZF97VQDbwFiwIT8MQLLOe5VlPZOEvZAqtUAQ==", + "dev": true + }, + "elliptic": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", + "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", + "dev": true, + "requires": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", @@ -1189,6 +2203,15 @@ "once": "^1.4.0" } }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "dev": true, + "requires": { + "prr": "~1.0.1" + } + }, "es6-promise": { "version": "4.2.5", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.5.tgz", @@ -1389,6 +2412,22 @@ "through": "^2.3.8" } }, + "events": { + "version": "1.1.1", + "resolved": "http://registry.npmjs.org/events/-/events-1.1.1.tgz", + "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", + "dev": true + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, "execa": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", @@ -1439,6 +2478,57 @@ } } }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "dev": true, + "requires": { + "fill-range": "^2.1.0" + }, + "dependencies": { + "fill-range": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", + "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "dev": true, + "requires": { + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^3.0.0", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" + } + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, "express": { "version": "4.16.4", "resolved": "https://registry.npmjs.org/express/-/express-4.16.4.tgz", @@ -1476,6 +2566,12 @@ "vary": "~1.1.2" } }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, "extend-shallow": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", @@ -1616,6 +2712,38 @@ } } }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "falafel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/falafel/-/falafel-1.2.0.tgz", + "integrity": "sha1-wY0k71CRF0pJfzGM0ksCaiXN2rQ=", + "dev": true, + "requires": { + "acorn": "^1.0.3", + "foreach": "^2.0.5", + "isarray": "0.0.1", + "object-keys": "^1.0.6" + }, + "dependencies": { + "acorn": { + "version": "1.2.2", + "resolved": "http://registry.npmjs.org/acorn/-/acorn-1.2.2.tgz", + "integrity": "sha1-yM4n3grMdtiW0rH6099YjZ6C8BQ=", + "dev": true + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + } + } + }, "fast-deep-equal": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", @@ -1628,6 +2756,20 @@ "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", "dev": true }, + "fast-glob": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.3.tgz", + "integrity": "sha512-NiX+JXjnx43RzvVFwRWfPKo4U+1BrK5pJPsHQdKMlLoFHrrGktXglQhHliSihWAq+m1z6fHk3uwGHrtRbS9vLA==", + "dev": true, + "requires": { + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.0.1", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", + "merge2": "^1.2.1", + "micromatch": "^3.1.10" + } + }, "fast-json-stable-stringify": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", @@ -1675,7 +2817,13 @@ "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=", "dev": true }, - "fill-range": { + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "dev": true + }, + "fill-range": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", @@ -1736,11 +2884,43 @@ "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", "dev": true }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true + }, "foreachasync": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/foreachasync/-/foreachasync-3.0.0.tgz", "integrity": "sha1-VQKYfchxS+M5IJfzLgBxyd7gfPY=" }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, "forwarded": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", @@ -1778,6 +2958,17 @@ "integrity": "sha512-2QY5eeqVv4m2PfyMiEuy9adxNP+ajf+8AR05cEi+OAzPcOj90hvFImeZhTmKLBgSd9EvG33jsD7ZRxsx9dThkQ==", "dev": true }, + "fs-extra": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-5.0.0.tgz", + "integrity": "sha512-66Pm4RYbjzdyeuqudYqhFiNBbCIuI9kgRqLPSHIlXHidW8NIQtVdkM1yeZ4lXwuhbTETv3EUGMNHAAw6hiundQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -2313,12 +3504,156 @@ } } }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, "functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, + "gaze": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", + "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", + "dev": true, + "requires": { + "globule": "^1.0.0" + } + }, + "gemini-configparser": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/gemini-configparser/-/gemini-configparser-1.0.0.tgz", + "integrity": "sha1-lKjZTqTqESh9nEChnHSSFo7toCA=", + "dev": true, + "requires": { + "lodash": "^4.17.4" + } + }, + "gemini-core": { + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/gemini-core/-/gemini-core-2.11.2.tgz", + "integrity": "sha512-pAMMLGTCeB5ZohO4hFKI6JrPHAad+mmCYWojOTg0USfPRW9of2Xc6IOvcY4zOPchM0M7dVF1WReJoxk9L8M2Vg==", + "dev": true, + "requires": { + "aliasify": "^1.9.0", + "bluebird": "^3.4.6", + "browserify": "^13.3.0", + "collections": "5.1.5", + "debug": "^2.2.0", + "gemini-configparser": "^1.0.0", + "glob-extra": "^4.0.0", + "lodash": "^4.15.0", + "looks-same": "^4.0.0", + "micromatch": "^2.3.11", + "png-img": "^2.1.1", + "sizzle": "^2.3.3", + "temp": "^0.8.3", + "uglify-js": "^2.8.29", + "uglifyify": "^3.0.4" + }, + "dependencies": { + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1" + } + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true, + "requires": { + "expand-range": "^1.8.1", + "preserve": "^0.2.0", + "repeat-element": "^1.1.2" + } + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true, + "requires": { + "is-posix-bracket": "^0.1.0" + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true, + "requires": { + "arr-diff": "^2.0.0", + "array-unique": "^0.2.1", + "braces": "^1.8.2", + "expand-brackets": "^0.1.4", + "extglob": "^0.3.1", + "filename-regex": "^2.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.1", + "kind-of": "^3.0.2", + "normalize-path": "^2.0.1", + "object.omit": "^2.0.0", + "parse-glob": "^3.0.4", + "regex-cache": "^0.4.2" + } + } + } + }, + "get-assigned-identifiers": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz", + "integrity": "sha512-mBBwmeGTrxEMO4pMaaf/uUEFHnYtwr8FTe8Y/mer4rcV/bye0qGm6pw1bGZFGStxC5O76c5ZAVBGnqHmOaJpdQ==", + "dev": true + }, "get-func-name": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", @@ -2337,6 +3672,15 @@ "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", "dev": true }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, "glob": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", @@ -2351,6 +3695,55 @@ "path-is-absolute": "^1.0.0" } }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true, + "requires": { + "glob-parent": "^2.0.0", + "is-glob": "^2.0.0" + }, + "dependencies": { + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "^2.0.0" + } + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + } + } + }, + "glob-extra": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/glob-extra/-/glob-extra-4.0.0.tgz", + "integrity": "sha512-CKVVPD3+Yv2AmJDHjqSggz43C1xP1pAZ7df/qRS5+VHqfolaZ3bizNn5g3weP6bIvDPZoR11uxsbuvEBqxAnJQ==", + "dev": true, + "requires": { + "bluebird": "^3.5.1", + "fast-glob": "^2.2.3", + "glob": "^7.0.5", + "lodash": "^4.15.0", + "minimatch": "^3.0.4" + } + }, "glob-parent": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", @@ -2372,6 +3765,12 @@ } } }, + "glob-to-regexp": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", + "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", + "dev": true + }, "global-dirs": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", @@ -2409,6 +3808,17 @@ } } }, + "globule": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz", + "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==", + "dev": true, + "requires": { + "glob": "~7.1.1", + "lodash": "~4.17.10", + "minimatch": "~3.0.2" + } + }, "got": { "version": "6.7.1", "resolved": "http://registry.npmjs.org/got/-/got-6.7.1.tgz", @@ -2468,6 +3878,74 @@ } } }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", + "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "dev": true, + "requires": { + "ajv": "^5.1.0", + "har-schema": "^2.0.0" + }, + "dependencies": { + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, + "requires": { + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" + } + }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "dev": true + } + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + } + } + }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -2506,6 +3984,38 @@ } } }, + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "hash.js": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.5.tgz", + "integrity": "sha512-eWI5HG9Np+eHV1KQhisXWwM+4EPPYe5dFX1UZZH7k/E3JzDEazVH+VGlZi6R94ZqImq+A3D1mCEtrFIfg/E7sA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "hawk": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", + "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", + "dev": true, + "requires": { + "boom": "4.x.x", + "cryptiles": "3.x.x", + "hoek": "4.x.x", + "sntp": "2.x.x" + } + }, "hbs": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/hbs/-/hbs-4.0.1.tgz", @@ -2521,6 +4031,279 @@ "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", "dev": true }, + "hermione": { + "version": "0.90.1", + "resolved": "https://registry.npmjs.org/hermione/-/hermione-0.90.1.tgz", + "integrity": "sha512-tauHvqRSTGjM/Q5XrSd65vc5qxjB8wT4yGXWrM9XXoxrgQGMtjVIxm7/fXbNTLyo4utGw6Qxcj7vDH/WdLcR3A==", + "dev": true, + "requires": { + "@gemini-testing/commander": "2.15.2", + "@gemini-testing/webdriverio": "4.9.11", + "@gemini-testing/worker-farm": "1.6.0", + "bluebird": "^3.5.1", + "bluebird-q": "^2.1.1", + "chalk": "^1.1.1", + "clear-require": "^1.0.1", + "fs-extra": "^5.0.0", + "gemini-configparser": "^1.0.0", + "gemini-core": "^2.11.2", + "inherit": "^2.2.2", + "lodash": "^4.17.4", + "mocha": "~2.4.5", + "plugins-loader": "^1.1.0", + "q": "^2.0.0", + "q-promise-utils": "^1.0.0", + "teamcity-service-messages": "^0.1.6", + "urijs": "^1.17.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "commander": { + "version": "2.3.0", + "resolved": "http://registry.npmjs.org/commander/-/commander-2.3.0.tgz", + "integrity": "sha1-/UMOiJgy7DU7ms0d4hfBHLPu+HM=", + "dev": true + }, + "debug": { + "version": "2.2.0", + "resolved": "http://registry.npmjs.org/debug/-/debug-2.2.0.tgz", + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", + "dev": true, + "requires": { + "ms": "0.7.1" + } + }, + "diff": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-1.4.0.tgz", + "integrity": "sha1-fyjS657nsVqX79ic5j3P2qPMur8=", + "dev": true + }, + "glob": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.3.tgz", + "integrity": "sha1-4xPusknHr/qlxHUoaw4RW1mDlGc=", + "dev": true, + "requires": { + "graceful-fs": "~2.0.0", + "inherits": "2", + "minimatch": "~0.2.11" + } + }, + "graceful-fs": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.3.tgz", + "integrity": "sha1-fNLNsiiko/Nule+mzBQt59GhNtA=", + "dev": true + }, + "growl": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.8.1.tgz", + "integrity": "sha1-Sy3sjZB+k9szZiTc7AGDUC+MlCg=", + "dev": true + }, + "lru-cache": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz", + "integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI=", + "dev": true + }, + "minimatch": { + "version": "0.2.14", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz", + "integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=", + "dev": true, + "requires": { + "lru-cache": "2", + "sigmund": "~1.0.0" + } + }, + "mocha": { + "version": "2.4.5", + "resolved": "http://registry.npmjs.org/mocha/-/mocha-2.4.5.tgz", + "integrity": "sha1-FRdo3Sh161G8gpXpgAAm6fK7OY8=", + "dev": true, + "requires": { + "commander": "2.3.0", + "debug": "2.2.0", + "diff": "1.4.0", + "escape-string-regexp": "1.0.2", + "glob": "3.2.3", + "growl": "1.8.1", + "jade": "0.26.3", + "mkdirp": "0.5.1", + "supports-color": "1.2.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.2.tgz", + "integrity": "sha1-Tbwv5nTnGUnK8/smlc5/LcHZqNE=", + "dev": true + }, + "supports-color": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-1.2.0.tgz", + "integrity": "sha1-/x7R5hFp0Gs88tWI4YixjYhH4X4=", + "dev": true + } + } + }, + "ms": { + "version": "0.7.1", + "resolved": "http://registry.npmjs.org/ms/-/ms-0.7.1.tgz", + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dev": true, + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "hoek": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz", + "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==", + "dev": true + }, + "html-reporter": { + "version": "2.22.0", + "resolved": "https://registry.npmjs.org/html-reporter/-/html-reporter-2.22.0.tgz", + "integrity": "sha512-Qobf1Cg9dSXtk7lnz05+zDHmYhedz5uvp16iiUxB1WxbgCwH/U5yQJsZt6Iaom4X8NHMVTGXGDADAXwAxU6z1g==", + "dev": true, + "requires": { + "bluebird": "^3.4.7", + "body-parser": "^1.18.2", + "chalk": "^1.1.3", + "express": "^4.16.2", + "fs-extra": "^2.1.2", + "gemini-configparser": "^1.0.0", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.17.4", + "opener": "^1.4.3", + "react-markdown": "^3.2.0", + "resolve": "^1.5.0", + "semver": "^5.5.0", + "shelljs": "^0.8.1", + "signal-exit": "^3.0.2", + "temp": "^0.8.3", + "urijs": "^1.18.12" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "fs-extra": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-2.1.2.tgz", + "integrity": "sha1-BGxwFjzvmq1GsOSn+kZ/si1x3jU=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^2.1.0" + } + }, + "jsonfile": { + "version": "2.4.0", + "resolved": "http://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", + "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "htmlescape": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz", + "integrity": "sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E=", + "dev": true + }, "http-errors": { "version": "1.6.3", "resolved": "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", @@ -2532,6 +4315,23 @@ "statuses": ">= 1.4.0 < 2" } }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "https-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.1.tgz", + "integrity": "sha1-P5E2XKvmC3ftDruiS0VOPgnZWoI=", + "dev": true + }, "https-proxy-agent": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz", @@ -2571,8 +4371,7 @@ "version": "1.1.12", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==", - "dev": true, - "optional": true + "dev": true }, "ignore": { "version": "4.0.6", @@ -2598,6 +4397,12 @@ "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true }, + "indexof": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", + "dev": true + }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -2608,6 +4413,12 @@ "wrappy": "1" } }, + "inherit": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/inherit/-/inherit-2.2.7.tgz", + "integrity": "sha512-dxJmC1j0Q32NFAjvbd6g3lXYLZ49HgzotgbSMwMkoiTXGhC9412Oc24g7A7M9cPPkw/vDsF2cSII+2zJwocUtQ==", + "dev": true + }, "inherits": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", @@ -2619,6 +4430,15 @@ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", "dev": true }, + "inline-source-map": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz", + "integrity": "sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU=", + "dev": true, + "requires": { + "source-map": "~0.5.3" + } + }, "inquirer": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.0.tgz", @@ -2640,6 +4460,30 @@ "through": "^2.3.6" } }, + "insert-module-globals": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.2.0.tgz", + "integrity": "sha512-VE6NlW+WGn2/AeOMd496AHFYmE7eLKkUY6Ty31k4og5vmA3Fjuwe9v6ifH6Xx/Hz27QvdoMoviw1/pqWRB09Sw==", + "dev": true, + "requires": { + "JSONStream": "^1.0.3", + "acorn-node": "^1.5.2", + "combine-source-map": "^0.8.0", + "concat-stream": "^1.6.1", + "is-buffer": "^1.1.0", + "path-is-absolute": "^1.0.1", + "process": "~0.11.0", + "through2": "^2.0.0", + "undeclared-identifiers": "^1.1.2", + "xtend": "^4.0.0" + } + }, + "interpret": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", + "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=", + "dev": true + }, "ipaddr.js": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz", @@ -2665,6 +4509,22 @@ } } }, + "is-alphabetical": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.2.tgz", + "integrity": "sha512-V0xN4BYezDHcBSKb1QHUFMlR4as/XEuCZBzMJUU4n7+Cbt33SmUnSol+pnXFvLxSHNq2CemUXNdaXV6Flg7+xg==", + "dev": true + }, + "is-alphanumerical": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.2.tgz", + "integrity": "sha512-pyfU/0kHdISIgslFfZN9nfY1Gk3MquQgUm1mJTjdkEPpkAKNWuBTSqFwewOpR7N351VkErCiyV71zX7mlQQqsg==", + "dev": true, + "requires": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + } + }, "is-binary-path": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", @@ -2708,6 +4568,12 @@ } } }, + "is-decimal": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.2.tgz", + "integrity": "sha512-TRzl7mOCchnhchN+f3ICUCzYvL9ul7R+TYOsZ8xia++knyZAJfv/uA1FvQXsAnYIl1T3B2X5E/J7Wb1QXiIBXg==", + "dev": true + }, "is-descriptor": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", @@ -2727,6 +4593,21 @@ } } }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", + "dev": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "dev": true, + "requires": { + "is-primitive": "^2.0.0" + } + }, "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", @@ -2754,6 +4635,12 @@ "is-extglob": "^2.1.1" } }, + "is-hexadecimal": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.2.tgz", + "integrity": "sha512-but/G3sapV3MNyqiDBLrOi4x8uCIw0RY3o/Vb5GT0sMFHrVV7731wFSVy41T5FO1og7G0gXLJh0MkgPRouko/A==", + "dev": true + }, "is-installed-globally": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", @@ -2827,6 +4714,12 @@ "path-is-inside": "^1.0.1" } }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + }, "is-plain-object": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", @@ -2836,6 +4729,18 @@ "isobject": "^3.0.1" } }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", + "dev": true + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", + "dev": true + }, "is-promise": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", @@ -2866,12 +4771,30 @@ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", "dev": true }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-whitespace-character": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.2.tgz", + "integrity": "sha512-SzM+T5GKUCtLhlHFKt2SDAX2RFzfS6joT91F2/WSi9LxgFdsnhfPK/UIA+JhRR2xuyLdrCys2PiFDrtn1fU5hQ==", + "dev": true + }, "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", "dev": true }, + "is-word-character": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.2.tgz", + "integrity": "sha512-T3FlsX8rCHAH8e7RE7PfOPZVFQlcV3XRF9eOOBQ1uf70OxO7CjjSOjeImMPCADBdYWcStAbVbYvJ1m2D3tb+EA==", + "dev": true + }, "is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", @@ -2905,6 +4828,12 @@ "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", "dev": true }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, "istanbul-lib-coverage": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", @@ -2926,6 +4855,30 @@ "semver": "^5.5.0" } }, + "jade": { + "version": "0.26.3", + "resolved": "https://registry.npmjs.org/jade/-/jade-0.26.3.tgz", + "integrity": "sha1-jxDXl32NefL2/4YqgbBRPMslaGw=", + "dev": true, + "requires": { + "commander": "0.6.1", + "mkdirp": "0.3.0" + }, + "dependencies": { + "commander": { + "version": "0.6.1", + "resolved": "http://registry.npmjs.org/commander/-/commander-0.6.1.tgz", + "integrity": "sha1-+mihT2qUXVTbvlDYzbMyDp47GgY=", + "dev": true + }, + "mkdirp": { + "version": "0.3.0", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz", + "integrity": "sha1-G79asbqCevI1dRQ0kEJkVfSB/h4=", + "dev": true + } + } + }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -2942,30 +4895,109 @@ "esprima": "^4.0.0" } }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, "jsesc": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", "dev": true }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, "json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, + "json-stable-stringify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz", + "integrity": "sha1-YRwj6BTbN1Un34URk9tZ3Sryf0U=", + "dev": true, + "requires": { + "jsonify": "~0.0.0" + } + }, "json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", "dev": true }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "dev": true + }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", "dev": true }, + "labeled-stream-splicer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.1.tgz", + "integrity": "sha512-MC94mHZRvJ3LfykJlTUipBqenZz1pacOZEMhhQ8dMGcDHs0SBE5GbsavUXV7YtP3icBW17W0Zy1I0lfASmo9Pg==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "isarray": "^2.0.4", + "stream-splicer": "^2.0.0" + }, + "dependencies": { + "isarray": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.4.tgz", + "integrity": "sha512-GMxXOiUirWg1xTKRipM0Ek07rX+ubx4nNVElTJdNLYmNO/2YrDkgJGw9CljXn+r4EWiDQg/8lsRdHyg2PJuUaA==", + "dev": true + } + } + }, "latest-version": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", @@ -2978,8 +5010,16 @@ "lazy-cache": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", - "optional": true + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" + }, + "lazystream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", + "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "dev": true, + "requires": { + "readable-stream": "^2.0.5" + } }, "levn": { "version": "0.3.0", @@ -3003,11 +5043,39 @@ "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", "dev": true }, + "lodash.memoize": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz", + "integrity": "sha1-LcvSwofLwKVcxCMovQxzYVDVPj8=", + "dev": true + }, "longest": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" }, + "looks-same": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/looks-same/-/looks-same-4.0.0.tgz", + "integrity": "sha512-VP/mQEWSsscmuUv+vifOg9wx/xmmBHoOWn/A1e6m5hUj5GilIMv4oCJYzfdI1Wedzwcmr4ynsgu8g/pB8DZbwA==", + "dev": true, + "requires": { + "color-diff": "^1.1.0", + "concat-stream": "^1.6.2", + "lodash": "^4.17.3", + "parse-color": "^1.0.0", + "pngjs": "^3.3.3" + } + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, "lowercase-keys": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", @@ -3045,13 +5113,45 @@ "integrity": "sha1-ih8HiW2CsQkmvTdEokIACfiJdKg=", "dev": true }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "markdown-escapes": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.2.tgz", + "integrity": "sha512-lbRZ2mE3Q9RtLjxZBZ9+IMl68DKIXaVAhwvwn9pmjnPLS0h/6kyBMgNhqi1xFJ/2yv6cSyv0jbiZavZv93JkkA==", + "dev": true + }, + "math-random": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", + "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=", + "dev": true + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", "dev": true, "requires": { - "object-visit": "^1.0.0" + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "mdast-add-list-metadata": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdast-add-list-metadata/-/mdast-add-list-metadata-1.0.1.tgz", + "integrity": "sha512-fB/VP4MJ0LaRsog7hGPxgOrSL3gE/2uEdZyDuSEnKCv/8IkYHiDkIQSbChiJoHyxZZXZ9bzckyRk+vNxFzh8rA==", + "dev": true, + "requires": { + "unist-util-visit-parents": "1.1.2" } }, "media-typer": { @@ -3064,6 +5164,12 @@ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" }, + "merge2": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.3.tgz", + "integrity": "sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA==", + "dev": true + }, "methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", @@ -3090,6 +5196,16 @@ "to-regex": "^3.0.2" } }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + } + }, "mime": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", @@ -3114,6 +5230,18 @@ "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", "dev": true }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -3226,6 +5354,70 @@ } } }, + "module-deps": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-4.1.1.tgz", + "integrity": "sha1-IyFYM/HaE/1gbMuAh7RIUty4If0=", + "dev": true, + "requires": { + "JSONStream": "^1.0.3", + "browser-resolve": "^1.7.0", + "cached-path-relative": "^1.0.0", + "concat-stream": "~1.5.0", + "defined": "^1.0.0", + "detective": "^4.0.0", + "duplexer2": "^0.1.2", + "inherits": "^2.0.1", + "parents": "^1.0.0", + "readable-stream": "^2.0.2", + "resolve": "^1.1.3", + "stream-combiner2": "^1.1.1", + "subarg": "^1.0.0", + "through2": "^2.0.0", + "xtend": "^4.0.0" + }, + "dependencies": { + "concat-stream": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", + "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "~2.0.0", + "typedarray": "~0.0.5" + }, + "dependencies": { + "readable-stream": { + "version": "2.0.6", + "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", + "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "~1.0.0", + "process-nextick-args": "~1.0.6", + "string_decoder": "~0.10.x", + "util-deprecate": "~1.0.1" + } + } + } + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "dev": true + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + } + } + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", @@ -3241,8 +5433,7 @@ "version": "2.11.1", "resolved": "https://registry.npmjs.org/nan/-/nan-2.11.1.tgz", "integrity": "sha512-iji6k87OSXa0CcrLl9z+ZiYSuR2o+c0bGuNmXdrhTQTakxytAFsC56SArGYoiHlJlFoHSnvmhpceZJaXkVuOtA==", - "dev": true, - "optional": true + "dev": true }, "nanomatch": { "version": "1.2.13", @@ -3382,6 +5573,12 @@ "remove-trailing-separator": "^1.0.1" } }, + "npm-install-package": { + "version": "2.1.0", + "resolved": "http://registry.npmjs.org/npm-install-package/-/npm-install-package-2.1.0.tgz", + "integrity": "sha1-1+/jz816sAYUuJbqUxGdyaslkSU=", + "dev": true + }, "npm-run-path": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", @@ -4530,6 +6727,12 @@ } } }, + "oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", + "dev": true + }, "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -4567,6 +6770,12 @@ } } }, + "object-keys": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", + "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", + "dev": true + }, "object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", @@ -4576,6 +6785,16 @@ "isobject": "^3.0.0" } }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, + "requires": { + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" + } + }, "object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", @@ -4611,6 +6830,12 @@ "mimic-fn": "^1.0.0" } }, + "opener": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.1.tgz", + "integrity": "sha512-goYSy5c2UXE4Ra1xixabeVh1guIX/ZV/YokJksb6q2lubWu6UbvPQ20p542/sFIll1nl8JnCyK9oBaOcCWXwvA==", + "dev": true + }, "opn": { "version": "5.4.0", "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", @@ -4658,6 +6883,12 @@ } } }, + "os-browserify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.1.2.tgz", + "integrity": "sha1-ScoCk+CxlZCl9d4Qx/JlphfY/lQ=", + "dev": true + }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", @@ -4682,6 +6913,94 @@ "semver": "^5.1.0" } }, + "pako": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", + "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=", + "dev": true + }, + "parents": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz", + "integrity": "sha1-/t1NK/GTp3dF/nHjcdc8MwfZx1E=", + "dev": true, + "requires": { + "path-platform": "~0.11.15" + } + }, + "parse-asn1": { + "version": "5.1.1", + "resolved": "http://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz", + "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", + "dev": true, + "requires": { + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3" + } + }, + "parse-color": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parse-color/-/parse-color-1.0.0.tgz", + "integrity": "sha1-e3SLlag/A/FqlPU15S1/PZRlhhk=", + "dev": true, + "requires": { + "color-convert": "~0.5.0" + }, + "dependencies": { + "color-convert": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-0.5.3.tgz", + "integrity": "sha1-vbbGnOZg+t/+CwAHzER+G59ygr0=", + "dev": true + } + } + }, + "parse-entities": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.0.tgz", + "integrity": "sha512-XXtDdOPLSB0sHecbEapQi6/58U/ODj/KWfIXmmMCJF/eRn8laX6LZbOyioMoETOOJoWRW8/qTSl5VQkUIfKM5g==", + "dev": true, + "requires": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + } + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true, + "requires": { + "glob-base": "^0.3.0", + "is-dotfile": "^1.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.0" + }, + "dependencies": { + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + } + } + }, "parseurl": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", @@ -4693,6 +7012,12 @@ "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", "dev": true }, + "path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", + "dev": true + }, "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", @@ -4717,6 +7042,18 @@ "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", "dev": true }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-platform": { + "version": "0.11.15", + "resolved": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz", + "integrity": "sha1-6GQhf3TDaFDwhSt43Hv31KVyG/I=", + "dev": true + }, "path-to-regexp": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", @@ -4737,12 +7074,31 @@ "through": "~2.3" } }, + "pbkdf2": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", + "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", + "dev": true, + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, "pend": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", "dev": true }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, "pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", @@ -4764,12 +7120,42 @@ "pinkie": "^2.0.0" } }, + "plugins-loader": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/plugins-loader/-/plugins-loader-1.1.0.tgz", + "integrity": "sha512-AVLb8tpRhQn3buabonz19+VMBc2CW1iLFuZzEiIqHqsCdBgE6PRZ/YtPyKtYv91Esp7WRFAH+ruUtRnkQwrxwA==", + "dev": true, + "requires": { + "lodash": "^4.16.4" + } + }, "pluralize": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", "dev": true }, + "png-img": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/png-img/-/png-img-2.2.0.tgz", + "integrity": "sha512-rdWIsOuM9NH8fZUUa098Y1GmPjysadTwTYOBNM6JeteBX5NShLtq/aBomfb48d/Q4bNe+H3g5FvH0UD+LiAN1g==", + "dev": true, + "requires": { + "nan": "^2.0.4" + } + }, + "pngjs": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.3.3.tgz", + "integrity": "sha512-1n3Z4p3IOxArEs1VRXnZ/RXdfEniAUS9jb68g58FIXMNkPJeZd+Qh4Uq7/e0LVxAQGos1eIUrqrt4FpjdnEd+Q==", + "dev": true + }, + "pop-iterate": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/pop-iterate/-/pop-iterate-1.0.1.tgz", + "integrity": "sha1-zqz9q0q/NT16DyqqLB/Hs/lBO6M=", + "dev": true + }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", @@ -4788,6 +7174,12 @@ "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", "dev": true }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "dev": true + }, "prettier": { "version": "1.14.3", "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.14.3.tgz", @@ -4803,6 +7195,12 @@ "fast-diff": "^1.1.2" } }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true + }, "process-nextick-args": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", @@ -4815,6 +7213,16 @@ "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=", "dev": true }, + "prop-types": { + "version": "15.6.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.2.tgz", + "integrity": "sha512-3pboPvLiWD7dkI3qf3KbUe6hKFKa52w+AE0VCqECtf+QHAKgOL37tTaNCnuX1nAAQ4ZhyP+kYVKf8rLmJ/feDQ==", + "dev": true, + "requires": { + "loose-envify": "^1.3.1", + "object-assign": "^4.1.1" + } + }, "proxy-addr": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz", @@ -4830,6 +7238,12 @@ "integrity": "sha1-M8UDmPcOp+uW0h97gXYwpVeRx+4=", "dev": true }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, "ps-tree": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/ps-tree/-/ps-tree-1.1.0.tgz", @@ -4854,6 +7268,20 @@ "ps-tree": "^1.1.0" } }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -4908,11 +7336,96 @@ } } }, + "q": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/q/-/q-2.0.3.tgz", + "integrity": "sha1-dbjbAlWhpa+C9Yw/Oqoe/sfQ0TQ=", + "dev": true, + "requires": { + "asap": "^2.0.0", + "pop-iterate": "^1.0.1", + "weak-map": "^1.0.5" + } + }, + "q-promise-utils": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/q-promise-utils/-/q-promise-utils-1.1.0.tgz", + "integrity": "sha1-WuKbb/9pPQGmLCMCDlRLUS1Kkio=", + "dev": true, + "requires": { + "lodash": "^3.10.1", + "q": "^1.4.1" + }, + "dependencies": { + "lodash": { + "version": "3.10.1", + "resolved": "http://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", + "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", + "dev": true + }, + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", + "dev": true + } + } + }, "qs": { "version": "6.5.2", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true + }, + "randomatic": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.0.tgz", + "integrity": "sha512-KnGPVE0lo2WoXxIZ7cPR8YBpiol4gsSuOwDSg410oHh80ZMp5EiypNqL2K4Z77vJn6lB5rap7IkAmcUlalcnBQ==", + "dev": true, + "requires": { + "is-number": "^4.0.0", + "kind-of": "^6.0.0", + "math-random": "^1.0.1" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } + } + }, + "randombytes": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", + "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, "range-parser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", @@ -4941,6 +7454,29 @@ "strip-json-comments": "~2.0.1" } }, + "react-markdown": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/react-markdown/-/react-markdown-3.6.0.tgz", + "integrity": "sha512-TV0wQDHHPCEeKJHWXFfEAKJ8uSEsJ9LgrMERkXx05WV/3q6Ig+59KDNaTmjcoqlCpE/sH5PqqLMh4t0QWKrJ8Q==", + "dev": true, + "requires": { + "mdast-add-list-metadata": "1.0.1", + "prop-types": "^15.6.1", + "remark-parse": "^5.0.0", + "unified": "^6.1.5", + "unist-util-visit": "^1.3.0", + "xtend": "^4.0.1" + } + }, + "read-only-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz", + "integrity": "sha1-JyT9aoET1zdkrCiNQ4YnDB2/F/A=", + "dev": true, + "requires": { + "readable-stream": "^2.0.2" + } + }, "readable-stream": { "version": "2.3.6", "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", @@ -4967,6 +7503,30 @@ "readable-stream": "^2.0.2" } }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", + "dev": true, + "requires": { + "resolve": "^1.1.6" + } + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true, + "requires": { + "is-equal-shallow": "^0.1.3" + } + }, "regex-not": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", @@ -5002,6 +7562,29 @@ "rc": "^1.0.1" } }, + "remark-parse": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-5.0.0.tgz", + "integrity": "sha512-b3iXszZLH1TLoyUzrATcTQUZrwNl1rE70rVdSruJFlDaJ9z5aMkhrG43Pp68OgfHndL/ADz6V69Zow8cTQu+JA==", + "dev": true, + "requires": { + "collapse-white-space": "^1.0.2", + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "is-word-character": "^1.0.0", + "markdown-escapes": "^1.0.0", + "parse-entities": "^1.1.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "trim": "0.0.1", + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^1.0.0", + "vfile-location": "^2.0.0", + "xtend": "^4.0.1" + } + }, "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", @@ -5019,6 +7602,42 @@ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" }, + "replace-ext": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", + "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", + "dev": true + }, + "request": { + "version": "2.83.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.83.0.tgz", + "integrity": "sha512-lR3gD69osqm6EYLk9wB/G1W/laGWjzH90t1vEa2xuxHD5KUrSzp9pUSfTm+YC5Nxt2T8nMPEvKlhbQayU7bgFw==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.6.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.5", + "extend": "~3.0.1", + "forever-agent": "~0.6.1", + "form-data": "~2.3.1", + "har-validator": "~5.0.3", + "hawk": "~6.0.2", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.17", + "oauth-sign": "~0.8.2", + "performance-now": "^2.1.0", + "qs": "~6.5.1", + "safe-buffer": "^5.1.1", + "stringstream": "~0.0.5", + "tough-cookie": "~2.3.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.1.0" + } + }, "require-uncached": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", @@ -5029,6 +7648,15 @@ "resolve-from": "^1.0.0" } }, + "resolve": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", + "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", + "dev": true, + "requires": { + "path-parse": "^1.0.5" + } + }, "resolve-from": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", @@ -5057,11 +7685,16 @@ "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", "dev": true }, + "rgb2hex": { + "version": "0.1.9", + "resolved": "https://registry.npmjs.org/rgb2hex/-/rgb2hex-0.1.9.tgz", + "integrity": "sha512-32iuQzhOjyT+cv9aAFRBJ19JgHwzQwbjUhH3Fj2sWW2EEGAW8fpFrDFP5ndoKDxJaLO06x1hE3kyuIFrUQtybQ==", + "dev": true + }, "right-align": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", - "optional": true, "requires": { "align-text": "^0.1.1" } @@ -5075,13 +7708,38 @@ "glob": "^7.0.5" } }, - "run-async": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true, + "requires": { + "is-promise": "^2.1.0" + } + }, + "rx-lite": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", + "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", + "dev": true + }, + "rx-lite-aggregates": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", + "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", "dev": true, "requires": { - "is-promise": "^2.1.0" + "rx-lite": "*" } }, "rxjs": { @@ -5196,6 +7854,26 @@ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" }, + "sha.js": { + "version": "2.4.11", + "resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "shasum": { + "version": "1.0.2", + "resolved": "http://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz", + "integrity": "sha1-5wEjENj0F/TetXEhUOVni4euVl8=", + "dev": true, + "requires": { + "json-stable-stringify": "~0.0.0", + "sha.js": "~2.4.4" + } + }, "shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", @@ -5211,12 +7889,53 @@ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", "dev": true }, + "shell-quote": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", + "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", + "dev": true, + "requires": { + "array-filter": "~0.0.0", + "array-map": "~0.0.0", + "array-reduce": "~0.0.0", + "jsonify": "~0.0.0" + } + }, + "shelljs": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.2.tgz", + "integrity": "sha512-pRXeNrCA2Wd9itwhvLp5LZQvPJ0wU6bcjaTMywHHGX5XWhVN2nzSu7WV0q+oUY7mGK3mgSkDDzP3MgjqdyIgbQ==", + "dev": true, + "requires": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + } + }, + "sigmund": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", + "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=", + "dev": true + }, "signal-exit": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", "dev": true }, + "simple-concat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.0.tgz", + "integrity": "sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY=", + "dev": true + }, + "sizzle": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/sizzle/-/sizzle-2.3.3.tgz", + "integrity": "sha1-TrB4w3IxpWtS5Bk/cB5++JN+YGs=", + "dev": true + }, "slice-ansi": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", @@ -5333,6 +8052,15 @@ } } }, + "sntp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", + "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", + "dev": true, + "requires": { + "hoek": "4.x.x" + } + }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", @@ -5381,6 +8109,29 @@ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, + "sshpk": { + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.15.1.tgz", + "integrity": "sha512-mSdgNUaidk+dRU5MhYtN9zebdzF2iG0cNPWy8HG+W8y+fT1JnSkh0fzzpjOa0L7P8i1Rscz38t0h4gPcKz43xA==", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "state-toggle": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.1.tgz", + "integrity": "sha512-Qe8QntFrrpWTnHwvwj2FZTgv+PKIsp0B9VxLzLLbSpPXWOgRgc5LVj/aTiSfK1RqIeF9jeC1UeOH8Q8y60A7og==", + "dev": true + }, "static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", @@ -5407,6 +8158,16 @@ "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" }, + "stream-browserify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", + "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, "stream-combiner": { "version": "0.2.2", "resolved": "http://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz", @@ -5417,6 +8178,39 @@ "through": "~2.3.4" } }, + "stream-combiner2": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", + "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=", + "dev": true, + "requires": { + "duplexer2": "~0.1.0", + "readable-stream": "^2.0.2" + } + }, + "stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "stream-splicer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.0.tgz", + "integrity": "sha1-G2O+Q4oTPktnHMGTUZdgAXWRDYM=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.2" + } + }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", @@ -5436,6 +8230,12 @@ "safe-buffer": "~5.1.0" } }, + "stringstream": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz", + "integrity": "sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==", + "dev": true + }, "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", @@ -5467,6 +8267,15 @@ "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", "dev": true }, + "subarg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", + "integrity": "sha1-9izxdYHplrSPyWVpn1TAauJouNI=", + "dev": true, + "requires": { + "minimist": "^1.1.0" + } + }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -5476,6 +8285,15 @@ "has-flag": "^3.0.0" } }, + "syntax-error": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.4.0.tgz", + "integrity": "sha512-YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==", + "dev": true, + "requires": { + "acorn-node": "^1.2.0" + } + }, "table": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/table/-/table-5.1.0.tgz", @@ -5503,6 +8321,30 @@ "xtend": "^4.0.0" } }, + "teamcity-service-messages": { + "version": "0.1.9", + "resolved": "https://registry.npmjs.org/teamcity-service-messages/-/teamcity-service-messages-0.1.9.tgz", + "integrity": "sha512-agmBUllpL8n02cG/6s16St5yXYEdynkyyGDWM5qsFq9sKEkc+gBAJgcgJQCVsqlxbZZUToRwTI1hLataRjCGcw==", + "dev": true + }, + "temp": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/temp/-/temp-0.8.3.tgz", + "integrity": "sha1-4Ma8TSa5AxJEEOT+2BEDAU38H1k=", + "dev": true, + "requires": { + "os-tmpdir": "^1.0.0", + "rimraf": "~2.2.6" + }, + "dependencies": { + "rimraf": { + "version": "2.2.8", + "resolved": "http://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz", + "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=", + "dev": true + } + } + }, "term-size": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", @@ -5524,12 +8366,31 @@ "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", "dev": true }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "dev": true, + "requires": { + "readable-stream": "^2.1.5", + "xtend": "~4.0.1" + } + }, "timed-out": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", "dev": true }, + "timers-browserify": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz", + "integrity": "sha1-ycWLV1voQHN1y14kYtrO50NZ9B0=", + "dev": true, + "requires": { + "process": "~0.11.0" + } + }, "tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -5539,6 +8400,12 @@ "os-tmpdir": "~1.0.2" } }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true + }, "to-buffer": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", @@ -5602,18 +8469,74 @@ "nopt": "~1.0.10" } }, + "tough-cookie": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", + "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", + "dev": true, + "requires": { + "punycode": "^1.4.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } + }, + "trim": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", + "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=", + "dev": true + }, "trim-right": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", "dev": true }, + "trim-trailing-lines": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.1.tgz", + "integrity": "sha512-bWLv9BbWbbd7mlqqs2oQYnLD/U/ZqeJeJwbO0FG2zA1aTq+HTvxfHNKFa/HGCVyJpDiioUYaBhfiT6rgk+l4mg==", + "dev": true + }, + "trough": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.3.tgz", + "integrity": "sha512-fwkLWH+DimvA4YCy+/nvJd61nWQQ2liO/nF/RjkTpiOGi+zxZzVkhb1mvbHIIW4b/8nDsYI8uTmAlc0nNkRMOw==", + "dev": true + }, "tslib": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", "dev": true }, + "tty-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", + "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, "type-check": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", @@ -5648,7 +8571,6 @@ "version": "2.8.29", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", - "optional": true, "requires": { "source-map": "~0.5.1", "uglify-to-browserify": "~1.0.0", @@ -5661,6 +8583,33 @@ "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", "optional": true }, + "uglifyify": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/uglifyify/-/uglifyify-3.0.4.tgz", + "integrity": "sha1-SH4IClp3mIgOaOkN75sGaB+xO9I=", + "dev": true, + "requires": { + "convert-source-map": "~1.1.0", + "extend": "^1.2.1", + "minimatch": "^3.0.2", + "through": "~2.3.4", + "uglify-js": "2.x.x" + }, + "dependencies": { + "extend": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extend/-/extend-1.3.0.tgz", + "integrity": "sha1-0VFvsP9WJNLr+RI+odrFoZlABPg=", + "dev": true + } + } + }, + "umd": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/umd/-/umd-3.0.3.tgz", + "integrity": "sha512-4IcGSufhFshvLNcMCV80UnQVlZ5pMOC8mvNPForqwA4+lzYQuetTESLDQkeLmihq8bRcnpbQa48Wb8Lh16/xow==", + "dev": true + }, "unbzip2-stream": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.3.1.tgz", @@ -5672,6 +8621,18 @@ "through": "^2.3.6" } }, + "undeclared-identifiers": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/undeclared-identifiers/-/undeclared-identifiers-1.1.2.tgz", + "integrity": "sha512-13EaeocO4edF/3JKime9rD7oB6QI8llAGhgn5fKOPyfkJbRb6NFv9pYV6dFEmpa4uRjKeBqLZP8GpuzqHlKDMQ==", + "dev": true, + "requires": { + "acorn-node": "^1.3.0", + "get-assigned-identifiers": "^1.2.0", + "simple-concat": "^1.0.0", + "xtend": "^4.0.1" + } + }, "undefsafe": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.2.tgz", @@ -5681,6 +8642,30 @@ "debug": "^2.2.0" } }, + "unherit": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.1.tgz", + "integrity": "sha512-+XZuV691Cn4zHsK0vkKYwBEwB74T3IZIcxrgn2E4rKwTfFyI1zCh7X7grwh9Re08fdPlarIdyWgI8aVB3F5A5g==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "xtend": "^4.0.1" + } + }, + "unified": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-6.2.0.tgz", + "integrity": "sha512-1k+KPhlVtqmG99RaTbAv/usu85fcSRu3wY8X+vnsEhIxNP5VbVIDiXnLqyKIG+UMdyTg0ZX9EI6k2AfjJkHPtA==", + "dev": true, + "requires": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^1.1.0", + "trough": "^1.0.0", + "vfile": "^2.0.0", + "x-is-string": "^0.1.0" + } + }, "union-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", @@ -5725,6 +8710,59 @@ "crypto-random-string": "^1.0.0" } }, + "unist-util-is": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-2.1.2.tgz", + "integrity": "sha512-YkXBK/H9raAmG7KXck+UUpnKiNmUdB+aBGrknfQ4EreE1banuzrKABx3jP6Z5Z3fMSPMQQmeXBlKpCbMwBkxVw==", + "dev": true + }, + "unist-util-remove-position": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-1.1.2.tgz", + "integrity": "sha512-XxoNOBvq1WXRKXxgnSYbtCF76TJrRoe5++pD4cCBsssSiWSnPEktyFrFLE8LTk3JW5mt9hB0Sk5zn4x/JeWY7Q==", + "dev": true, + "requires": { + "unist-util-visit": "^1.1.0" + } + }, + "unist-util-stringify-position": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-1.1.2.tgz", + "integrity": "sha512-pNCVrk64LZv1kElr0N1wPiHEUoXNVFERp+mlTg/s9R5Lwg87f9bM/3sQB99w+N9D/qnM9ar3+AKDBwo/gm/iQQ==", + "dev": true + }, + "unist-util-visit": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.4.0.tgz", + "integrity": "sha512-FiGu34ziNsZA3ZUteZxSFaczIjGmksfSgdKqBfOejrrfzyUy5b7YrlzT1Bcvi+djkYDituJDy2XB7tGTeBieKw==", + "dev": true, + "requires": { + "unist-util-visit-parents": "^2.0.0" + }, + "dependencies": { + "unist-util-visit-parents": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-2.0.1.tgz", + "integrity": "sha512-6B0UTiMfdWql4cQ03gDTCSns+64Zkfo2OCbK31Ov0uMizEz+CJeAp0cgZVb5Fhmcd7Bct2iRNywejT0orpbqUA==", + "dev": true, + "requires": { + "unist-util-is": "^2.1.2" + } + } + } + }, + "unist-util-visit-parents": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-1.1.2.tgz", + "integrity": "sha512-yvo+MMLjEwdc3RhhPYSximset7rwjMrdt9E41Smmvg25UQIenzrN83cRnF1JMzoMi9zZOQeYXHSDf7p+IQkW3Q==", + "dev": true + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + }, "unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", @@ -5809,12 +8847,36 @@ "punycode": "^2.1.0" } }, + "urijs": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.1.tgz", + "integrity": "sha512-xVrGVi94ueCJNrBSTjWqjvtgvl3cyOTThp2zaMaFNGp3F542TR6sM3f2o8RqZl+AwteClSVmoCyt0ka4RjQOQg==", + "dev": true + }, "urix": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", "dev": true }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } + }, "url-parse-lax": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", @@ -5830,6 +8892,15 @@ "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", "dev": true }, + "util": { + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "dev": true, + "requires": { + "inherits": "2.0.3" + } + }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -5841,11 +8912,70 @@ "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "dev": true + }, + "validator": { + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/validator/-/validator-9.1.2.tgz", + "integrity": "sha512-1Tml6crNdsSC61jHssWksQxq6C7MmSFCCmf99Eb+l/V/cwVlw4/Pg3YXBP1WKcHLsyqe3E+iJXUZgoTTQFcqQg==", + "dev": true + }, "vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "vfile": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-2.3.0.tgz", + "integrity": "sha512-ASt4mBUHcTpMKD/l5Q+WJXNtshlWxOogYyGYYrg4lt/vuRjC1EFQtlAofL5VmtVNIZJzWYFJjzGWZ0Gw8pzW1w==", + "dev": true, + "requires": { + "is-buffer": "^1.1.4", + "replace-ext": "1.0.0", + "unist-util-stringify-position": "^1.0.0", + "vfile-message": "^1.0.0" + } + }, + "vfile-location": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-2.0.3.tgz", + "integrity": "sha512-zM5/l4lfw1CBoPx3Jimxoc5RNDAHHpk6AM6LM0pTIkm5SUSsx8ZekZ0PVdf0WEZ7kjlhSt7ZlqbRL6Cd6dBs6A==", + "dev": true + }, + "vfile-message": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-1.0.1.tgz", + "integrity": "sha512-vSGCkhNvJzO6VcWC6AlJW4NtYOVtS+RgCaqFIYUjoGIlHnFL+i0LbtYvonDWOMcB97uTPT4PRsyYY7REWC9vug==", + "dev": true, + "requires": { + "unist-util-stringify-position": "^1.1.1" + } + }, + "vm-browserify": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", + "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", + "dev": true, + "requires": { + "indexof": "0.0.1" + } + }, "walk": { "version": "2.3.9", "resolved": "https://registry.npmjs.org/walk/-/walk-2.3.9.tgz", @@ -5854,6 +8984,24 @@ "foreachasync": "^3.0.0" } }, + "wdio-dot-reporter": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/wdio-dot-reporter/-/wdio-dot-reporter-0.0.10.tgz", + "integrity": "sha512-A0TCk2JdZEn3M1DSG9YYbNRcGdx/YRw19lTiRpgwzH4qqWkO/oRDZRmi3Snn4L2j54KKTfPalBhlOtc8fojVgg==", + "dev": true + }, + "weak-map": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/weak-map/-/weak-map-1.0.5.tgz", + "integrity": "sha1-eWkVhNmGB/UHC9O3CkDmuyLkAes=", + "dev": true + }, + "wgxpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wgxpath/-/wgxpath-1.0.0.tgz", + "integrity": "sha1-7vikudVYzEla06mit1FZfs2a9pA=", + "dev": true + }, "which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", @@ -5875,8 +9023,7 @@ "window-size": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", - "optional": true + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=" }, "wordwrap": { "version": "0.0.3", @@ -5918,6 +9065,12 @@ "async-limiter": "~1.0.0" } }, + "x-is-string": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/x-is-string/-/x-is-string-0.1.0.tgz", + "integrity": "sha1-R0tQhlrzpJqcRlfwWs0UVFj3fYI=", + "dev": true + }, "xdg-basedir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", @@ -5946,7 +9099,6 @@ "version": "3.10.0", "resolved": "http://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", - "optional": true, "requires": { "camelcase": "^1.0.2", "cliui": "^2.1.0", @@ -5957,8 +9109,7 @@ "camelcase": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "optional": true + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" } } }, @@ -5972,6 +9123,18 @@ "buffer-crc32": "~0.2.3", "fd-slicer": "~1.1.0" } + }, + "zip-stream": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz", + "integrity": "sha1-qLxF9MG0lpnGuQGYuqyqzbzUugQ=", + "dev": true, + "requires": { + "archiver-utils": "^1.3.0", + "compress-commons": "^1.2.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0" + } } } } diff --git a/package.json b/package.json index 118c19c..56ff9ae 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,8 @@ "start": "node ./bin/www", "dev": "nodemon ./bin/www", "debug": "ndb", - "lint": "./node_modules/.bin/eslint --fix tests" + "lint": "eslint --fix tests", + "hermione": "hermione hermione" }, "keywords": [], "author": "", @@ -23,6 +24,8 @@ "chai-shallow-deep-equal": "^1.4.6", "eslint": "^5.7.0", "eslint-plugin-prettier": "^3.0.0", + "hermione": "^0.90.1", + "html-reporter": "^2.22.0", "mocha": "^5.2.0", "ndb": "^1.0.26", "nodemon": "^1.18.4", From 42cb0189de995faca5589aeb93cc914dd789f977 Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Mon, 22 Oct 2018 01:32:38 +0300 Subject: [PATCH 12/18] =?UTF-8?q?=D0=9C=D0=BE=D0=BA=20=D1=80=D0=B5=D0=BF?= =?UTF-8?q?=D0=BE=D0=B7=D0=B8=D1=82=D0=BE=D1=80=D0=B8=D1=8F=20=D0=B4=D0=BB?= =?UTF-8?q?=D1=8F=20staging?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/consts.js | 7 + fixtures/repo.git/HEAD | 1 + fixtures/repo.git/config | 4 + fixtures/repo.git/description | 1 + fixtures/repo.git/hooks/applypatch-msg.sample | 15 ++ fixtures/repo.git/hooks/commit-msg.sample | 24 +++ fixtures/repo.git/hooks/post-update.sample | 8 + fixtures/repo.git/hooks/pre-applypatch.sample | 14 ++ fixtures/repo.git/hooks/pre-commit.sample | 49 +++++ fixtures/repo.git/hooks/pre-push.sample | 53 ++++++ fixtures/repo.git/hooks/pre-rebase.sample | 169 ++++++++++++++++++ .../repo.git/hooks/prepare-commit-msg.sample | 36 ++++ fixtures/repo.git/hooks/update.sample | 128 +++++++++++++ fixtures/repo.git/info/exclude | 6 + .../02/14d7d93fb7cf06ccfcb8d544c25b093228814a | Bin 0 -> 595 bytes .../02/eda20b3e0966af9ca1efdb69fd00eae5b8ccb9 | Bin 0 -> 1248 bytes .../03/16a98e0eec3c526f67976e12d2af77fa09dc70 | Bin 0 -> 222 bytes .../05/94bb070657550e3e305ba5fe2de0e46ddb10a3 | Bin 0 -> 714 bytes .../07/9b7e72864a3b2623a5ca5ebff99f2e493c31ea | Bin 0 -> 79 bytes .../07/a50cb300eb3f1e09c0ef798bf76a66ea547dac | Bin 0 -> 63 bytes .../09/04a40fd2a21e1ba979b2a1c2ad70cbead32e8d | Bin 0 -> 433 bytes .../0a/4d70a04ce94f7ffd176272da4fd381681115bc | Bin 0 -> 1807 bytes .../0b/67453d327edf0fc42ce002105a38123f631657 | Bin 0 -> 432 bytes .../0d/b6cc3de5fefb30ceafa8b06780953115b33c26 | Bin 0 -> 433 bytes .../10/06b469d1e97421643a622475285a170dac25f8 | Bin 0 -> 285 bytes .../10/4cc38bbc5416252cdeac15238b3aaceccbaa8d | Bin 0 -> 51864 bytes .../11/8c19c06afcfe6b709d4739443e859f5cf50454 | 2 + .../14/dd485eaf8e2a9fb6bd070c24bce71fd8e89113 | Bin 0 -> 404 bytes .../15/7fbecb59a9a3ab30a753b52618bc1a46f293ee | Bin 0 -> 63 bytes .../15/a3b665f02587571c137d2525a7b607a1cb1b33 | 1 + .../17/605188faec24540ae3f413bb6d113821f76ea6 | Bin 0 -> 174 bytes .../18/d6a273fda0cda46fae345db5d64f3c8208706c | Bin 0 -> 400 bytes .../19/de222f9203cd751c5ad8396a9b8a8e91233dc7 | Bin 0 -> 404 bytes .../1a/3c12b118bf123395852a688e46bab374c4c261 | Bin 0 -> 63 bytes .../1f/eb731464534e9da6f85acfc1c93d9360fdaba1 | Bin 0 -> 91 bytes .../22/0ae8ef248e310e5ad4d8f8a79cb00485c3dc81 | Bin 0 -> 82 bytes .../23/1bdfa47fd49343bb48ed0b1bcb85691072be76 | Bin 0 -> 202 bytes .../26/1ec38fbd0efd118e173f8103b476fd51e513e0 | Bin 0 -> 746 bytes .../26/30aeb17b84f80e7444968e6b4444eb3ec48b66 | Bin 0 -> 719 bytes .../27/2c7c018ebc33dfd5cb8c9002afc03baeb65aec | Bin 0 -> 337 bytes .../2f/477b850f24c436827c59af473ddf335bc90a57 | Bin 0 -> 117 bytes .../30/f7559d9cf4a047b956b72d7365488af7041689 | Bin 0 -> 125 bytes .../31/9fbf0a3a566d577bb044b61ab3365610b8a0ed | 1 + .../33/9a0cebf88c1eac07052a66d8ef94b5cf29c624 | Bin 0 -> 1390 bytes .../33/c9a3e8069695b985c1a35bfff7d51159f4e32d | 2 + .../37/ff4813eb92480f8f3b24e4150326036da48adb | Bin 0 -> 404 bytes .../38/f7e868eb3c33874570c98334636d69d191f2ca | Bin 0 -> 62 bytes .../39/7c2eb6d3efa290263d2ee54490b213992942f2 | Bin 0 -> 1096 bytes .../3a/3e4259a367ca2135b7744fb0aae3f235226664 | 2 + .../3a/6250c33c8e18c7c9bd318e9ae0e7c1a5ec4df8 | Bin 0 -> 239 bytes .../3d/40a4d2f0cbb0f4f345a95cb4cce8582767f1f2 | Bin 0 -> 231 bytes .../3d/f62f06a24c1af9aec86d7983e9d6e7186423bd | Bin 0 -> 337 bytes .../3f/74a7be31f054915003a3a18a048e745ef1d3e7 | Bin 0 -> 746 bytes .../41/f44ce9e7c660ceee5ebaec082104ef5d4db5c0 | Bin 0 -> 85616 bytes .../47/e2fe8ad13acf67a0e4fde3af6502df3933964a | Bin 0 -> 1210 bytes .../56/ff9ae0f4d6f5382b3ed5c0c77c1eb1ca8dd4ef | 1 + .../57/c8ad89987958b87025d1b13f5d9f7435bc2626 | Bin 0 -> 1432 bytes .../5a/04432f6f98aafe86e671995f089b256b677d8b | Bin 0 -> 86 bytes .../5c/4c9fbf3b06fa07d0022dddfde91e47566d1672 | Bin 0 -> 63 bytes .../60/a99af3fb954d4784eb2238b8e06b2f42bcd625 | Bin 0 -> 1212 bytes .../61/d23f4f64857be6f1235782c055a1aa262acaea | Bin 0 -> 254 bytes .../63/087a9b2c1926bc1bdd13e46239a6aa3ce7a67a | 2 + .../66/d1fd496879eb4073cf2e861fc518209f04f3db | Bin 0 -> 465 bytes .../6c/3e5ca455f91ee5a2fe48ab5206c7cc995a7a79 | 5 + .../6d/bcbd358b1f14a47a2c36bc300a752f1fbf4df7 | Bin 0 -> 63 bytes .../6f/0999086bbd86ea7e8024e7809b9ee2b0349408 | Bin 0 -> 57 bytes .../73/ecb7f9b6eac965dc35f3af9110b6383fa48569 | Bin 0 -> 47 bytes .../79/d0c280a3184f6278259dfc5a67ee517d666014 | Bin 0 -> 1397 bytes .../79/eec830de6fa907a6f6a1e176f0e4d9dea3c600 | Bin 0 -> 206 bytes .../7b/0aafd9e1a67392c6492e340ce52ab8624360c4 | Bin 0 -> 86 bytes .../7c/a983dadaf374d2bbd001447d49c9bf34cc54fc | 1 + .../7c/c425367131bd7c17c73450e491dc8f919b7d00 | Bin 0 -> 466 bytes .../7d/8579db6e97875bb42cc5fbd07ec7b0512a5039 | Bin 0 -> 1368 bytes .../7f/f3ebde13487c566a7c8b526d6d02fecf585025 | Bin 0 -> 36 bytes .../86/0505b7d44027cf3d7390996dce38008b783760 | Bin 0 -> 337 bytes .../86/1ae6bbea91b4c564368f266617374583d83478 | Bin 0 -> 433 bytes .../88/7e1cbc6d9cfacba20c41b03583dd1612dca683 | Bin 0 -> 1360 bytes .../89/f5eca8135b6f4f64a19a3813ea3a30eed2e8d3 | Bin 0 -> 548 bytes .../8d/073c4ad36112ac94181032d623bf4b6f8712d3 | Bin 0 -> 743 bytes .../8f/5fd2854932694d70f0f73a20ae255daf429652 | Bin 0 -> 939 bytes .../93/4c2a011d111a5f944fec4d4c916ec33baea958 | Bin 0 -> 433 bytes .../94/692330292eff46d2dd362708540eb6b91b8160 | Bin 0 -> 125 bytes .../99/15248038de3cda750a07d4cde03aa16fcf629d | Bin 0 -> 43693 bytes .../9a/337a5283378ca41c884a12fb1e5d119dd41554 | Bin 0 -> 156 bytes .../9b/406f59179a5ebf9ee120ca7c4a7ceced0e6192 | Bin 0 -> 125 bytes .../9c/fa4bdd2d4bc428ea158c658a95a4a8bfb3e3ec | Bin 0 -> 386 bytes .../9d/c4c7306bed48491c5887daaacf222a1eeb0b60 | Bin 0 -> 433 bytes .../9e/7628ae885214ca2cabafe129efbd7aff3c9628 | Bin 0 -> 56 bytes .../9f/05bce0ed5aa9b207686429e7da2b3df5803615 | Bin 0 -> 465 bytes .../a0/265778b3cb1f48d2c1f8824d8d848a2a0b6f24 | Bin 0 -> 356 bytes .../a2/e7b9f70d3426f86b000c275cbed1abd02c0a08 | 2 + .../a3/5931b770328564ddde0ca70ccdab832b22e97a | 1 + .../a3/edd8b041d894c59c06638f003d5a5cac9a5424 | Bin 0 -> 434 bytes .../a4/e98fe9d6e8aaa48e7126139680106fd7a2a732 | Bin 0 -> 287 bytes .../a5/296b429b84d5147c923a34ef7ff4e95c0f8352 | Bin 0 -> 1200 bytes .../a6/50ac6d04e840290cf02bc4e8fcf917d2f1c4d0 | 2 + .../aa/cdbe66133bde6fdeef0d268791dfc84d9600a9 | Bin 0 -> 1296 bytes .../ac/8b1946ecbcdec188a0c67c5187cd9884c0e56c | 2 + .../ae/a80198499e567b0bace2ead0a58f2aea2df30d | Bin 0 -> 433 bytes .../b5/809f6d2d86cbe8d75b343d8460f46b6e16a0e5 | Bin 0 -> 60 bytes .../bb/28337f8b3fbf98cd1bcb24ec17cd0b97914929 | Bin 0 -> 86 bytes .../bc/b538ed4458270c8eb678251e949fbb06c5159b | 2 + .../bd/db3db94fe7b8db26de11863d505d51f6adb11b | 2 + .../bd/f937f896fd5987ddd9a9cef93f78378ebb49be | Bin 0 -> 727 bytes .../be/437414cc451649a596a8b841c8fb704add652b | 3 + .../bf/5febfd6f9d51245d3c53f49d5c4ff72ccc82e9 | 1 + .../bf/6f83f2779b4829ee5301211352f3a3814feedb | 2 + .../c8/1643d8fa442b8bd2ed46569f158cd27977b916 | 1 + .../ca/495c7e5a5e684ae974e2a8cfff401a3ed2ac33 | Bin 0 -> 432 bytes .../ce/05148d97ffe3292a2ed8adb9ddc41da3ba3f86 | Bin 0 -> 433 bytes .../d0/9947be3657a158af4af2303895bef0af206787 | Bin 0 -> 698 bytes .../d3/3d23c95637c9266405497b2c50123100fe7d3d | Bin 0 -> 405 bytes .../d3/b5b29cf126502b255282a00b19b0dd1711ed0c | 3 + .../d6/d0878ebbac696b6ac64fd1835f735a55c11cff | 3 + .../db/b9ce967b1be6ee2c4810d5510e6412266e61cb | Bin 0 -> 1385 bytes .../dc/294226663773910fe289d1a06201fd72ef0fd0 | Bin 0 -> 1349 bytes .../dc/4a6ee4ba07076809598566179530a56492b2fa | Bin 0 -> 205 bytes .../e1/02d52abefd86fb2e30bbb3751e0f0432834fd2 | Bin 0 -> 295 bytes .../e3/8428fe36c7396c3dd3cb4c2d442bf58e1ed199 | Bin 0 -> 623 bytes .../e5/70c2a09de1ea9149f378e0a5541904e1e45945 | 2 + .../e5/9107221978e96341be91d9fbc0c19f0e286280 | Bin 0 -> 433 bytes .../e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 | Bin 0 -> 15 bytes .../e8/7ef205e1400db04baae7e51b0966cc74519a4e | Bin 0 -> 370 bytes .../eb/18b98db87c323ca270929e93c40a1f74d5b7e9 | Bin 0 -> 465 bytes .../ed/d8e12442bbde86e50a9bd2fe92e1373ac76a2c | Bin 0 -> 406 bytes .../ee/9469684b181311d58d9f588f55c62f4188d9f6 | Bin 0 -> 295 bytes .../f7/934474d4abc47e654fee4c81c4257448cad7a1 | Bin 0 -> 211 bytes .../f8/0ee9009ed1f5557af00f312ec464dcc8f93e88 | Bin 0 -> 196 bytes .../f8/feb6312c4f9262dfa9544647b3bf662c8704da | Bin 0 -> 200 bytes .../f9/55adfc43b8dc46359b0cc1f1265506d80f0644 | 1 + .../f9/6510a9cb5c98ec787bdc4947a4d857bcd8912d | Bin 0 -> 51731 bytes .../fa/33312d96d1eda72976f9035ab726addd5e4629 | Bin 0 -> 1302 bytes .../fa/8d3bce1091cf8026bab06d40a3f085b1f426bb | Bin 0 -> 337 bytes .../fa/b91793b552be8589f2958c44f4180c3f28813a | Bin 0 -> 1169 bytes .../fc/5eb1237ea6d7541b06b268bc13d45bc65fab46 | 2 + .../fd/9ac3355dd8e97818e10a8e0a84e9803581ef96 | Bin 0 -> 285 bytes .../fd/ddec6b39ab3afd0c3024ced96d1efb4ecf369e | Bin 0 -> 630 bytes .../ff/ef230954df4ca106d71abb05b793269f18337c | Bin 0 -> 91 bytes ...fa1f630022b8e000404cf744493bdd30d0e325.idx | Bin 0 -> 4740 bytes ...a1f630022b8e000404cf744493bdd30d0e325.pack | Bin 0 -> 45148 bytes fixtures/repo.git/packed-refs | 2 + package.json | 1 + utils/git.js | 3 +- 143 files changed, 565 insertions(+), 2 deletions(-) create mode 100644 config/consts.js create mode 100644 fixtures/repo.git/HEAD create mode 100644 fixtures/repo.git/config create mode 100644 fixtures/repo.git/description create mode 100755 fixtures/repo.git/hooks/applypatch-msg.sample create mode 100755 fixtures/repo.git/hooks/commit-msg.sample create mode 100755 fixtures/repo.git/hooks/post-update.sample create mode 100755 fixtures/repo.git/hooks/pre-applypatch.sample create mode 100755 fixtures/repo.git/hooks/pre-commit.sample create mode 100755 fixtures/repo.git/hooks/pre-push.sample create mode 100755 fixtures/repo.git/hooks/pre-rebase.sample create mode 100755 fixtures/repo.git/hooks/prepare-commit-msg.sample create mode 100755 fixtures/repo.git/hooks/update.sample create mode 100644 fixtures/repo.git/info/exclude create mode 100644 fixtures/repo.git/objects/02/14d7d93fb7cf06ccfcb8d544c25b093228814a create mode 100644 fixtures/repo.git/objects/02/eda20b3e0966af9ca1efdb69fd00eae5b8ccb9 create mode 100644 fixtures/repo.git/objects/03/16a98e0eec3c526f67976e12d2af77fa09dc70 create mode 100644 fixtures/repo.git/objects/05/94bb070657550e3e305ba5fe2de0e46ddb10a3 create mode 100644 fixtures/repo.git/objects/07/9b7e72864a3b2623a5ca5ebff99f2e493c31ea create mode 100644 fixtures/repo.git/objects/07/a50cb300eb3f1e09c0ef798bf76a66ea547dac create mode 100644 fixtures/repo.git/objects/09/04a40fd2a21e1ba979b2a1c2ad70cbead32e8d create mode 100644 fixtures/repo.git/objects/0a/4d70a04ce94f7ffd176272da4fd381681115bc create mode 100644 fixtures/repo.git/objects/0b/67453d327edf0fc42ce002105a38123f631657 create mode 100644 fixtures/repo.git/objects/0d/b6cc3de5fefb30ceafa8b06780953115b33c26 create mode 100644 fixtures/repo.git/objects/10/06b469d1e97421643a622475285a170dac25f8 create mode 100644 fixtures/repo.git/objects/10/4cc38bbc5416252cdeac15238b3aaceccbaa8d create mode 100644 fixtures/repo.git/objects/11/8c19c06afcfe6b709d4739443e859f5cf50454 create mode 100644 fixtures/repo.git/objects/14/dd485eaf8e2a9fb6bd070c24bce71fd8e89113 create mode 100644 fixtures/repo.git/objects/15/7fbecb59a9a3ab30a753b52618bc1a46f293ee create mode 100644 fixtures/repo.git/objects/15/a3b665f02587571c137d2525a7b607a1cb1b33 create mode 100644 fixtures/repo.git/objects/17/605188faec24540ae3f413bb6d113821f76ea6 create mode 100644 fixtures/repo.git/objects/18/d6a273fda0cda46fae345db5d64f3c8208706c create mode 100644 fixtures/repo.git/objects/19/de222f9203cd751c5ad8396a9b8a8e91233dc7 create mode 100644 fixtures/repo.git/objects/1a/3c12b118bf123395852a688e46bab374c4c261 create mode 100644 fixtures/repo.git/objects/1f/eb731464534e9da6f85acfc1c93d9360fdaba1 create mode 100644 fixtures/repo.git/objects/22/0ae8ef248e310e5ad4d8f8a79cb00485c3dc81 create mode 100644 fixtures/repo.git/objects/23/1bdfa47fd49343bb48ed0b1bcb85691072be76 create mode 100644 fixtures/repo.git/objects/26/1ec38fbd0efd118e173f8103b476fd51e513e0 create mode 100644 fixtures/repo.git/objects/26/30aeb17b84f80e7444968e6b4444eb3ec48b66 create mode 100644 fixtures/repo.git/objects/27/2c7c018ebc33dfd5cb8c9002afc03baeb65aec create mode 100644 fixtures/repo.git/objects/2f/477b850f24c436827c59af473ddf335bc90a57 create mode 100644 fixtures/repo.git/objects/30/f7559d9cf4a047b956b72d7365488af7041689 create mode 100644 fixtures/repo.git/objects/31/9fbf0a3a566d577bb044b61ab3365610b8a0ed create mode 100644 fixtures/repo.git/objects/33/9a0cebf88c1eac07052a66d8ef94b5cf29c624 create mode 100644 fixtures/repo.git/objects/33/c9a3e8069695b985c1a35bfff7d51159f4e32d create mode 100644 fixtures/repo.git/objects/37/ff4813eb92480f8f3b24e4150326036da48adb create mode 100644 fixtures/repo.git/objects/38/f7e868eb3c33874570c98334636d69d191f2ca create mode 100644 fixtures/repo.git/objects/39/7c2eb6d3efa290263d2ee54490b213992942f2 create mode 100644 fixtures/repo.git/objects/3a/3e4259a367ca2135b7744fb0aae3f235226664 create mode 100644 fixtures/repo.git/objects/3a/6250c33c8e18c7c9bd318e9ae0e7c1a5ec4df8 create mode 100644 fixtures/repo.git/objects/3d/40a4d2f0cbb0f4f345a95cb4cce8582767f1f2 create mode 100644 fixtures/repo.git/objects/3d/f62f06a24c1af9aec86d7983e9d6e7186423bd create mode 100644 fixtures/repo.git/objects/3f/74a7be31f054915003a3a18a048e745ef1d3e7 create mode 100644 fixtures/repo.git/objects/41/f44ce9e7c660ceee5ebaec082104ef5d4db5c0 create mode 100644 fixtures/repo.git/objects/47/e2fe8ad13acf67a0e4fde3af6502df3933964a create mode 100644 fixtures/repo.git/objects/56/ff9ae0f4d6f5382b3ed5c0c77c1eb1ca8dd4ef create mode 100644 fixtures/repo.git/objects/57/c8ad89987958b87025d1b13f5d9f7435bc2626 create mode 100644 fixtures/repo.git/objects/5a/04432f6f98aafe86e671995f089b256b677d8b create mode 100644 fixtures/repo.git/objects/5c/4c9fbf3b06fa07d0022dddfde91e47566d1672 create mode 100644 fixtures/repo.git/objects/60/a99af3fb954d4784eb2238b8e06b2f42bcd625 create mode 100644 fixtures/repo.git/objects/61/d23f4f64857be6f1235782c055a1aa262acaea create mode 100644 fixtures/repo.git/objects/63/087a9b2c1926bc1bdd13e46239a6aa3ce7a67a create mode 100644 fixtures/repo.git/objects/66/d1fd496879eb4073cf2e861fc518209f04f3db create mode 100644 fixtures/repo.git/objects/6c/3e5ca455f91ee5a2fe48ab5206c7cc995a7a79 create mode 100644 fixtures/repo.git/objects/6d/bcbd358b1f14a47a2c36bc300a752f1fbf4df7 create mode 100644 fixtures/repo.git/objects/6f/0999086bbd86ea7e8024e7809b9ee2b0349408 create mode 100644 fixtures/repo.git/objects/73/ecb7f9b6eac965dc35f3af9110b6383fa48569 create mode 100644 fixtures/repo.git/objects/79/d0c280a3184f6278259dfc5a67ee517d666014 create mode 100644 fixtures/repo.git/objects/79/eec830de6fa907a6f6a1e176f0e4d9dea3c600 create mode 100644 fixtures/repo.git/objects/7b/0aafd9e1a67392c6492e340ce52ab8624360c4 create mode 100644 fixtures/repo.git/objects/7c/a983dadaf374d2bbd001447d49c9bf34cc54fc create mode 100644 fixtures/repo.git/objects/7c/c425367131bd7c17c73450e491dc8f919b7d00 create mode 100644 fixtures/repo.git/objects/7d/8579db6e97875bb42cc5fbd07ec7b0512a5039 create mode 100644 fixtures/repo.git/objects/7f/f3ebde13487c566a7c8b526d6d02fecf585025 create mode 100644 fixtures/repo.git/objects/86/0505b7d44027cf3d7390996dce38008b783760 create mode 100644 fixtures/repo.git/objects/86/1ae6bbea91b4c564368f266617374583d83478 create mode 100644 fixtures/repo.git/objects/88/7e1cbc6d9cfacba20c41b03583dd1612dca683 create mode 100644 fixtures/repo.git/objects/89/f5eca8135b6f4f64a19a3813ea3a30eed2e8d3 create mode 100644 fixtures/repo.git/objects/8d/073c4ad36112ac94181032d623bf4b6f8712d3 create mode 100644 fixtures/repo.git/objects/8f/5fd2854932694d70f0f73a20ae255daf429652 create mode 100644 fixtures/repo.git/objects/93/4c2a011d111a5f944fec4d4c916ec33baea958 create mode 100644 fixtures/repo.git/objects/94/692330292eff46d2dd362708540eb6b91b8160 create mode 100644 fixtures/repo.git/objects/99/15248038de3cda750a07d4cde03aa16fcf629d create mode 100644 fixtures/repo.git/objects/9a/337a5283378ca41c884a12fb1e5d119dd41554 create mode 100644 fixtures/repo.git/objects/9b/406f59179a5ebf9ee120ca7c4a7ceced0e6192 create mode 100644 fixtures/repo.git/objects/9c/fa4bdd2d4bc428ea158c658a95a4a8bfb3e3ec create mode 100644 fixtures/repo.git/objects/9d/c4c7306bed48491c5887daaacf222a1eeb0b60 create mode 100644 fixtures/repo.git/objects/9e/7628ae885214ca2cabafe129efbd7aff3c9628 create mode 100644 fixtures/repo.git/objects/9f/05bce0ed5aa9b207686429e7da2b3df5803615 create mode 100644 fixtures/repo.git/objects/a0/265778b3cb1f48d2c1f8824d8d848a2a0b6f24 create mode 100644 fixtures/repo.git/objects/a2/e7b9f70d3426f86b000c275cbed1abd02c0a08 create mode 100644 fixtures/repo.git/objects/a3/5931b770328564ddde0ca70ccdab832b22e97a create mode 100644 fixtures/repo.git/objects/a3/edd8b041d894c59c06638f003d5a5cac9a5424 create mode 100644 fixtures/repo.git/objects/a4/e98fe9d6e8aaa48e7126139680106fd7a2a732 create mode 100644 fixtures/repo.git/objects/a5/296b429b84d5147c923a34ef7ff4e95c0f8352 create mode 100644 fixtures/repo.git/objects/a6/50ac6d04e840290cf02bc4e8fcf917d2f1c4d0 create mode 100644 fixtures/repo.git/objects/aa/cdbe66133bde6fdeef0d268791dfc84d9600a9 create mode 100644 fixtures/repo.git/objects/ac/8b1946ecbcdec188a0c67c5187cd9884c0e56c create mode 100644 fixtures/repo.git/objects/ae/a80198499e567b0bace2ead0a58f2aea2df30d create mode 100644 fixtures/repo.git/objects/b5/809f6d2d86cbe8d75b343d8460f46b6e16a0e5 create mode 100644 fixtures/repo.git/objects/bb/28337f8b3fbf98cd1bcb24ec17cd0b97914929 create mode 100644 fixtures/repo.git/objects/bc/b538ed4458270c8eb678251e949fbb06c5159b create mode 100644 fixtures/repo.git/objects/bd/db3db94fe7b8db26de11863d505d51f6adb11b create mode 100644 fixtures/repo.git/objects/bd/f937f896fd5987ddd9a9cef93f78378ebb49be create mode 100644 fixtures/repo.git/objects/be/437414cc451649a596a8b841c8fb704add652b create mode 100644 fixtures/repo.git/objects/bf/5febfd6f9d51245d3c53f49d5c4ff72ccc82e9 create mode 100644 fixtures/repo.git/objects/bf/6f83f2779b4829ee5301211352f3a3814feedb create mode 100644 fixtures/repo.git/objects/c8/1643d8fa442b8bd2ed46569f158cd27977b916 create mode 100644 fixtures/repo.git/objects/ca/495c7e5a5e684ae974e2a8cfff401a3ed2ac33 create mode 100644 fixtures/repo.git/objects/ce/05148d97ffe3292a2ed8adb9ddc41da3ba3f86 create mode 100644 fixtures/repo.git/objects/d0/9947be3657a158af4af2303895bef0af206787 create mode 100644 fixtures/repo.git/objects/d3/3d23c95637c9266405497b2c50123100fe7d3d create mode 100644 fixtures/repo.git/objects/d3/b5b29cf126502b255282a00b19b0dd1711ed0c create mode 100644 fixtures/repo.git/objects/d6/d0878ebbac696b6ac64fd1835f735a55c11cff create mode 100644 fixtures/repo.git/objects/db/b9ce967b1be6ee2c4810d5510e6412266e61cb create mode 100644 fixtures/repo.git/objects/dc/294226663773910fe289d1a06201fd72ef0fd0 create mode 100644 fixtures/repo.git/objects/dc/4a6ee4ba07076809598566179530a56492b2fa create mode 100644 fixtures/repo.git/objects/e1/02d52abefd86fb2e30bbb3751e0f0432834fd2 create mode 100644 fixtures/repo.git/objects/e3/8428fe36c7396c3dd3cb4c2d442bf58e1ed199 create mode 100644 fixtures/repo.git/objects/e5/70c2a09de1ea9149f378e0a5541904e1e45945 create mode 100644 fixtures/repo.git/objects/e5/9107221978e96341be91d9fbc0c19f0e286280 create mode 100644 fixtures/repo.git/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 create mode 100644 fixtures/repo.git/objects/e8/7ef205e1400db04baae7e51b0966cc74519a4e create mode 100644 fixtures/repo.git/objects/eb/18b98db87c323ca270929e93c40a1f74d5b7e9 create mode 100644 fixtures/repo.git/objects/ed/d8e12442bbde86e50a9bd2fe92e1373ac76a2c create mode 100644 fixtures/repo.git/objects/ee/9469684b181311d58d9f588f55c62f4188d9f6 create mode 100644 fixtures/repo.git/objects/f7/934474d4abc47e654fee4c81c4257448cad7a1 create mode 100644 fixtures/repo.git/objects/f8/0ee9009ed1f5557af00f312ec464dcc8f93e88 create mode 100644 fixtures/repo.git/objects/f8/feb6312c4f9262dfa9544647b3bf662c8704da create mode 100644 fixtures/repo.git/objects/f9/55adfc43b8dc46359b0cc1f1265506d80f0644 create mode 100644 fixtures/repo.git/objects/f9/6510a9cb5c98ec787bdc4947a4d857bcd8912d create mode 100644 fixtures/repo.git/objects/fa/33312d96d1eda72976f9035ab726addd5e4629 create mode 100644 fixtures/repo.git/objects/fa/8d3bce1091cf8026bab06d40a3f085b1f426bb create mode 100644 fixtures/repo.git/objects/fa/b91793b552be8589f2958c44f4180c3f28813a create mode 100644 fixtures/repo.git/objects/fc/5eb1237ea6d7541b06b268bc13d45bc65fab46 create mode 100644 fixtures/repo.git/objects/fd/9ac3355dd8e97818e10a8e0a84e9803581ef96 create mode 100644 fixtures/repo.git/objects/fd/ddec6b39ab3afd0c3024ced96d1efb4ecf369e create mode 100644 fixtures/repo.git/objects/ff/ef230954df4ca106d71abb05b793269f18337c create mode 100644 fixtures/repo.git/objects/pack/pack-e7fa1f630022b8e000404cf744493bdd30d0e325.idx create mode 100644 fixtures/repo.git/objects/pack/pack-e7fa1f630022b8e000404cf744493bdd30d0e325.pack create mode 100644 fixtures/repo.git/packed-refs diff --git a/config/consts.js b/config/consts.js new file mode 100644 index 0000000..6e0e210 --- /dev/null +++ b/config/consts.js @@ -0,0 +1,7 @@ +const { resolve } = require('path'); + +const REPO = process.env.NODE_ENV === 'staging' ? resolve('./fixtures/repo.git') : resolve('.'); + +module.exports = { + REPO +}; diff --git a/fixtures/repo.git/HEAD b/fixtures/repo.git/HEAD new file mode 100644 index 0000000..cb089cd --- /dev/null +++ b/fixtures/repo.git/HEAD @@ -0,0 +1 @@ +ref: refs/heads/master diff --git a/fixtures/repo.git/config b/fixtures/repo.git/config new file mode 100644 index 0000000..07d359d --- /dev/null +++ b/fixtures/repo.git/config @@ -0,0 +1,4 @@ +[core] + repositoryformatversion = 0 + filemode = true + bare = true diff --git a/fixtures/repo.git/description b/fixtures/repo.git/description new file mode 100644 index 0000000..498b267 --- /dev/null +++ b/fixtures/repo.git/description @@ -0,0 +1 @@ +Unnamed repository; edit this file 'description' to name the repository. diff --git a/fixtures/repo.git/hooks/applypatch-msg.sample b/fixtures/repo.git/hooks/applypatch-msg.sample new file mode 100755 index 0000000..a5d7b84 --- /dev/null +++ b/fixtures/repo.git/hooks/applypatch-msg.sample @@ -0,0 +1,15 @@ +#!/bin/sh +# +# An example hook script to check the commit log message taken by +# applypatch from an e-mail message. +# +# The hook should exit with non-zero status after issuing an +# appropriate message if it wants to stop the commit. The hook is +# allowed to edit the commit message file. +# +# To enable this hook, rename this file to "applypatch-msg". + +. git-sh-setup +commitmsg="$(git rev-parse --git-path hooks/commit-msg)" +test -x "$commitmsg" && exec "$commitmsg" ${1+"$@"} +: diff --git a/fixtures/repo.git/hooks/commit-msg.sample b/fixtures/repo.git/hooks/commit-msg.sample new file mode 100755 index 0000000..b58d118 --- /dev/null +++ b/fixtures/repo.git/hooks/commit-msg.sample @@ -0,0 +1,24 @@ +#!/bin/sh +# +# An example hook script to check the commit log message. +# Called by "git commit" with one argument, the name of the file +# that has the commit message. The hook should exit with non-zero +# status after issuing an appropriate message if it wants to stop the +# commit. The hook is allowed to edit the commit message file. +# +# To enable this hook, rename this file to "commit-msg". + +# Uncomment the below to add a Signed-off-by line to the message. +# Doing this in a hook is a bad idea in general, but the prepare-commit-msg +# hook is more suited to it. +# +# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p') +# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1" + +# This example catches duplicate Signed-off-by lines. + +test "" = "$(grep '^Signed-off-by: ' "$1" | + sort | uniq -c | sed -e '/^[ ]*1[ ]/d')" || { + echo >&2 Duplicate Signed-off-by lines. + exit 1 +} diff --git a/fixtures/repo.git/hooks/post-update.sample b/fixtures/repo.git/hooks/post-update.sample new file mode 100755 index 0000000..ec17ec1 --- /dev/null +++ b/fixtures/repo.git/hooks/post-update.sample @@ -0,0 +1,8 @@ +#!/bin/sh +# +# An example hook script to prepare a packed repository for use over +# dumb transports. +# +# To enable this hook, rename this file to "post-update". + +exec git update-server-info diff --git a/fixtures/repo.git/hooks/pre-applypatch.sample b/fixtures/repo.git/hooks/pre-applypatch.sample new file mode 100755 index 0000000..4142082 --- /dev/null +++ b/fixtures/repo.git/hooks/pre-applypatch.sample @@ -0,0 +1,14 @@ +#!/bin/sh +# +# An example hook script to verify what is about to be committed +# by applypatch from an e-mail message. +# +# The hook should exit with non-zero status after issuing an +# appropriate message if it wants to stop the commit. +# +# To enable this hook, rename this file to "pre-applypatch". + +. git-sh-setup +precommit="$(git rev-parse --git-path hooks/pre-commit)" +test -x "$precommit" && exec "$precommit" ${1+"$@"} +: diff --git a/fixtures/repo.git/hooks/pre-commit.sample b/fixtures/repo.git/hooks/pre-commit.sample new file mode 100755 index 0000000..68d62d5 --- /dev/null +++ b/fixtures/repo.git/hooks/pre-commit.sample @@ -0,0 +1,49 @@ +#!/bin/sh +# +# An example hook script to verify what is about to be committed. +# Called by "git commit" with no arguments. The hook should +# exit with non-zero status after issuing an appropriate message if +# it wants to stop the commit. +# +# To enable this hook, rename this file to "pre-commit". + +if git rev-parse --verify HEAD >/dev/null 2>&1 +then + against=HEAD +else + # Initial commit: diff against an empty tree object + against=4b825dc642cb6eb9a060e54bf8d69288fbee4904 +fi + +# If you want to allow non-ASCII filenames set this variable to true. +allownonascii=$(git config --bool hooks.allownonascii) + +# Redirect output to stderr. +exec 1>&2 + +# Cross platform projects tend to avoid non-ASCII filenames; prevent +# them from being added to the repository. We exploit the fact that the +# printable range starts at the space character and ends with tilde. +if [ "$allownonascii" != "true" ] && + # Note that the use of brackets around a tr range is ok here, (it's + # even required, for portability to Solaris 10's /usr/bin/tr), since + # the square bracket bytes happen to fall in the designated range. + test $(git diff --cached --name-only --diff-filter=A -z $against | + LC_ALL=C tr -d '[ -~]\0' | wc -c) != 0 +then + cat <<\EOF +Error: Attempt to add a non-ASCII file name. + +This can cause problems if you want to work with people on other platforms. + +To be portable it is advisable to rename the file. + +If you know what you are doing you can disable this check using: + + git config hooks.allownonascii true +EOF + exit 1 +fi + +# If there are whitespace errors, print the offending file names and fail. +exec git diff-index --check --cached $against -- diff --git a/fixtures/repo.git/hooks/pre-push.sample b/fixtures/repo.git/hooks/pre-push.sample new file mode 100755 index 0000000..6187dbf --- /dev/null +++ b/fixtures/repo.git/hooks/pre-push.sample @@ -0,0 +1,53 @@ +#!/bin/sh + +# An example hook script to verify what is about to be pushed. Called by "git +# push" after it has checked the remote status, but before anything has been +# pushed. If this script exits with a non-zero status nothing will be pushed. +# +# This hook is called with the following parameters: +# +# $1 -- Name of the remote to which the push is being done +# $2 -- URL to which the push is being done +# +# If pushing without using a named remote those arguments will be equal. +# +# Information about the commits which are being pushed is supplied as lines to +# the standard input in the form: +# +# +# +# This sample shows how to prevent push of commits where the log message starts +# with "WIP" (work in progress). + +remote="$1" +url="$2" + +z40=0000000000000000000000000000000000000000 + +while read local_ref local_sha remote_ref remote_sha +do + if [ "$local_sha" = $z40 ] + then + # Handle delete + : + else + if [ "$remote_sha" = $z40 ] + then + # New branch, examine all commits + range="$local_sha" + else + # Update to existing branch, examine new commits + range="$remote_sha..$local_sha" + fi + + # Check for WIP commit + commit=`git rev-list -n 1 --grep '^WIP' "$range"` + if [ -n "$commit" ] + then + echo >&2 "Found WIP commit in $local_ref, not pushing" + exit 1 + fi + fi +done + +exit 0 diff --git a/fixtures/repo.git/hooks/pre-rebase.sample b/fixtures/repo.git/hooks/pre-rebase.sample new file mode 100755 index 0000000..33730ca --- /dev/null +++ b/fixtures/repo.git/hooks/pre-rebase.sample @@ -0,0 +1,169 @@ +#!/bin/sh +# +# Copyright (c) 2006, 2008 Junio C Hamano +# +# The "pre-rebase" hook is run just before "git rebase" starts doing +# its job, and can prevent the command from running by exiting with +# non-zero status. +# +# The hook is called with the following parameters: +# +# $1 -- the upstream the series was forked from. +# $2 -- the branch being rebased (or empty when rebasing the current branch). +# +# This sample shows how to prevent topic branches that are already +# merged to 'next' branch from getting rebased, because allowing it +# would result in rebasing already published history. + +publish=next +basebranch="$1" +if test "$#" = 2 +then + topic="refs/heads/$2" +else + topic=`git symbolic-ref HEAD` || + exit 0 ;# we do not interrupt rebasing detached HEAD +fi + +case "$topic" in +refs/heads/??/*) + ;; +*) + exit 0 ;# we do not interrupt others. + ;; +esac + +# Now we are dealing with a topic branch being rebased +# on top of master. Is it OK to rebase it? + +# Does the topic really exist? +git show-ref -q "$topic" || { + echo >&2 "No such branch $topic" + exit 1 +} + +# Is topic fully merged to master? +not_in_master=`git rev-list --pretty=oneline ^master "$topic"` +if test -z "$not_in_master" +then + echo >&2 "$topic is fully merged to master; better remove it." + exit 1 ;# we could allow it, but there is no point. +fi + +# Is topic ever merged to next? If so you should not be rebasing it. +only_next_1=`git rev-list ^master "^$topic" ${publish} | sort` +only_next_2=`git rev-list ^master ${publish} | sort` +if test "$only_next_1" = "$only_next_2" +then + not_in_topic=`git rev-list "^$topic" master` + if test -z "$not_in_topic" + then + echo >&2 "$topic is already up-to-date with master" + exit 1 ;# we could allow it, but there is no point. + else + exit 0 + fi +else + not_in_next=`git rev-list --pretty=oneline ^${publish} "$topic"` + /usr/bin/perl -e ' + my $topic = $ARGV[0]; + my $msg = "* $topic has commits already merged to public branch:\n"; + my (%not_in_next) = map { + /^([0-9a-f]+) /; + ($1 => 1); + } split(/\n/, $ARGV[1]); + for my $elem (map { + /^([0-9a-f]+) (.*)$/; + [$1 => $2]; + } split(/\n/, $ARGV[2])) { + if (!exists $not_in_next{$elem->[0]}) { + if ($msg) { + print STDERR $msg; + undef $msg; + } + print STDERR " $elem->[1]\n"; + } + } + ' "$topic" "$not_in_next" "$not_in_master" + exit 1 +fi + +<<\DOC_END + +This sample hook safeguards topic branches that have been +published from being rewound. + +The workflow assumed here is: + + * Once a topic branch forks from "master", "master" is never + merged into it again (either directly or indirectly). + + * Once a topic branch is fully cooked and merged into "master", + it is deleted. If you need to build on top of it to correct + earlier mistakes, a new topic branch is created by forking at + the tip of the "master". This is not strictly necessary, but + it makes it easier to keep your history simple. + + * Whenever you need to test or publish your changes to topic + branches, merge them into "next" branch. + +The script, being an example, hardcodes the publish branch name +to be "next", but it is trivial to make it configurable via +$GIT_DIR/config mechanism. + +With this workflow, you would want to know: + +(1) ... if a topic branch has ever been merged to "next". Young + topic branches can have stupid mistakes you would rather + clean up before publishing, and things that have not been + merged into other branches can be easily rebased without + affecting other people. But once it is published, you would + not want to rewind it. + +(2) ... if a topic branch has been fully merged to "master". + Then you can delete it. More importantly, you should not + build on top of it -- other people may already want to + change things related to the topic as patches against your + "master", so if you need further changes, it is better to + fork the topic (perhaps with the same name) afresh from the + tip of "master". + +Let's look at this example: + + o---o---o---o---o---o---o---o---o---o "next" + / / / / + / a---a---b A / / + / / / / + / / c---c---c---c B / + / / / \ / + / / / b---b C \ / + / / / / \ / + ---o---o---o---o---o---o---o---o---o---o---o "master" + + +A, B and C are topic branches. + + * A has one fix since it was merged up to "next". + + * B has finished. It has been fully merged up to "master" and "next", + and is ready to be deleted. + + * C has not merged to "next" at all. + +We would want to allow C to be rebased, refuse A, and encourage +B to be deleted. + +To compute (1): + + git rev-list ^master ^topic next + git rev-list ^master next + + if these match, topic has not merged in next at all. + +To compute (2): + + git rev-list master..topic + + if this is empty, it is fully merged to "master". + +DOC_END diff --git a/fixtures/repo.git/hooks/prepare-commit-msg.sample b/fixtures/repo.git/hooks/prepare-commit-msg.sample new file mode 100755 index 0000000..f093a02 --- /dev/null +++ b/fixtures/repo.git/hooks/prepare-commit-msg.sample @@ -0,0 +1,36 @@ +#!/bin/sh +# +# An example hook script to prepare the commit log message. +# Called by "git commit" with the name of the file that has the +# commit message, followed by the description of the commit +# message's source. The hook's purpose is to edit the commit +# message file. If the hook fails with a non-zero status, +# the commit is aborted. +# +# To enable this hook, rename this file to "prepare-commit-msg". + +# This hook includes three examples. The first comments out the +# "Conflicts:" part of a merge commit. +# +# The second includes the output of "git diff --name-status -r" +# into the message, just before the "git status" output. It is +# commented because it doesn't cope with --amend or with squashed +# commits. +# +# The third example adds a Signed-off-by line to the message, that can +# still be edited. This is rarely a good idea. + +case "$2,$3" in + merge,) + /usr/bin/perl -i.bak -ne 's/^/# /, s/^# #/#/ if /^Conflicts/ .. /#/; print' "$1" ;; + +# ,|template,) +# /usr/bin/perl -i.bak -pe ' +# print "\n" . `git diff --cached --name-status -r` +# if /^#/ && $first++ == 0' "$1" ;; + + *) ;; +esac + +# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p') +# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1" diff --git a/fixtures/repo.git/hooks/update.sample b/fixtures/repo.git/hooks/update.sample new file mode 100755 index 0000000..80ba941 --- /dev/null +++ b/fixtures/repo.git/hooks/update.sample @@ -0,0 +1,128 @@ +#!/bin/sh +# +# An example hook script to block unannotated tags from entering. +# Called by "git receive-pack" with arguments: refname sha1-old sha1-new +# +# To enable this hook, rename this file to "update". +# +# Config +# ------ +# hooks.allowunannotated +# This boolean sets whether unannotated tags will be allowed into the +# repository. By default they won't be. +# hooks.allowdeletetag +# This boolean sets whether deleting tags will be allowed in the +# repository. By default they won't be. +# hooks.allowmodifytag +# This boolean sets whether a tag may be modified after creation. By default +# it won't be. +# hooks.allowdeletebranch +# This boolean sets whether deleting branches will be allowed in the +# repository. By default they won't be. +# hooks.denycreatebranch +# This boolean sets whether remotely creating branches will be denied +# in the repository. By default this is allowed. +# + +# --- Command line +refname="$1" +oldrev="$2" +newrev="$3" + +# --- Safety check +if [ -z "$GIT_DIR" ]; then + echo "Don't run this script from the command line." >&2 + echo " (if you want, you could supply GIT_DIR then run" >&2 + echo " $0 )" >&2 + exit 1 +fi + +if [ -z "$refname" -o -z "$oldrev" -o -z "$newrev" ]; then + echo "usage: $0 " >&2 + exit 1 +fi + +# --- Config +allowunannotated=$(git config --bool hooks.allowunannotated) +allowdeletebranch=$(git config --bool hooks.allowdeletebranch) +denycreatebranch=$(git config --bool hooks.denycreatebranch) +allowdeletetag=$(git config --bool hooks.allowdeletetag) +allowmodifytag=$(git config --bool hooks.allowmodifytag) + +# check for no description +projectdesc=$(sed -e '1q' "$GIT_DIR/description") +case "$projectdesc" in +"Unnamed repository"* | "") + echo "*** Project description file hasn't been set" >&2 + exit 1 + ;; +esac + +# --- Check types +# if $newrev is 0000...0000, it's a commit to delete a ref. +zero="0000000000000000000000000000000000000000" +if [ "$newrev" = "$zero" ]; then + newrev_type=delete +else + newrev_type=$(git cat-file -t $newrev) +fi + +case "$refname","$newrev_type" in + refs/tags/*,commit) + # un-annotated tag + short_refname=${refname##refs/tags/} + if [ "$allowunannotated" != "true" ]; then + echo "*** The un-annotated tag, $short_refname, is not allowed in this repository" >&2 + echo "*** Use 'git tag [ -a | -s ]' for tags you want to propagate." >&2 + exit 1 + fi + ;; + refs/tags/*,delete) + # delete tag + if [ "$allowdeletetag" != "true" ]; then + echo "*** Deleting a tag is not allowed in this repository" >&2 + exit 1 + fi + ;; + refs/tags/*,tag) + # annotated tag + if [ "$allowmodifytag" != "true" ] && git rev-parse $refname > /dev/null 2>&1 + then + echo "*** Tag '$refname' already exists." >&2 + echo "*** Modifying a tag is not allowed in this repository." >&2 + exit 1 + fi + ;; + refs/heads/*,commit) + # branch + if [ "$oldrev" = "$zero" -a "$denycreatebranch" = "true" ]; then + echo "*** Creating a branch is not allowed in this repository" >&2 + exit 1 + fi + ;; + refs/heads/*,delete) + # delete branch + if [ "$allowdeletebranch" != "true" ]; then + echo "*** Deleting a branch is not allowed in this repository" >&2 + exit 1 + fi + ;; + refs/remotes/*,commit) + # tracking branch + ;; + refs/remotes/*,delete) + # delete tracking branch + if [ "$allowdeletebranch" != "true" ]; then + echo "*** Deleting a tracking branch is not allowed in this repository" >&2 + exit 1 + fi + ;; + *) + # Anything else (is there anything else?) + echo "*** Update hook: unknown type of update to ref $refname of type $newrev_type" >&2 + exit 1 + ;; +esac + +# --- Finished +exit 0 diff --git a/fixtures/repo.git/info/exclude b/fixtures/repo.git/info/exclude new file mode 100644 index 0000000..a5196d1 --- /dev/null +++ b/fixtures/repo.git/info/exclude @@ -0,0 +1,6 @@ +# git ls-files --others --exclude-from=.git/info/exclude +# Lines that start with '#' are comments. +# For a project mostly in C, the following would be a good set of +# exclude patterns (uncomment them if you want to use them): +# *.[oa] +# *~ diff --git a/fixtures/repo.git/objects/02/14d7d93fb7cf06ccfcb8d544c25b093228814a b/fixtures/repo.git/objects/02/14d7d93fb7cf06ccfcb8d544c25b093228814a new file mode 100644 index 0000000000000000000000000000000000000000..b7be9947cebdb004e3e95af756f4367b69eb9f97 GIT binary patch literal 595 zcmV-Z0<8Ub0i9IQZqqOn<+)#RACTf`X+{S^h^ag=;2*Y0OHww!3u&Awi{9wS9cf^*zTPgF2%zB4Ox z2`KtXC|$~V5CIFJ{|pu#0HIl6E)en6T(qZV*?uxh+5=|Qo}0#eG2h$wa3EzVpArX< zas-K*7wHBKfIBiF`cUvG$um48;Kwa#KBKi@i_1Z9U(9DbeIat{1WU(56p$cPxS5st z252gI)U+Sblm-ESMmOkhWBt7bbBQ)C|J9oR@4LM*N=s2tP&Z;5t6Zdcb&4oIkyqQwkxOyr?hqdNkGa{4V9!|%{vlz0 hhfRflE}r9SaX^m+`@L`2t%vl4V2SvP-(S`Xr-d_WB4_{r literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/02/eda20b3e0966af9ca1efdb69fd00eae5b8ccb9 b/fixtures/repo.git/objects/02/eda20b3e0966af9ca1efdb69fd00eae5b8ccb9 new file mode 100644 index 0000000000000000000000000000000000000000..e45cf5ecdfbd1a4b08026055137c2f4ca8a86a0c GIT binary patch literal 1248 zcmV<61Rwi&0j*bEZyQAv<#~U_sC`MKCa54m6@&zc@_>YpK)lBvt9YqDqV=YTw>U{j zR7Z`3c&Gpg_y_B?H+KA$zcBNUIOooK*K2Q#L9}vO&)&In@44rk*_7+8vU>l$XCJ)t zSm|H%Tu*gquJlaDI#zn9Lp{J}rbjwHQ21YD&h#9g*mTU9={k=78LLy3gw2({H>Zf6 zAk{6B$WDcSLiJ_oW$D|B?;Qt9kFaFU5i!%)f~Wdkk4y(=pP6eWo0uD}$GXpewR2I+ z2pLd^?&G}B{DkjwY?zrY3eO6(M=yfSsky+GJJXR8rr0t-8548;z($l5BYz}6QL%ZW z%q5Ov^Vj>1^BAc8fq)n#PZ4y+URe5E_kckX2$UGKh6;g1AR7P_A@?gCDZ7HYhH@Bivy`l~*4%LwtC^`NfiH2C`ba0ZnIZ&wGf;!h@rN;=E;;)40=!rtYP~XX* zBHLI8578K!nVR!-2oVsqB?4U}k%25{3z4gX2Lq}07IhI z_qo1912~pr0ACS=;#X#q*7eA|0%kGBYpI5^P7!>CbfZTJBYs69Ku-1C16pDV*v+-$ z93CFFYYwMYskfRg=l2OdwUhFGrPVm7dX3W4rysuCuKC_x;I;#=d9+t+HQXOs{)>GC zI+dy_eCRZf8_JWP?V#ibJjv4YEeic-oq(c$v2o!qsS1=56+S35^C}e@K#Uw`FF`gE z+2Cm&)eswY5{@M-E#RdX$Q&8KA`T@-)MQvoMD0GYmXq7DPDipfE%i79ocV~ktu z8&B~lVtD3^m>#rYDUnl54CpbwL^X7mTYO0jleYoW(T}nU*Dk(IHxiSxz=?IR82NgZ zQJ@SqLI`wRn(9P+462vQL9idwP{B;7S@+@Cm;8jQI_A#6%3&-3 literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/03/16a98e0eec3c526f67976e12d2af77fa09dc70 b/fixtures/repo.git/objects/03/16a98e0eec3c526f67976e12d2af77fa09dc70 new file mode 100644 index 0000000000000000000000000000000000000000..827b517bab4d03fddbf8c17374afb6ce4006c26d GIT binary patch literal 222 zcmV<403rW)0iBRdPQx%1gjxF(Z;wEB{1Y1?#1?T1zdQ$`wlNBB1v_#W_SsZIpsH7R zxe=j=3$PoFW=5Z;$(v1ApbGk|3@L$kDkg`RVo+!r>x_23t(y9;wcWP zFMvd-34>`O zhwTk0YorX74ie6#mQpk)#*+Tm7TwP>p{JF%Yd7MY_4U_9`*PLW*fB*mh literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/05/94bb070657550e3e305ba5fe2de0e46ddb10a3 b/fixtures/repo.git/objects/05/94bb070657550e3e305ba5fe2de0e46ddb10a3 new file mode 100644 index 0000000000000000000000000000000000000000..152c84c37730fa3ecbb58b5c257429becf80fcbb GIT binary patch literal 714 zcmV;*0yX`30j*Y1Z_-c{_L*OC5=~kXph8dx%X~0O^oeB72V+dQZ7KO zQR9n$g_$f)Ht{dq{v*%5Z7H`KjxHl9p}psxd%o{G=PRZ=HlfjIH}6>Ek$?hrPBl5v{OPDhriK3FThQuFY z&Dwq1Moeamx9WHd_#(Q$Od|L}SAg`Y(~5{6R7vWjsN8fejXh~U-^um@(T!%CVV)5O0S)96sF^PftlR7lfG zWn4K^&xvSSQo>|LpWui-6%(qzo&ux$tOMG!=P!19JFoBvA$SLt3_$p1De=0_Qvv+9 z@2)QQioPpevSw%yR?xi?NISjW?rq`$94ax=1!NGoDsod7yHPm9rozY(gbYkxpBQXD zN`ZW7RFR$BhRmT--SeAN7wfM{f#4vNxwB>|<_AlsSJ++a2sjQW(RZAbd31=b5Pb&r zX(G&-d6X(C(m7c*yyaoi9I#~)S_B=PST1S1DP1Br&WOw{LnXG&O;RB-vlL8K9H5CW w>)QaB^kWX9%)S}Kyk}-_IML_fjbQTF`~=^{Fgf0S(Ga4uBvG1whw5g%<#JdK|*%MM!{>T1>pX&U#|wxF6?cYesNHgEM^R lyc%vIJKp4Z>0Ih4@dF7L{#78o@_;GYn-NSFbswpp8N?k1BA@^O literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/07/a50cb300eb3f1e09c0ef798bf76a66ea547dac b/fixtures/repo.git/objects/07/a50cb300eb3f1e09c0ef798bf76a66ea547dac new file mode 100644 index 0000000000000000000000000000000000000000..284c2e82d308d81332f5b892c5c8216a7b41bf50 GIT binary patch literal 63 zcmV-F0Korv0V^p=O;s>4V=y!@Ff%bx$V)8COiwJy%+J#+Ni8nX%PMBr`_uf#w7-$< VcW4H)1d}FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3s% zohe&=^1j)#EkII&V~enfY0IXJt1PMI``IyDtBA0d2@PIFREgQI>8>v16hCmWf#nKw{)>< zoged+B?Mx1L1|J>W->z-vvq2{z(lE=+hWuY|J?RF(O^RaL_tYvaY-?Q#rGE(uWgLm zT?PEs&7o64q literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/0a/4d70a04ce94f7ffd176272da4fd381681115bc b/fixtures/repo.git/objects/0a/4d70a04ce94f7ffd176272da4fd381681115bc new file mode 100644 index 0000000000000000000000000000000000000000..892db29774ca615f8902f76d753c301ad6d5e850 GIT binary patch literal 1807 zcmV+q2k`iK0kxQ0Pg_?Ih5PJZv6Z|eQlLtuwh~pP-V#-ns!C1s9%C%*#$aTdq z3av?ysy;+*rMCaT7!1Y%^B4C1NB!39ym$Yt z+s^;ud;ZKf!>&K~ZQpkO#5esB-{-#L+Y63Qt+45Pe78eAY=%ZAgK{3TaIw!P1w6+BQCYE-?E>0 z9A3Gw!*L3JZ$6W`4QhX|ppDCCEZS5oa=qsdz#v%&N?J65ihyLH0sxAp_B-El@docQar!|9^Rc7dqo;xJHqUNEyiGER|~HWu`Zg3dwSj_ z{v&Yj`BMVmSfv5JvIytLa+CUXD{O;VoAgGi;noI=cQMzwl`!I03<0^S=K^SjDX@pV zOy@>NGr1)<^<`#tZN(MsXSJ5C)O1p$=W86jzD}U%Ukcp#E2@H0QiYcmTG&nt4G>$I z%v^$O%gTngqo_97a3|qd!qO?cGy&;h0TwAKBScM-HAK|Ly(l>&J0|HU)(*ILH|{}J zh}5cIDl?XHl_L>Q%pFBKX|w%-B9`8b8nOomX3qG`npntCM}pJP1Kb%y$Dd`K!=UP# z(_-yH(g}Fg+W+1g>VU^5&|O>w~-vc%(9Y{jDyUInSV!GKzR(vBwk6US|ki7vml^l1b> z-&8fu#D|+lqQ*a{jVt4rEUJ|I>RmQM7}bU&`5#>u&H5gUI6f}418z_D^1gw80P=9% zaAd+6G-9X#MZ|F-K_zMAaSk|z<4MmpkycG4`r(gF?DH4pVEPXMw6;u+jsl<(nx4sL&K=z zWuRc875;eDai&gFh44}8X0xJpHYu8IYPS<7gWu&I&{zW;o10@Z=VdaY+e{Tvi$&jZ zUqATxvo9ZvX`$x+LmK7|Y^qa@YMnL;)1~B&mJg;(Vj_;%UPq=6L_jG?CJ+@hifN_+ zRg<;MX|@}9sGN>mBCeY5Wn2!TWMV@bdk4mxBj919>1!jl72a!TX5<8WD+C0{#0ru2 zhy5JIKB4qT$6%KB4H}Xf&IC9bH2cvAi0IEa)^^&Cz?2KRQ|#iAPLgN)Nn`ZC89qbM zk6WLLbjRJ1eItQJZI!6`BtyxF8*er?y4*Elyau|o<+2_^i^lX^9>X-ZntfJW&en?M zRqJ`6t;@g(-*o4=`~~~YA$z>dEUp(zOApJXrF`XarDU7bEZG>(*;0wy#`Q|c9=bxd zS|CpcJU!8qSQ}hdS=w=H*;-+ivp=civrD0k-tdH zWGfnuG>|{4?Q03DyHrB3YnaK(&x=(XIJH6lrm&Ktrzjx=qqBQZsgx@Vb~!JVm#+$j z`ehb~Vj`WEMh@N5rIwo0lO@)>R1do8$E&Q8qH(N$vA4g(P-8a_?qRW%|K^(fT^e0= z?z+@NmROj&ain8}8dL1~2?CmA=?25`Bkwn=jsN0+J~3y5?bGsVEx#IxG$Svnh4S;O zh@r$M&<*~glEOC(O}rNQKd1F3iFFtj+I?q2o2tM-H)(>LY4?8!cd437$wyw&WT+6E x)nLEIDh)F>tSQAXm7g|5i0SHry4w828k2q`Y^9ug+Hdvw@A5ej@^6YD=oaC~oE-oF literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/0b/67453d327edf0fc42ce002105a38123f631657 b/fixtures/repo.git/objects/0b/67453d327edf0fc42ce002105a38123f631657 new file mode 100644 index 0000000000000000000000000000000000000000..213d57ffe7b2337c0ed027c90788cf733f8897e9 GIT binary patch literal 432 zcmV;h0Z;yT0V^p=O;s>4H)1d}FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3ZCcZO`UvzG8>011;xA~@t0T3u8W#%!6>TW)@V!;Ke zGi9q!-Zy);#b~WuC`2|nALy_AoSf96VumT1$_AQx|J^R#HB;vZ;oG)Tx-kK2OF?3C zc4B&}Zccu3HY5-Pd=7W-2@zA(xwl4Cx!Y>Zo71a$Q58ef3HC@H$olgyyI`)nrHftb z{FtvSArPwzN|SOjlNqv@tyAj-CQ9Ah7NdUn=eFO81{)$E3QAIoONtrTm-1|8cx^Ao zdEk9z_xG%{S0S})Ao8UpnK{J_Q7q2-`7>7iYkO8WGoE9%YIb^UH$=WHGqt>!!H2Km a4H)1d}FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3mNOGYuH(}(r&z; zvh}>?F%_ty#DW5#s~8I0WaB4rn)uE%e$lzXrEBrW-sYPo20);Yl$pmMs=N8riUk*> z&Xlb_dEe~W7NfOtp%B^Re4xMbb8=FPiWz1*II&V~enfY0IXJt1PMI``IyDtBA0d2@PIFREgQI>8>v16hCmWf#nKw{)>< zoged+B?Mx1L1|J>W->z-vvq2{z(lE=+hWuY|J?RF(O^RaL_tYvaY-?Ql#S3viTy&x zQ(Lt%`rLMHE;({25h7n&l9^M?P|dae=EG&hla6`nneaT-+L7d(a0DV>mYG^!%;3Y< baPt4z#qXsAH{E!1HOR4dZN^pr(D}Z*{`1~H literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/10/06b469d1e97421643a622475285a170dac25f8 b/fixtures/repo.git/objects/10/06b469d1e97421643a622475285a170dac25f8 new file mode 100644 index 0000000000000000000000000000000000000000..35628fbeda3350325977545cb46a40e810ec82d9 GIT binary patch literal 285 zcmV+&0pk960c}w|Ps1<}WzMg#JQFtwZB-#L!NSalKuYWrF(h_mnerbudSg`DGE^}RDqXH4`G=ku&;IG zX`^5k-#(#<=uv=tP%(fHB-dNn){I_>xr}mY(US<~ELomA7_1B6p4!lN*Y5yxU^hg3 zs9iKLRsj>cMw{IS?}YB+|v#HK%Ro~%=p^!+0u^>1ixjFPH!T7vO$O|Ngy z2~#it_BB$&RY#Zy2c7`_xfkV8>{t7?SnU>xv7LZ(u+*BY#&R++7Uj8E7)Kk jvZPB@$JLVd(5DmPq&#h5aKnlJAn;2}lU=fZZhDTix7df7 literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/10/4cc38bbc5416252cdeac15238b3aaceccbaa8d b/fixtures/repo.git/objects/10/4cc38bbc5416252cdeac15238b3aaceccbaa8d new file mode 100644 index 0000000000000000000000000000000000000000..fec7b33d4485aac38c87ffce10edd2d1c7b39c80 GIT binary patch literal 51864 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 R@c)1P$AA6D{|2zu^hhZPG%)}G literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/11/8c19c06afcfe6b709d4739443e859f5cf50454 b/fixtures/repo.git/objects/11/8c19c06afcfe6b709d4739443e859f5cf50454 new file mode 100644 index 0000000..c568724 --- /dev/null +++ b/fixtures/repo.git/objects/11/8c19c06afcfe6b709d4739443e859f5cf50454 @@ -0,0 +1,2 @@ +xmRAN0WX9ciB83GDQ/4PN"ݙYWRWdS7 BU4F<>w>FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3Z^4J}RtoD> zW7j)P3xX<2EGPiFilM+wHhu!9iSJC~7o8hix)y)zZN6z@00at2nRyJNx|>g}Sa3n= zOxfy__syPdFW->z-vvq2{z(lE=+hWuY|J?RF(O^RaL_ujuW==5!kGS7o0kJyA y*{6bk_TOU@WLJvV1(7eyOf4^F@ZoDX`Ty+V_fmqJZoIh~4V=y!@Ff%bx$V)8COiwJy%+J#+Ni8nX%PMAIowA#qEj*OZ V&LDc}KivmUa&HSP1_04#6DHi_7ykeN literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/15/a3b665f02587571c137d2525a7b607a1cb1b33 b/fixtures/repo.git/objects/15/a3b665f02587571c137d2525a7b607a1cb1b33 new file mode 100644 index 0000000..05da270 --- /dev/null +++ b/fixtures/repo.git/objects/15/a3b665f02587571c137d2525a7b607a1cb1b33 @@ -0,0 +1 @@ +xMJ@];I' V>G!|{A>lFl->NS%lV8-m3`s7A@i)xPw>RE9I_St_Ul3OayXU8s{bX=3!?Y$@zH z2m>M+E-NkoD-I6PvXP=>MSVKNPVWY4^*)}WCmHm*InLN@Z`204uDX7sp|Iwcv<~#r cHq)$ literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/18/d6a273fda0cda46fae345db5d64f3c8208706c b/fixtures/repo.git/objects/18/d6a273fda0cda46fae345db5d64f3c8208706c new file mode 100644 index 0000000000000000000000000000000000000000..e619dfef373f5d8bfe529100fd5c2b19fff0e2f2 GIT binary patch literal 400 zcmV;B0dM|z0d11OZi6rkhIi&Ed?RQm-J#N?R_&x7w&Ql#PSXwn+>$CJEQGC6%e&78 zN;wP(32f*0=ikYU%iwXjyvvyOJ3FX|A+SMW%CA(zsgym^V(xWZNuehg+(}@`%=wL|knwgNY u+wB?2X7_34NWU^UIXXk_drdsNXn<~*1ifcV`05DyW@_T?*3lo-bm7ktuFU=b literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/19/de222f9203cd751c5ad8396a9b8a8e91233dc7 b/fixtures/repo.git/objects/19/de222f9203cd751c5ad8396a9b8a8e91233dc7 new file mode 100644 index 0000000000000000000000000000000000000000..6f9262f5cecc6f6e9955dc63bea56d97d61b4ced GIT binary patch literal 404 zcmV;F0c-wv0V^p=O;s>4F<>w>FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3%=q)-&e_yCO zz9CR6z!It`v7i9xDux0#+4u>ZCcZO`UvzG8>011;xA~@t0T3u8W#%!6>TW)@V!;Ke zGi9q!-Zy);#b~WuC`2|nALy_AoSf96VuqvoOFnAd`t>;co@~3vkLm5}44mblwiF~L zXD6no>gMDpXF~$vXR5%;(=jvNR8-&bbYF5Ke9w)Ex~PgF>K3SlS8P5l?{Vqik0#&V zmM$&sd=-e*1*J(jnaK=U%+{&(0u!ZfZi`Vr{BzsyM1u_x5Cx?rnK{J_JmP+T1;pwc yXP*lG*?*5skX!!H2Km4V=y!@Ff%bx$V)8COiwJy%+J#+Ni8nX%PMA2lRMnMm+!A& VpSXP^^Omx|flq}W007@@6WaTh8s-21 literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/1f/eb731464534e9da6f85acfc1c93d9360fdaba1 b/fixtures/repo.git/objects/1f/eb731464534e9da6f85acfc1c93d9360fdaba1 new file mode 100644 index 0000000000000000000000000000000000000000..0052107ab37fdde0aaa922183989ec7859af1df3 GIT binary patch literal 91 zcmV-h0HptT0V^p=O;xZkWiT`_Ff%bxNY5-EZp9fccVW#^&v+#ux>%Bf1SWMmbVZB0nI{*nqBmSSuC!qiU literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/22/0ae8ef248e310e5ad4d8f8a79cb00485c3dc81 b/fixtures/repo.git/objects/22/0ae8ef248e310e5ad4d8f8a79cb00485c3dc81 new file mode 100644 index 0000000000000000000000000000000000000000..5e41123d3c9bafa29f8394c0e32141c04bea514d GIT binary patch literal 82 zcmV-Y0ImOc0ZYosPg1ZjW~k;;P*5r@P7O&+Dps;mNK4EqPSpX46%=LWm4s)elw<&f o4UG)If+dMbFd-wbKyhYXdQNI!X?{s6P+3V)X)0GO0I*mZtQ=DwVgLXD literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/23/1bdfa47fd49343bb48ed0b1bcb85691072be76 b/fixtures/repo.git/objects/23/1bdfa47fd49343bb48ed0b1bcb85691072be76 new file mode 100644 index 0000000000000000000000000000000000000000..d644350b5904707561f87f3c5c47bc8ac811c2d6 GIT binary patch literal 202 zcmV;*05$)30iBLJN<=XfK&`Wi+Y55@odiT|#Z}z=H0UJq$UL-D!OFrtxB?5On!+t4 zJ5pu|c83E8PH5Y0=^zZA^d%*58MO}yQ`AJx3)~oMlyGSiNq8BvwkQqP?17e4J7lLd z#T=CMHU?#+b{<3EnG2&enrJbjQHs&7-?jy=R;qB_?whBy!g;wnV!3>x8q?$1vbzAT z6>^ErSU5$A$inflr~lP#e2)EmnXmI5#`ieP514ObKMv#P&p(eZsI-ZMio3yqat ELgr;+hyVZp literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/26/1ec38fbd0efd118e173f8103b476fd51e513e0 b/fixtures/repo.git/objects/26/1ec38fbd0efd118e173f8103b476fd51e513e0 new file mode 100644 index 0000000000000000000000000000000000000000..e34393f1bb61b9c461ae2a4394c5cc7dde089823 GIT binary patch literal 746 zcmVEEEq8HUf+f|1AGuz?xB+Xjc z_NF3QzT;q2=gug_3##!iL{p4)HP#kpq&t5EMu_9)!0ya>O_QzV&^ALHs+o}&mK=(#*B zU?toQGhv>|t55MZOvO4rDG%|WJfd@=zZikwJ7NvA$4{PawKtz*8q#PD{JzDzcAr}i zyv(Sg-*P;Odc_-4^0kR+HSqv7@s)f1~0# zhLl#ZV-fA?xE%ediASZTwxnK?Oha*7-fudWf{=*?F@AQ8q9cY67BrTLM;GR5=0p~Z zCGrpm_t0E2)^a3&gLpqAvlTAq1>oeIWj$t6gz^|1w26Qu+*;INb={=WQU*L_DnlF| z+Y9;4eD0JJJ!@48@KOnA>XLE2ioJn%@lCOh$9syu$}vBG^moDgV&c!~#YTrGxTXe? cAkjTTeYp`<{vq`Nt!0Pa&5UnN;f+@Gv9nO-&S`ob@@;L{q= z!!b1&gzy+V`XR7Asw##>Y^AzeK?61SvhG{NaYmo&CZ*##niEH$}ggyNrlpiDK!`d zt|73hRhU!&Y^EywAD{Ef=p_2ar~I5>L4dWwms5OZ{6hSkgD6P(I6zE|<KXD_d!m!$4qlRQx9cV*D<0CR*8)^eI2MF<7JR2a4d!U@)N_^2N;`_rd`E+A^ zajdn_VRaaF*#ckSnsjKp)Z7;6QhTon7F*$n&!g`#m1jusZ%Hn`o$@Pw9vzE){;TXR zC0936YL}v`1!8qW(wa>0Qyk!DVt&;(6JYd^bwPRl;^lsS?={8|P0)o!Eg*cmpnX+K z=26_-kk{vYO+#*;x1uQ!)==OQTzmcg{%wK+962%dn-U_x)#S+@cBoL0bt#eq3K^mz zQ!(PARStJ)kg-IC1DTSg9Z)=!SG&Oq7YGhQ={swi&D3IXBa}BhuKp-u}Y0^r=p0Mb;VTwhFc<;(;J zU2Tq1$LsypP$unJz$rtlhqEZF*~KW@KHLf`kEKx*eM_J>(4*WH|1YxJ?LTMwa^F<} BS5W`} literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/27/2c7c018ebc33dfd5cb8c9002afc03baeb65aec b/fixtures/repo.git/objects/27/2c7c018ebc33dfd5cb8c9002afc03baeb65aec new file mode 100644 index 0000000000000000000000000000000000000000..72fbd4b4664c310c08cd43add0dc36ecf8dc5dda GIT binary patch literal 337 zcmV-X0j~ad0V^p=O;s>9wPY|fFfcPQQP4}zEXhpI%P&f0*xE2ZSGVo-i|f%Qwk-)? zvh&0iJcX(Xa&>g^b=AvFVd#&))aq%J>09vOyOqK^)!6k;(}JLi5(^6SvWgiB++^b? zaGLneG=9;!!KG{Q$KK|fCI&#Dkd&FnAga6h)QSZcq|TJBK6&5l*%qUECo`EL zi`hE0USOis&22I2hktJSooKKj0-~U_Br~U&fk)i$uYg#c6i?1IRb jWu}%FGx+c|ocw=w@p~!3O*h_L4RY*Vo3RxDmr9ZHK9jbb literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/2f/477b850f24c436827c59af473ddf335bc90a57 b/fixtures/repo.git/objects/2f/477b850f24c436827c59af473ddf335bc90a57 new file mode 100644 index 0000000000000000000000000000000000000000..727a9b90ed4550632636cc595581e3cf73965b41 GIT binary patch literal 117 zcmV-*0E+*30V^p=O;s>7GG#C{FfcPQQAp1$(ap(E*UKu-&tq71c3+yX^}YOi?|IeQ zC*D8dJB?u_vbtj35}7F<>w>FfcPQQAp0uD@n~OaRyRF`8heMMS5Aq3^{f&OG1Cj zJzezAV|5VQ@iQ}{sw$!C(=u~Xi&0h2`Q?3A*ZYXZE76|RuBl5_?BD$O4ODezUP@{O fs%k!a0q))%0k4mpVlWmutnuBl=g!BeU:AʶM=ʋʚVOj& \ No newline at end of file diff --git a/fixtures/repo.git/objects/33/9a0cebf88c1eac07052a66d8ef94b5cf29c624 b/fixtures/repo.git/objects/33/9a0cebf88c1eac07052a66d8ef94b5cf29c624 new file mode 100644 index 0000000000000000000000000000000000000000..9991f2a636abf016cfc2731f800919afcae5bb10 GIT binary patch literal 1390 zcmV-!1(EuA0j-zYPFq(HhI{R&SW0e)6lkMfG@`216H!&Es?@`MY_PCfW25a&qTFF} zAQC7@RWG8pQrkB$24e%pyuw;<)bF3QeZt0oR7Hlc_pCYm^Upuag-Wg9K7Rbs;}7mT z|GV$|o^OV?{=&C?+xd=f`eQy9zU$k|j{mj7j_>nnhep^5d%2wdji)`Anf0B&4BJ?r zAuZB%m28Vls8l7yF3anvAFOY;jO>)-OwQRPS}^T^KhW&ZGR+#skr3Q z#RGZxBjPo~8~*Nd;3Dji_$a{`dSD#3!z+%QhK8lk*ds0_)8phc&_dcDI6?2a*v?){h9M;81(pOCcgF1;jrmXtx>I5 zSc8`oMlrqca@d3xh{hB_7bn(`ac@n0HF$As*`AP>a3$+mCx=m+Zh`c4YILpzVDCV- z0fGjN8bc`Sr$4jg`sS7vkMMwp50=DUkp|d~aeHXSIE?ISk<}62MH6vP&(Em;7~K2* zlmZB=Ho#YmNd8K1hI!o!ufeQMdn46IYa8RYxa;1_81V;=fLzma3ADl#*u#D<_w?!0 zdMT%_tyXH)qWbqapVC%gX|=YoyjI@GKYH}ZhxJlYUQCPiv|L?ZEY&uO&uhuAOBm)> z*WApPx$5SIE8EX{nom+iiu8O>qBqY86#Z9)8-GPrP|Bw8+CdAihl2))tz2#~L$+mO z!`n$zn;clkIF_+=1}{xO`gnjvYRUvrvu2GEb?;%6oQV_DbQEhx+6)?4^)WT+#-+0z5kxq^=G<($Kz=9*}6b|L8$ zMiJ$qiN`1`TS}`4nz0veZT7Ovi;_L5LM(~<6YF8c6Yil zlW*SgswMN0GSWR}BT`~wV%k7Y`?9H#x}5MwCYag=awk0+WjM9?=4~W7SAyqJ!P@vc zjEsUZ9AprrxDwTK(=n#rmV;q`CP9UnOtU{iv3K=14))^y&?^K|=g=*RMl21pDR3l? zgK7js%;zfB7HwBx%D?vDTQJk2l)@gUncAIy5^4hatKMfK-E|9={a`&vWi2Q5Fq7rD zjcwc>7%|@4z<>=qrGq_N&H*1Z1u~YrtLC4T*Yjz)R)wNALxQuz2QZ@fE6!a&%ea9H zTjk2ylUil1nEaen>`->ldVunCRj`9wNhQvFDPJ$qr$e50hOz)lnwWOoW59>GvQGFR{GTnCVfc0RLbq64o=X|JD2%=;g{lS zdKZWXQJ7p%Hrhpux%;{F#b(ic=F+5CoR`0PrW$YKtH3S#PQIe!*b3#N*}jpW+W%R5 zZeS*s-<0cVEqO67EA)V&gb>KRTS<~yvTPU1N^O1av8aV{gL4lZzYAt+soj$4jc!+_ zNxGfJ>zA5>h(W!08MSW@%-HRVds40xf4ZT6*H%|wys7otUPc;i$>HXbD8{=YdFxK6 zdotT#ynf_;!1TEg{vQDb#Jn49U)8E7 nu]$vj˂h.&rgf?gYcԈC{||7I1%!s[|]*sw򓘍]Q>q| \ No newline at end of file diff --git a/fixtures/repo.git/objects/37/ff4813eb92480f8f3b24e4150326036da48adb b/fixtures/repo.git/objects/37/ff4813eb92480f8f3b24e4150326036da48adb new file mode 100644 index 0000000000000000000000000000000000000000..d0351d2110ed443e4742cef23cb92bc6c3f68504 GIT binary patch literal 404 zcmV;F0c-wv0V^p=O;s>4F<>w>FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3Z^4J}RtoD> zW7j)P3xX<2EGPiFilM+wHhu!9iSJC~7o8hix)y)zZN6z@00at2nRyJNx|>g}Sa3n= zOxfy__syPdFe2O`MXVEQOF?3C zc4B&}Zccu3HY5-Pd=7W-2@zA(xwl4Cx!Y>Zo71a$Q58ef3HC@H$olgyyI`)nrHftb z{FtvSArPwzN|SOjlNqv@tyAj-CQ9Ah7NdUn=eFO81{)$E3Q9{dbBY;uYZ%ve+wY%o yR{FHc8}YN;(4V=y!@Ff%bx$V)8COiwJy%+J#+Ni8nX%PMA2Gg!B=y5$F7 UiOaOUY!{c;c1OC?0Osoy8qtgzLI3~& literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/39/7c2eb6d3efa290263d2ee54490b213992942f2 b/fixtures/repo.git/objects/39/7c2eb6d3efa290263d2ee54490b213992942f2 new file mode 100644 index 0000000000000000000000000000000000000000..ee4d6f95761bb530bf39cce87394ae106f7e3606 GIT binary patch literal 1096 zcmV-O1h@Nm0o_;4Zrer>?paT;YRETRianx5>zENj(mlWlnw2s`gs05MP-I<-`%s1Z*y(sZWci3-#Mw2+> z+>DUeHjjbB28*7uzZ0tr+vfuO>n>0b(jp_{$tmzGF zgzSd=>oDUNRD50jX)nBz%I?Fy zcqC;g2oLx)WpL)B*;Y-DT2ZoFeF{+3D^j}&%k>5dRWvd@*$0)fCI=Bz%vO5YINAS@ z7OsN|-oQCN%V-*U;8^i%{!IKKmf~IhN}T1#;#6Fa{0F$bgXz=!DY~z25~D#Ld`XVL zKNa11egZltVlG}Qy%(^-d+|2^Q7rPGD~?~=09?$$urhj_|D=`0GJh!+;x|w~CfjM6 zq+j3;1f66OH#>}JLzXXULABJ3Sw0P2zu$L#)Tb3ug-qVZxS^gaS{ZxiYyoK;zz;}U@Vom@N zOCsi4WGT*x4AvP4Kw!lJ1PH)mQL0=J@diO~L!34Zfux3vr(ulQRLQMY7KM}<7|9)b zM4F_n!m0=4o(%GiGitO_=1)P?P}`UQLAG}()CA}TayTa1)IIX#^COgNjooZKd(8F7 zo$_&#uEspvV;Oh%CabBvY-fKKv82vLqp3;aA<=33ixpw>Cw3AKyX_ZNfU93w$&AGx61W`RyRs^O>VbMc&%1A zd{e{~(YeE`sk?hbO zjXshB+7=#_=-lUr6E-Ub>$EU&IgrF1COua9YQ~ocLc3Q|9;N>x-<3a5dsInwnf2G# ziMv1yfqH?i`CG{8Q+GJ%`mXN=-M;O2JkPhRwr%%)dq{^~(6uS;*#Rw)qkxC|Bk)vT zRxW-LSSfsU{%`m)WzaT6*$xJ#inWg~EDu$KzDaG7E$}T1i`4m#R~7A=f4H!Gn$Ru8 z8FZDW@DlM}UKjZ!3a2oyq literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/3a/3e4259a367ca2135b7744fb0aae3f235226664 b/fixtures/repo.git/objects/3a/3e4259a367ca2135b7744fb0aae3f235226664 new file mode 100644 index 0000000..a3534ec --- /dev/null +++ b/fixtures/repo.git/objects/3a/3e4259a367ca2135b7744fb0aae3f235226664 @@ -0,0 +1,2 @@ +x1N0E}رGZmWbbQ䍠$* + (j `߈h@yOŋ2319#Y1$ZkbA)R2e95-$qa_;~D literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/3d/40a4d2f0cbb0f4f345a95cb4cce8582767f1f2 b/fixtures/repo.git/objects/3d/40a4d2f0cbb0f4f345a95cb4cce8582767f1f2 new file mode 100644 index 0000000000000000000000000000000000000000..653c9dd6adb0167b9bfa4bbb20277de819a84128 GIT binary patch literal 231 zcmV9LT zTN=1apel!@@;(yR+LjiHO|;5{;2Ncj*D6+y$rZFtSN#CzBXw}m-}Hfagp>Aq8QZga z>KeW~8rG+v<}X-jUm_f$K`iQ}W8(i^7xJE8WGCOU$qzEg1o=sJ`Ek~14u0fAHZz>^ h8|<9wPY|fFfcPQQP4}zEXhpI%P&f0sQ>)>p0GzvSXNDUP;M^M zzw;3Rs!&xyu8uCgu6nsC4E^z!T0M<2eG5K(w^CTA8oSECo`EL zi`hE0USOis&22I2hktJSooKKj0-~U_Br~U&fk)i$uYg#c6i?1IRb jWu}%FGx+c|ocw=w@p~!3O*h_L4RY*Vo3RxD0cVmA{nM!X literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/3f/74a7be31f054915003a3a18a048e745ef1d3e7 b/fixtures/repo.git/objects/3f/74a7be31f054915003a3a18a048e745ef1d3e7 new file mode 100644 index 0000000000000000000000000000000000000000..3f681f65d9387f97937819e33bb884a23bf7306b GIT binary patch literal 746 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.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 K@xK84M)8udEp;>i literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/47/e2fe8ad13acf67a0e4fde3af6502df3933964a b/fixtures/repo.git/objects/47/e2fe8ad13acf67a0e4fde3af6502df3933964a new file mode 100644 index 0000000000000000000000000000000000000000..a2d9a58249b826f7f67987c6387dad35de58ae1a GIT binary patch literal 1210 zcmV;r1V#IJ0j*ZsZsSxG<=J0xH1pC*)1rz8pa=;N!vhjR0`Xoau^K}zmE#WLt!X>7 znp9H>@qlKKfIo1YxJh&CFP!s7thJA8$Bi2TqN8-0<9%IwuXS8$v@7bpy$?Tl=c&@a z>V=-^$Xx2VPIRL5NJn~z&s>jnvaj%0Y)CU*%Qf!%jd0HCAd|V?SE${By3iA)Coq`dpP11^q_HtzQPE_KbTEc*Aw#+m?apmT{V<-0^>`B8$U@m;tc`;aXZ@PPX@4wrr2mVgzbwa;&xKnR8y&v1b54$jQsx?*m z&}khtl`p?Lp&NwEWY_aI6#CCR!HWLH#$|uGsz51a;iE(|FEgS6#Mp6mQeRmCA9P}le>@#dEk+C`yoE{HQ&I5Gx%uxyf$!lb@+{KcvU}RCw zOi1snHO`?t%CZT#$%f-4nYQAFtd!!3Iol`-c~oqJ!a*EC>U&^CF|zED4P1`MGPQ80 zc4is*oy4cSL&{pR_npMUi{hgYPLchvwxzQB~a z6w^FcMobUfuq#nuOakaJzLYgomm7RZ1(UY{!%>g&3Rf<^bvF`&v%slUumth?cB8N| za0C&kxD?f?=onZpmxEwGp`cj6{OVFv7`@%nTL%-d^wvi6z z9H7s!P`o>@Rpr=k)V^ppYF_YN&=4DIXVHUZE;O9>{GkF6 z@eO>qI7e<+S6e_wUZ8*;UN2A@Q(@7huCFWKd({wiZLcfdZ+IJ&p3`pg(#w4Q&(c2& zJhxU2j+>RvIuw`K58V5JXe5*1I$_-@&bW9*?jD^)F~%mdEBCl>f6YL$sjcftwu!8J zg?7kD%BKo{I`Y)VDhxdDKRZ|O9{(?$Q%sqi(z47SzG3!כL85̇ cPrWeum:^~wYHrA< "zUYUfqZ%:D?5l3?m@P0A8:"|>ȇ\MBQʱ28*} \ No newline at end of file diff --git a/fixtures/repo.git/objects/57/c8ad89987958b87025d1b13f5d9f7435bc2626 b/fixtures/repo.git/objects/57/c8ad89987958b87025d1b13f5d9f7435bc2626 new file mode 100644 index 0000000000000000000000000000000000000000..9cc9046e4ac9714032f3507d541d96a59ea6287f GIT binary patch literal 1432 zcmV;J1!wwr0j-zYY8zJ+hI_52*d#Xz#BM_=r7ne@5=x;Idbp1y50)BPV@Bhoxw9On z4z-D)^dhu{wr?QIR;1Xn{0e*CsNcW#=w!*V4JF8qXVzYafBoxUTcuiDa_@ii-Usj8 zcK&xi@O|IPUivfN@g3*8zU7bkocW&btT_JH&bIx4PbX_;+u2^B;D6(3-{ocl=g+e( ztWR+0&Gs)jNJ<_2x9ukx zXRlngOE?w3zg#HX2DQI2=#X+Bqixlq)Cc|$401zIlF zSo)w^cffti+C#16!NaawtESGvpW~>@b9IME*};k<_Wx(ZGf*Bk^F_;jPkmby#TWg?G02Ttu2gS;;wfqXT%>k0&-2yInWAIV9)jo zg-4GbH7W<z3)ik^1*3pUP%wxg4*rtX9{H_wRrBZljV^m(r+_R_kj^m3TdR8YhpJ zF)Wl<-Q1Uj`o_Ae+RsK>Oj1P(^n6XCSI-F){a1w>e??VL%BS$sLCao@1`QC~g~C#f zY}>|$x6`P$IB+NDSkBTpyfgtB-~kq?DN{tvn>9hyy?a4&rcTV#QLG(v?`}AQtWc>< zzf|Tz%QcQvz%chz>8#Jr$EsL*H|@wC9GW}hGd5w6p^gM+PY+1v0y@55a1Mu>YodkO zg`_hW1(Zi78t+kQ>cf05lP1ij3T{uxbPzY9N{Uai=hyP0Ihrm*!XX?P>LIYE7^CQ| z;CMbFlcU8>8IKk#Cb0Q0LvX%i2Lg`Qis?Y;jiyi1`rU)izWnCF7+#Y`?W!Z1yi1pw znq%5+^37XbwPik5M!Lsr1WHUzOb6&`Up_TbmpA;83#PV#+)0nd8O|)eMH@-ZmEdVm zunztX1EZh}2N?t@u0-|Jbd0ID>|OnhgT1gn^a_F0IdqGn5lh2t z1{{gwuo?jo^0|n$McWma@~=Jk63nzHrLYHTrgrC_gqni>qW8H-_uL)Jez+c_vX+y2 zn9Fk5#x`zujTo8a9gEQez;FWR4YP!lC@F^otct`;dI8lM```KxED@jAXr+@f#fD>x3VP(GUND+#Lo zpSR}C-^}=P;zCAEw*Dvm2wHEzwMgK0XuCa7g>$Sa%G}@A*%_UI`cSZ8n zolf^;w!vim$or7#3nBbJ0t|_HGuXa}>uFREM7nI&FX2U_5lDw+K~#3b(8Oh#I!rBmiuLD&TLJ;WXUigTGebo;_DtX^ui;U m%1`@lYL^>s4!Q&Xij7G>61EAWiT`_Ff%bxNY5Hq)$ literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/5c/4c9fbf3b06fa07d0022dddfde91e47566d1672 b/fixtures/repo.git/objects/5c/4c9fbf3b06fa07d0022dddfde91e47566d1672 new file mode 100644 index 0000000000000000000000000000000000000000..62f43dc779f214a03f2e8a03aa93b6243689e77c GIT binary patch literal 63 zcmV-F0Korv0V^p=O;s>4V=y!@Ff%bx$V)8COiwJy%+J#+Ni8nX%PMBLFw=dXS@^<; V^%#4Zp2IatkQc8J+z2C^+w|40tTCf_Kl%e~qzu)@Sw@|;`j$WEbK~1SUv~VJg8AFACq58r99z`8G#k4~rX*3s3#6Z-*wicf+xQU568$=l)Cv6M3nnO$6%j zXXI;zpZVUy;U*kW_^`m3`p!7)gneADLeom<;&M(I*Wvg9M@q_xpV@CJ4zFD}Af1{& zUQCjwp!Np_IVE>7+Ep(qz2{HCpl=9DGMYd|Kw_u{fTAUT=Q9^isO!?wG6(g#5AHiQ z9(tt?4lmtWHFcK$mOz)BYdT~KC(Dl7Bd9&!alV5=mw#sBvuBQgEq`T$%3@|Y2pNdR5S>;XtSvW3dGZ?iWdQaXWSbyp&}cBE zvU&QB71y({jChC#Je*$?dqo;xJ16X^851zFE2FA2qKhWtp3Xb;e-7?Fe?*pUQS|u~c7QUahVdmX_XscdOE5o_6#CD50!9B)40T! ztJBGt`A6zldN&@(4o)qc@fn-A$WTXubEE^xxrdJLCe9I1drh{uyO4AOqlogrMC(0h zO>>wYWz>Y-RKwYbOh<7etE9LS_GXHrJsNLA!XX@4>N{XfF$URNG4OOmMpuhFWw=^g zF_F!`8-mj%I}&hst(XqP*=YMDt=~NV^z*Nt58*Xw)LnJPkPnzrQ+v#~O}=@`qfF*Q zWn_BnMx?~p#^gZH`1)HTb-Cb6UodqWD4g_YSmDIQ_t=f3;41JsDp*du)5s_&gCmO| z#g(XDn~t&db~zaK9SJJTWSjjNihZE(1UQQKhaMr2@lS!i(x!A+6RoV4Kz< z>;w7@gwox4;)>hV+Ughe+G@G+U880;(JrEgW^>6Cuj{rOHEpXcg>cv6Rtjji?DZoB z5aKiVh&Y>twBqJK$6la7k8&wZsUVuw^>y+4aw(;*`NxW{*2*)KK3u!mOP}WRf0q7P zqg+@mHMZA_TaTeQvi;zG3PhJS3DF6g0$Wg$MnM%Zpumx aK+vT0;;eO-X4!j%82-STy1xOW!LEgBtZ9@0 literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/61/d23f4f64857be6f1235782c055a1aa262acaea b/fixtures/repo.git/objects/61/d23f4f64857be6f1235782c055a1aa262acaea new file mode 100644 index 0000000000000000000000000000000000000000..e156c995893dc475e3d3471d2387b171235d1d31 GIT binary patch literal 254 zcmV*x=a6T3gTs2((;*BSaue zQBdFtvp2#-6wuN=Y2NqEv(0=SA_yt>V(UFPAsiRBRJkZ@$@5&Il4W7IRhV&+Ax?ea zgk#sb^>qZzePPOJflf%CPbaxSM9T|hjdz(g4!K2*6Q;X(*|c!d>l#j*sxjL4a2T$3 zF&y9O+WDJ0#__(i5%IGng(^?##@*jpuCzKgcjPhIBVdwj)lje}unvUyVPH E;Rq^yRR910 literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/63/087a9b2c1926bc1bdd13e46239a6aa3ce7a67a b/fixtures/repo.git/objects/63/087a9b2c1926bc1bdd13e46239a6aa3ce7a67a new file mode 100644 index 0000000..9ea7082 --- /dev/null +++ b/fixtures/repo.git/objects/63/087a9b2c1926bc1bdd13e46239a6aa3ce7a67a @@ -0,0 +1,2 @@ +xNKJ@uS^'q+ѠH n\xo0 Fanޏժ Q1  *m#m(&դUCATJRiBR d +Zaz8;}=' r V( li'go=8FlR6{FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3R6EGPiFilM+wHhu!9iSJC~7o8hix)y)zZN6z@00at2nRyJNx|>g}Sa3n= zOxfy__syPdFZo71a$Q58ef3HC@H$olgyyI`)nrHftb{FtvSArN~DN|SOjlNqv@tyAj- zCQ9Ah7NdUn=eFO81{)$E3QAIoONtrfUl)s{1pCch_9N>2!IQR=6aKDV2$3%>$;>Hc zh+=Wp&!4gCU)!_7neiO6RkPD;yCL#rnW^Q)3_g4fC;y*a{9a0M(~UP*gB*L;W^4rj HjG)Y@d|Ttj literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/6c/3e5ca455f91ee5a2fe48ab5206c7cc995a7a79 b/fixtures/repo.git/objects/6c/3e5ca455f91ee5a2fe48ab5206c7cc995a7a79 new file mode 100644 index 0000000..f1ec95e --- /dev/null +++ b/fixtures/repo.git/objects/6c/3e5ca455f91ee5a2fe48ab5206c7cc995a7a79 @@ -0,0 +1,5 @@ +xuQKN0eS̪vEl* +"qvUN3%FlU;iS+޼TVzZ=.«bM@~v!gB,_F7$PuJ[>TXF~w5DN4 +<}9ʣa]}!K0y57h'­ 8AǽV%Q逎o( y aHyAï wQ c28}bt"e fJΙ7M}` H~8 hryԱq +X1#=q 7<9mk쿇V $_m36 +=%yI.:Gu>)Mc\B \ No newline at end of file diff --git a/fixtures/repo.git/objects/6d/bcbd358b1f14a47a2c36bc300a752f1fbf4df7 b/fixtures/repo.git/objects/6d/bcbd358b1f14a47a2c36bc300a752f1fbf4df7 new file mode 100644 index 0000000000000000000000000000000000000000..94f021bcea9b418c45233ae4195a555b2635d990 GIT binary patch literal 63 zcmV-F0Korv0V^p=O;s>4V=y!@Ff%bx$V)8COiwJy%+J#+Ni8nX%PMBDFIm3N@I%PN V0OrLDyIA^4;yzw}4gl*I6#@2R8Lj{T literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/6f/0999086bbd86ea7e8024e7809b9ee2b0349408 b/fixtures/repo.git/objects/6f/0999086bbd86ea7e8024e7809b9ee2b0349408 new file mode 100644 index 0000000000000000000000000000000000000000..d7651087071c337569a9dbb3a180d9460a3e4194 GIT binary patch literal 57 zcmV-90LK4#0V^p=O;s>4U@$Z=Ff%bxNY5z5ILcdDYq{ P-ap|xjbSAKhBXqPqaPW? literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/73/ecb7f9b6eac965dc35f3af9110b6383fa48569 b/fixtures/repo.git/objects/73/ecb7f9b6eac965dc35f3af9110b6383fa48569 new file mode 100644 index 0000000000000000000000000000000000000000..be3e25e3ad94a2316166d654da11f40808b2a495 GIT binary patch literal 47 zcmV+~0MP$<0V^p=O;s>9VlXiP0)>*);*w&9d1V^wI)X$_>8xJ=Q1kuXs{c0AGyoA1 F56-dX6jA^H literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/79/d0c280a3184f6278259dfc5a67ee517d666014 b/fixtures/repo.git/objects/79/d0c280a3184f6278259dfc5a67ee517d666014 new file mode 100644 index 0000000000000000000000000000000000000000..cadb2759df21bdab983581314a575e20d7464647 GIT binary patch literal 1397 zcmV-*1&aE30kv1#P8(Mg?el!aQSt&(prU<6wmotn^TK^#Grl9_e^n;eU}i(sO)b(>6z@<2d?vJe{hbf#GB$6N zIYl@Yf4=EBkAd3XFo==z6h=p^g{jYV4;UndK#4{xs1QgPvH(EQ<$0weWuG9gp@c;r zSnCOJKa}>MR^)+)L$&9HO2S{m(Gbts9Yiu0+X}f`Q0IEA^cV(H{1X!$JyCGj)mPG} z$QIVdOB9A;rsgvUHEF_#Xz#XL|()dSr?s5qjuFA(&MScxd?#0 z0kUl%DA2Gm2qpd0V@Yl0;OaMZyhxAIvq5C7&*>Hf@~yX zgSUB9yEw3xa4cbI0WU>B=I{U(u_-yCCe6wawe!SEPVU4i9m(1S_txzh$O8Hvp zwVdOK3NXwgR=Vml{)81%@A8i1K~LNXpJ8JM8PuWRboc=2ETN;Pj#6;QxkfZQyCCTb zMi%ANgyWr-#y%8#$(mp`S#Xq*X)A7sN+}+jKkB1G1BN=>$n(^ z>}X-9EJh0}#AHbeaX~NT`uuQBADC;bVof}WVo{U?%GIn&IBh`!D9I9 zSw?{}IEX=@;!;#6qGOnPSq_5zn1TvsVw!ayihatz;h0kFTA}{==n{sk>g@c;9&;BakpNm@_|>cKJ)8UH~1;2i;cCj z=t9$R34p(;Itc2VW*Hjxg@auyLE~@t`$gcEs+HiNQEuJkIm3SV?IGGwA`woso8pAU zBje6kGW62>Om=x6x!fLf0$ou1rSPt*zAOLiR>Jo|i>&(%<&cq-4;8-Jch#pV3|#jv zKm_XB4wrF{ec<5)Q%2`#Wk!!{IccCp8aNO5@N2IX`oXJgAP6Z2CK8hWN>cC+$NRtt z{-L94CkXsto2OOX-@Esy6&kx9ammYGv=S+zaLahH{Z~Rcx%%0=4X?IP2;^;VdU7?# zG#A$M%&WUUF2Vkwf?6BPT`N3puXqqhuD#5?QwmsC*KEm<%OckPZ$Xxbp6@=<`qFQP zZqu?O8KJ^tZec*H=D)n30%#`&9D2krK%$r2T{$j5gi~M=E&T`FBeprE7wIbyw{%?T zhhK3Rh}(s~fjX96v0$oYEhVv2AIY~kJxlM{_DfJ3%PComi%r36w5_h;SDya|f>7$! D<6gVP literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/79/eec830de6fa907a6f6a1e176f0e4d9dea3c600 b/fixtures/repo.git/objects/79/eec830de6fa907a6f6a1e176f0e4d9dea3c600 new file mode 100644 index 0000000000000000000000000000000000000000..2d424df11db3b2d35f4db51dc019ead296bd6ecc GIT binary patch literal 206 zcmV;<05Sh~0iBLZN(3QprG0z)MWM= zoJC)vb0+zOhR{I=q3F(MG=1p%6f}sqZTEAPn_Zmb-TXMGNIQ8wJe+a3eU1~-{;FAWiT`_Ff%bxNY5zftA(fR%<3ujpfzp^rTcj?7t01<{FCKS;naR2}S literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/7c/a983dadaf374d2bbd001447d49c9bf34cc54fc b/fixtures/repo.git/objects/7c/a983dadaf374d2bbd001447d49c9bf34cc54fc new file mode 100644 index 0000000..44b2635 --- /dev/null +++ b/fixtures/repo.git/objects/7c/a983dadaf374d2bbd001447d49c9bf34cc54fc @@ -0,0 +1 @@ +x=JD1F Wq_ލDv*XYW`TSdG;|p>NMn -?i  ;)EpUZLy!qJ.TX1Kt7MB*㼌JHpnW+uBZ<1_>al^0^qp,6^٬xwߏo}?/(l ] \ No newline at end of file diff --git a/fixtures/repo.git/objects/7c/c425367131bd7c17c73450e491dc8f919b7d00 b/fixtures/repo.git/objects/7c/c425367131bd7c17c73450e491dc8f919b7d00 new file mode 100644 index 0000000000000000000000000000000000000000..0e15978ffac639c2132b84194800af712a099ff7 GIT binary patch literal 466 zcmV;@0WJP`0V^p=O;s>8FlR6{FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zH+s7<#RT$v>v|G2vrv3>geL@s+XI>z~x)8z~`lZ{a^8>F-2QnF6;9Q7)x3GjmpBQcDlN03 zq_iltm_gsYx|Lt$h*?ujs>qfQYG)6zxd?&M~|KV z-S>Rg*V6-k<(t0ge9PDU8J{cP_RU4d{~GCz@9}A-wR9&vj3WOVPrEKN>p6d&Zex9k zt8<*#Nyo3c`!@GF_v1=j+)SKr^C;cL;>vS`xBl9<(;BgN(jz&$Opo=v=}%=a5tm%r zcpwjdO1ygdD}VPmaFrgC_#nX$`o=ijPWL!+k=87QE=SHt<1#(Ew)W6U9tZ(HPRw^5dtHq7nvu7_puCB+$`J_-yisiNW^~y%!O(p(i0mEoz z)lGdFl{YtB(SBBwT%0IUpyvk?ojoT|^j{Tj{1sI}DVxGu2Q7WqA2dL0MA3YPY{SNe zx1*@mIWU)TEMw^uUYdaP@BoX{lo6t4%^D)=;nN^FBPS;5DAo?R_avM_R;bjbUn(=! za*ZPuFwAXLI_b0dsVbJRi`w0pDxuj$F$qz zo434b$b6uTbdT8xlo*+qCeYKqY-*$~=lqcgrnZ6HNsk5@PAtB=Hj`zhbef^Dt!>~W}3W3x)bc>=9OT%me9Esyi zH3A~!Gmf=I+ZUMfuRVAGW?Ga|*kd(QyYo*%jX*!{eJavzH)q-3tOu#A<)j{FvK+Rt zjoT9=#s?c1uwkdPuxHCT;De?>#*%mC-0R|6E-6;ZP}F8faJKjWMlj#w+!eG88#upJ zEUmt*lvWGzPjSf(We2SXC_h&PJGd2>H1jrE>Ym1bJ;x?^K%g(-rC4l?+P_E zGz2;!e9JnD>W zUBFbcU0}lvO|3-dAZ)m=+7}GQ@czZUES3tdW_115>ZnvoMD1X9L`8qW+HnH*|g&Y+qH%NueBwblbe&!i(y9<;~s1pvkBZDylDcwhOeE aM-XDc^byMT#6O^|?<*r)Ecy@1-39?DZn4t< literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/7f/f3ebde13487c566a7c8b526d6d02fecf585025 b/fixtures/repo.git/objects/7f/f3ebde13487c566a7c8b526d6d02fecf585025 new file mode 100644 index 0000000000000000000000000000000000000000..ab46dc782aaa2916995b90cd64ac87aa0b27bfac GIT binary patch literal 36 scmbK%BP$v06kz3cK`qY literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/86/0505b7d44027cf3d7390996dce38008b783760 b/fixtures/repo.git/objects/86/0505b7d44027cf3d7390996dce38008b783760 new file mode 100644 index 0000000000000000000000000000000000000000..01750816fd20de83d090d6d5b78561d4af906146 GIT binary patch literal 337 zcmV-X0j~ad0V^p=O;s>9wPY|fFfcPQQP4}zEXhpI%P&f0sQ>)>p0GzvSXNDUP;M^M zzw;3Rs!&xyu8uCgu6nsC4E^z!T0M<2eG5K(w^CTA8oSBT~L~olbOtr z#cZ8gFECN+=C&C1!#}tEPBhpM0Z~v|l9^M?z$5PWS3s=JarUX;pZ)jP1lg4$c0uIJ jGE>Wo8GQH}PX0f;_`Q_irW4H)1d}FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3Y@!zn%G) z;nmX}XLdprB^DF_UByt~CL2G2)5LeC@r%w4E?tX1_BP)%F#rOEq|7`9QQgg_RxG$6 zb*60f$@^x{wivCI3x&ug=L7wfpOceXRLn3XQ`taM@4wrnyJqSfA$;3*N;f7zZ7E1h z&Q45E)y>II&V~enfY0IXJt1PMI``IyDtBA0d2@PIFREgQI>8>v16hCmWf#nKw{)>< zoged+B?Mx1L1|J>W->z-vvq2{z(lE=+hWuY|J?RF(O^RaL_tYvaY-=)`%<3G46p6w zI1jw9?EapW_9~=y4Me`QBr~U&A&SLWKYzxme{IhSXU22PR?SYY?S{ygWu}%FGx+c| bocw=w@p~!3O*h_L4RY*Vo3RxDWwyT4j8oLa literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/88/7e1cbc6d9cfacba20c41b03583dd1612dca683 b/fixtures/repo.git/objects/88/7e1cbc6d9cfacba20c41b03583dd1612dca683 new file mode 100644 index 0000000000000000000000000000000000000000..b221ecaf3582c906d519b0789a307d9c2ccba8a7 GIT binary patch literal 1360 zcmV-W1+V&e0j-x^OJi3QhI@T}#b)Nlfzcwp7_b!jB^KIYoXMC=G$G4Uo|7)f@zQ?DP*3+HzFpB(dJng#7tmphqx{dV} zuFi2{Cmp{U?%Uk!+>fhqX)|%Y!=rQ;i)+sj-ufHgN$bSkNsr|0Dm~WomOqujL|k&| z;DJ2+De)TVul(KPz;${^;==?(=)Q5fo$hhuBCT5rU5=cQ##MTB$3aqR;lF7=$vA!Q z(tX0I_@jj=dJ1ZPW6&byE=D`5MXC4v2^eICpd_OSR0Jf3DgY=NI`4ebg(u|Iwy^X; zweErYwzY>^$%BV&w_Zw|g}=d3o9F5dk<#NONA3aCp1*Yd5`!-P%)~dJI~+Frg*B=f z3aj&y!YHPj?hcyJ1ksQp=;Fj0GU}~?uR1TzEZcMP60T%D?c^Y8!_ASNP7TjB0qi}< z)Y{q&cXT+iIn;vpXJ@Y#acE7Abl8E#L^7>9vfO|m-0yJ#Zr>G>t~pMiVN zUr+#H)du*A5y{``%^S zwPK{Mt(L2mg8KJ4pW;@2VYRxkv{u^4EiS(JxK@ly^GTtWlq&1<#p*`kO*Q^y0mEo@ z%}sq7RW>(V$$r+7T%0IUpyvk?y?;)i=)Wr5_$#V{QZ|Km4qEzdFld0-jH3Ar*`|#R zZ^uz>a9}RuSjN&Ryfgvn;Q7>urr>aKN?t{E&j>gN7a0o|+x(}==#vpnlIG&Ek z=xDK1hNH!b32gq$5S%XAfq=ucVmc6dqv?~h{;>ST*WWD<;WcU0t~#a3`*f+UIi}qv z-@N5jQ|3cuqc|FtrWjPI@%VaANVz+DLM)1h0aEweWWm z7zJfG$RJ2@C8}4ZV@$m*2gCkSf(kR4W`Bxe@9S?I9ESa&R|urep<5J%x!XB%c+MRzAY7F|@-lrnnadVb^e?3TLEhqIbljX3D zZQPz2F+SM9fDJpPjXhh=0UtC4GM2on ztY9N!Lw`aj&9(XfPo!#WEYk_4Yn9$kc-)87N|`@AYX1c7dvuxK=YKA&CXYe1AB8~; zdaUbML-WjPPu^}8+-EL{3x!$vt3|5uA-?ilnjhsWI1a5)J{skF`KWcDwdWopV);#} zmQ>@nv$A6RnL!AFy1V5#uEtAte=JwmXC4dE7Zx_x&e5x1CXQMqnY`#SWfG*zXt-^u zDQFhd3wKZZvcO0^yttR8a^a_Y`gdn_wfXy6uVrP@q@_4mRMNn3H6(9c;dCuV{736Y z&HGHB3E}?{pij)l!S+?Pk`yX|NO#Tp9lWR&t8ZpjrA>jJposdSX1cB&JBAR;Vt`Pl S`Tu~nzI%*qr072rDC%qdAI7o( literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/89/f5eca8135b6f4f64a19a3813ea3a30eed2e8d3 b/fixtures/repo.git/objects/89/f5eca8135b6f4f64a19a3813ea3a30eed2e8d3 new file mode 100644 index 0000000000000000000000000000000000000000..329c2a0c752cc91eaf4d9c5c5bff6eab7b0136dd GIT binary patch literal 548 zcmV+<0^9v~0gY5mZ<|06?U`ROQll)E9f*6WWH*YGLzQ0YDoqcS70Iv+WvexdmPJkL z@ZUST3j`CV>V*~i@!rgPGm}b{!t&kw%QtybawAj;X(MFzQOOMTH!Z^|(O8<>q%Iav zC8mHYU~C4506?Q@bP2mS7ZU6E?C^ZIb$_O4ck7@Hf(bZXKLtHO<*GD9{r|W(8k3Cc zW}nt!F$C;U39L4dateP-p@U1nt_B~?3fS$ZulJj~?`+`?0Sb-z3M>j-1B)4~peZxV zMTwca($e=~9ne?g;OIONfTt>z-X~K0!R(7yjg%zyo}R3HQC&%4Lc*OzB%VPX-Y6w8 zDQ9bk?lHE!(N_J>$sQjl@?*@XmV#q=v7|TdQ5=I-%0TYSb6Y8os-`YNYu6~-yUpf) zlIjFoV)=u@y&k!1#c1Q*OC?79Hb+M#k>Y5i?2>29=anlBp*<6n&gGhx57VqV<_lQT z@qFH^+UrU+W?o3K6=a3aa3Gyu!OoSWp`iQIsUE%m7PYs&H~+b=edcF}9=qLjWNl{` zmAGXm17t#FX3^Zn$Uitg?;gDt!|3u6yaVrgE#)WrX_Nj$Zl)b|aP7JP^SeT5y^QrQ zVR!+d-Rp(rNsYjaMr5mwwZP@_W3RGC mVuX*C(xxWs4;1C`kh0GC9Zxp=k0!#fH>ee~>)x0i{(-k0Uh@=Dfcm${B_#yX>~PA+bj;T+trt<=LiN%u$D6f8gY~zU_p$3oK7D+C?g+_BV)0?E4oRLtMDkS7V_(Xt zWg3>QYY#l1Yajfy-R$P0KKypt@79;ipI*DX;J*unlm>lNOMyYfn@vSBWouMnP?hRf z8N4i_c-+jJ$KC$uZ$Xd}us0uxnrDnwY-DXTp1KMEwW8Uy;Ua>=(dT*N$D_UlLe8B* zT}Eq)&I%L6!PGclADyJ=NL_29B?!N~|M91v-#`3rZvij?RkSiXK+iyw!Q>_4~JmEJ>BP{`}Gd5OvI8*vNAUY17y{yvS_!Ft5*povZ0qn4#?&%`rT^X zg`keoaq3*+0J=LSP@a_H=jsMtu`h~1_o0COcI(HxzW$aD5lA&R5iNu@m82FFh?&H* z%p4$8Vl;L=xmO(?SU>Tjf4AN1r#DLxG1%7?Di0ko_X)bulsi#yq4W_nEI?(Eg%==q zW4Lu5q4k`lmT4e#M7AC`nkLO7RzoU=NkM6g!}u)Q&0RXY)g3u2CW%2vcxY^3Qewy#%!L8<#0Q0c!$Tg;(v{DaGrZ9$Qmu{i|TtOGd|9Rd-aNJ?T zx0;iJH_$$Y8fPEKh!URcYNaF!`Lop~ixT{@@jw1)eg^U3B?;D(au45N;}OHNBw_$a zG#Pd6GICJA(9o}$7x{GlmhZ1J?K;)s{f%6^O19XwjpQTq1Vd1p8up1jgdO2ht8xt% zDPNH&s$Vtr(m$f*%GFk@ui5s$(X>#GD>uv~7)+xQW9J>l5=o2~ z#+Vr2V3>BGv}JgObKb~r?K5;*T7N>_S)+#zo{>~yL0y*T)W}?S6}#nPs4#f z_qorVKlQ2a@HzKgpU*q~%fhZN_~fA(c0(&k{1;9Kt~4v0zX&^6_X%}E5c72WN!`<> zcS|o;wrZOV=erz*JuJ>WF5LPH-wjQ2?}kGK>xUzq=e{k2iM-U(B?5K$Hu=)?}rE%B^A811`kob6SXf3} z;QN~(ePdPgd&Fn$?egqO zeSQ9AZGCBO?*5(awXNDrV|BYx+jupzR$pIzU*CE?i(#_z(oMZgHa6E?&3>mSmv%eos5}3RL9c0 z@j!NPY~hU0*u+JKIue|g4k+geI)0EiM?md0+2Za((g}42~><6j!3!HyvZ^?Qt;d zdlFQb$u|2oioLJz1Zc(gLstl-{Ln3$Ml21p32-Eim)!`6SkG0gE!)1pRD8XI2Vka$ NQVM&N{07CZf|P8S(dYmG literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/93/4c2a011d111a5f944fec4d4c916ec33baea958 b/fixtures/repo.git/objects/93/4c2a011d111a5f944fec4d4c916ec33baea958 new file mode 100644 index 0000000000000000000000000000000000000000..f07055874c2eb50c7bf2e3be034c08248eff61b4 GIT binary patch literal 433 zcmV;i0Z#sS0V^p=O;s>4H)1d}FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3 z&Xlb_dEe~W7NfOtp%B^Re4xMbb8=FPiWv;Pht8ezWr6$7ugMDpXF~!(z~^xHo)9rroqKCUmAkFhyg9w97gaGtonVjTfvi9OvJ2+ATe{e_ z&X4)Z5(2Thpfo8bGnpZa**djeV4~E`Z87SHe{TDoXs{syqM#(TxTKhYeJRgohS&CT zoCn@lc7M-Gdlgc<1|nZtl9^M?uv^2pzT1BPjI+|GRo;l7<(@v#QxhUzmYG^!%;3Y< baPt4z#qXsAH{E!1HOR4dZN^prQg*-=jmqPn literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/94/692330292eff46d2dd362708540eb6b91b8160 b/fixtures/repo.git/objects/94/692330292eff46d2dd362708540eb6b91b8160 new file mode 100644 index 0000000000000000000000000000000000000000..f1b2eac1b1c3b8fb0a81f62e595860cd397d75d1 GIT binary patch literal 125 zcmV-@0D}K`0V^p=O;s>7F<>w>FfcPQQAp0uD@n~OaRyRF`8heMMS5Aq3@_?Fu|9O* z-Qd0I`BQ1mv@<1vv;3gy(=u~Xi&0feTw7H9cfr{u`Rhz#w_fwNY2qlzfvV2TOG&Lj fRlVe8|I2GHRxRl(R1==oAdr83(Q+dIlQTSUkDWTz literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/99/15248038de3cda750a07d4cde03aa16fcf629d b/fixtures/repo.git/objects/99/15248038de3cda750a07d4cde03aa16fcf629d new file mode 100644 index 0000000000000000000000000000000000000000..b80f6b4a7b8c237da55400965d4f7ef2dafbe6db GIT binary patch literal 43693 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 K&gKie+ePv<-A&>E literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/9b/406f59179a5ebf9ee120ca7c4a7ceced0e6192 b/fixtures/repo.git/objects/9b/406f59179a5ebf9ee120ca7c4a7ceced0e6192 new file mode 100644 index 0000000000000000000000000000000000000000..b6b4885cc2809a1de05bf1d6d3d2371e83b30b2b GIT binary patch literal 125 zcmV-@0D}K`0V^p=O;s>7F<>w>FfcPQQAp0uD@n~OaRyRF`8heMMS5Aq3@0zPHhnw( zyW+P_qV(Au-uQL{ha#x@w9K5;VpP?8wpzS(iBRY1+g70}H)Z~Awxgo6p{g_UQc^2W fRrA>kaQE&Aczx^?gR#(IjqjF4XWsw-Nd7rkb&)%~ literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/9c/fa4bdd2d4bc428ea158c658a95a4a8bfb3e3ec b/fixtures/repo.git/objects/9c/fa4bdd2d4bc428ea158c658a95a4a8bfb3e3ec new file mode 100644 index 0000000000000000000000000000000000000000..b986d682168d659cb86e6a6db4550f7bea90bd3c GIT binary patch literal 386 zcmV-|0e${>0d0~^Z-X!lhIi&y_(srBI_*-aRXeGNUAMz_nsx}_mQ*2OAxxE8{`+jc z%3+*>?Yw^cI+<}9te@8pxwB1xE1YzA)doL2B6P3=k3X&UC}JsBZP2D!QAM0=qwzun zkhR(r2al@AeOqNsI>p|yGv?vbo9KTftA6!K1??;gMwKgCgAy;b^P!>M$JXYY6$FtI zNt1%bOGw~K9VXyXHRVJqYvondZ0B^XLix@yQe%~|;OprdZa0YIL^ie2LBuOM9<>SR z#lbm)$}-W^g=I)#R+9$pi9#=n(AjC*>%b$B9BfFwm+%-`ZAE)1WPlA~<=@Rc5qn_)5Y62`7vnA|I^s&E4w zByU2w^rLpQNJhyn8T?>*T7>jy3-T)N>Ed)|1_(MBQk*g~Qg(kJBiZ7~EF9_AC1*Dm gsC}=QhnEb{4U?evYze;(L1(5W-fkQH0a%XRTKG`9?EnA( literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/9d/c4c7306bed48491c5887daaacf222a1eeb0b60 b/fixtures/repo.git/objects/9d/c4c7306bed48491c5887daaacf222a1eeb0b60 new file mode 100644 index 0000000000000000000000000000000000000000..1d78d1290e5f5958dd2762f483b6262fcef0ea6b GIT binary patch literal 433 zcmV;i0Z#sS0V^p=O;s>4H)1d}FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3s% zohe&=^1j)#EkII&V~enfY0IXJt1PMI``IyDtBA0d2@PIFREgQI>8>v16hCmWf#nKw{)>< zoged+B?Mx1L1|J>W->z-vvq2{z(lE=+hWuY|J?RF(O^RaL_tYvaY-=)`%<3G46p6w zI1jw9?EapW_9~=y4Me`QBr~U&VYh~HeYgGo8E2(WtGp3E%RPOfrzS+cEHkydn8Amy b;pG3bi{DELZo2X2YLH{^+KjCLfDOR^h(6bl literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/9e/7628ae885214ca2cabafe129efbd7aff3c9628 b/fixtures/repo.git/objects/9e/7628ae885214ca2cabafe129efbd7aff3c9628 new file mode 100644 index 0000000000000000000000000000000000000000..42f21c3a2fcce5a11eabd776909634806a88ee7c GIT binary patch literal 56 zcmV-80LTA$0V^p=O;s?qWH2-^Ff%bxNY58FlR6{FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3vI|@`UZnTe` zUt+pPO%19jv7i9xDux0#+4u>ZCcZO`UvzG8>011;xA~@t0T3u8W#%!6>TW)@V!;Ke zGi9q!-Zy);#b~WuC`2|nALy_AoSf96Vuslc`H|wY;`YybsBo&rtLDvHzQjooRcVZo71a$Q58ef3HC@H$olgyyI`)nrHftb{FtvSArN~DN|SOjlNqv@tyAj- zCQ9Ah7NdUn=eFO81{)$E3QAIoONtr(zgOlAx$m=(?Yh)%*6owk=1UmYK;%nHGINR< zs=3zRe7LN5(lJjx6P~A9JCd9ejzHwgGE>Wo8GQH}PX0f;_`Q_irW$3Q#g zJ^R`3IaRAGw#k=Q-wVbPRd$fvvt%b-x|cA5Nv;XsgRxR8q6(h#JfH$>ZDj8v6Tq&N zzD_Cu6aTaU4TTm3Xbvhmu#V(9T{k78SE!6sT5Ft11?o_U%=Lf97Q9&Vl{dOLE`9*=rN2Hp C%B|V} literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/a2/e7b9f70d3426f86b000c275cbed1abd02c0a08 b/fixtures/repo.git/objects/a2/e7b9f70d3426f86b000c275cbed1abd02c0a08 new file mode 100644 index 0000000..6fb173d --- /dev/null +++ b/fixtures/repo.git/objects/a2/e7b9f70d3426f86b000c275cbed1abd02c0a08 @@ -0,0 +1,2 @@ +xNKJ@tݧx{A`)^w:t =z/H (z72/ Ԣ** ]W@y}RƜ!fĂQ` +mP81;i1rRIYuAAa]&'h_.p;Dv7+.oٸ?\VP)$J-Hǒڂ_?x/<#;-"`E}z<7%3_|j} \ No newline at end of file diff --git a/fixtures/repo.git/objects/a3/5931b770328564ddde0ca70ccdab832b22e97a b/fixtures/repo.git/objects/a3/5931b770328564ddde0ca70ccdab832b22e97a new file mode 100644 index 0000000..1ea0f68 --- /dev/null +++ b/fixtures/repo.git/objects/a3/5931b770328564ddde0ca70ccdab832b22e97a @@ -0,0 +1 @@ +xA1E])j/HU21 [F3(z j3ԑ< }yVÑ.H.:=yKW(2V0}θ`#O+[϶ 606s ~} cˢ>,#M10G3]WcFoo> {)CGi7T* \ No newline at end of file diff --git a/fixtures/repo.git/objects/a3/edd8b041d894c59c06638f003d5a5cac9a5424 b/fixtures/repo.git/objects/a3/edd8b041d894c59c06638f003d5a5cac9a5424 new file mode 100644 index 0000000000000000000000000000000000000000..9b7ae91e361d2c91fe0803caa38ee05c4baebf40 GIT binary patch literal 434 zcmV;j0ZsmR0V^p=O;s>4H)1d}FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3s% zohe&=^1j)#EkII&V~enfY0IXJt1PMI``IyDtBA0d2@PIFREgQI>8>v16hCmWf#nKw{)>< zoged+B?Mx1L1|J>W->z-vvq2{z(lE=+hWuY|J?RF(O^RaL_tYvaY-?QX#Kv^kt-Lk zHdr3KRZU`#l-sAt?;!G}C7C(J47)Xq>$~mu&p0c6TIG%SS?=i*JvAZnWtpkv#SA`t c4JZGfUHo23aMO)9SA!gT*Jf-50IhDpdl{e9Gynhq literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/a4/e98fe9d6e8aaa48e7126139680106fd7a2a732 b/fixtures/repo.git/objects/a4/e98fe9d6e8aaa48e7126139680106fd7a2a732 new file mode 100644 index 0000000000000000000000000000000000000000..1fc0bdaf6f6ff8482aae0b2c6a62ead2c65b455b GIT binary patch literal 287 zcmV+)0pR|40c}vrPQx$|0X`s)ZDYx?TR$ME%D=OYqXZ!= zMRs;(XJ)t2wtPB*?$zoJ-G|d< z{(o^;cdd&<<6-(&#nhkbR0m~E5-SGVMU4{2vvt8!$1$2Vp_~Ggl)?+R7693mA`r#k zR|?5fKLFJveecQ#>%RG23HP@`h8_(k6rj%l9G+*PRLWwS08(3UIn-ya0uG7DlVv_q z%2X}aLhtan|1vTx`TN&FWjtuPLMGT$;(?7&yICI?6Rw#Sa~|l@}RTickOm literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/a5/296b429b84d5147c923a34ef7ff4e95c0f8352 b/fixtures/repo.git/objects/a5/296b429b84d5147c923a34ef7ff4e95c0f8352 new file mode 100644 index 0000000000000000000000000000000000000000..68ef5f8d445514176058aee27acde3249e2f4bf5 GIT binary patch literal 1200 zcmV;h1W)^T0hN~DPGeOR#=SmIu`_cslMI;A3l(Fc#___$m}tDGEe+IZDJf-)cNAuX z2pJONg;5jr4a$K7rL^T0_I@LO-`alMChTH;O{fck zn5W}U*L_ubQTndZs%^EM?{O6Nu^4(>c3|S#83?YMOXgLr!JmQ*QKRp4(jzKxbNC{ z=#@G+ymafewzKp%1iIv0(;-thS#i`JK^^(N^L-2k{FsSPpEv?`{gn+Wjg579NMkfJ z2>at9q#zng1YLsIKqjMgiPho3xm9~XUBZ>B7kQ4ecHJY&lUL!F0@!Pi?SP;`qrs5M z=IQ%Z+{nT*;sOtN_;^|D6={I&oUo^6Ou)#ll&a2%E}DpYI`7l}Ik=Df6%CM9V}P$1 zQT)to#&taiufQy0ypd{@wTtl~;d&2pM*Kk_AeVY>fL53SdpJ&#)z#JQjYLzc)SH`C z&F@n_8$0FYO0%)DR%?`=KKV-tl8b+mAfbU-;X==ee6908?kvPJDe(m9MG%3~ABd)%7l zusF)33EEV{>BO3j%Z;pB#r?4VMp2}r={B@Dgd?K91=cpkID0n+UW~}3w763WX>r9w zHveS^E?(J@fW@_9dmzq6>eFid_St7&eEqC|*H)wMsxyXsz?3@DG2^!N%~KwwGA}kG z(?c7P5>txFfS&Q?s?m12;7h(RbsH$0_EAyc+{Jg_jilfz@H%d=jCiM!QBVd)grJS9 zrFw094AtA^VA%JyP+=x&_GfJD1AQmJQM^C&hy^J>_7+XEEDf_caI_q6yAcqvo>{Cd z+kwDTeBFbGV5W;w8}>xQ)ZO_fsivTxjlK}+o+eG}P>goDpxtKaMQy#*t~EEIm-ruE zg7Ods>9Ra=<(*o6?aO9;t=js&RX3Yx7vW+_bE^|?;C5Pd$`$RpSG&*6W4B4tM>t7P~YWT=Ed|aopVf;U0RvYlJ41C%KZb< zdi9wSgb`{1WyT0bj@|Rsd9KVXhcf}4G&i6+lD7|f% OXk4RNdHx^HHAogbQf_(x literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/a6/50ac6d04e840290cf02bc4e8fcf917d2f1c4d0 b/fixtures/repo.git/objects/a6/50ac6d04e840290cf02bc4e8fcf917d2f1c4d0 new file mode 100644 index 0000000..e8e880f --- /dev/null +++ b/fixtures/repo.git/objects/a6/50ac6d04e840290cf02bc4e8fcf917d2f1c4d0 @@ -0,0 +1,2 @@ +xAJ@E])j? ]1RILYJ}y8nn%J;An=^f+?bkMT^o$G)fUIp>}m9xOv6iRhDWZ#B*A!SepB zZN9|Qrl|+@W47lH_i#G%S}`AWVlrFF$gx-$g@{)r7RODZ!lO)VcKiQ#`fpZy%Y*vf zdk_7h`C^Ix=JUhL3s(E{e7N%Suj@6$xV^*K9pViWEvHtB=2Irvl|MK?to6;hzq+&T zW%s5#>mN7w_gBsKDGuLs>;AYq>0US8>+YoK&T-jEf7~C>hMFF2OM3@eD7sit$QT!- zC6}`jj1%WVQ4wBPE=$fSTvmQ_XuM^tRcs8}pZzo7K=J+KZr!b${s~YX<8h6HO?O(s z;rXx4mEZM0HQhhmOC0v!U)~wuU-*an_x);rx!8@L8_g8Aw)h-LD#?5nMRE~>PPhq{ zcriMAJq3Q&5^n_`!~X|RzaBt8-d(egHgG3(jv=NTQN3qTn+O~xCTFdTEGr$SsTqu9 za;)ax(3t0F%qiH0-k}|fWyA)iB?j}N16CLl=KFqyTDZiwHc)L1L*k#;=;jcbC7+S=iRWP z!y03 zYn2}3UG=)jIuwblBqxlrSx{6A{8N-X6$wGvsIpCr#B|VvZUv1%`w&i<%((EGN!V4= z8Evto8~|vqz0V;NOR#X7u42wwrba4`Q2gQQ=)pBYD3przkwmuK6rDWdnxr=-gE$PY zBu*vy>5691_?X*n2Mb(ly_@%}K%JT&$`q8Y5z+NX(#wT@1O1lR_0t zkeQJ#)$lkGFol@HZ1T{J2n@rWS?{gnwzOZ@Jmg zxSt1O*v926(RpwTz#2m4@OX{TFj;abK60>*l0#_W&Ss`bCAfxhILXeMD{IPSB)gf= zxNd1ImR(x*MdtsAj)hbg9%-${0+g(XAxMQU?vOGaj4_8mcCr!5TCQ5MBT}n*3>kWj zfOdi{XjpRIt~J|~w(aFJ*p?siw32%a|mclZPU!i28rXiQ1wfLZIL6WDg5kerEZ zFqeI0Xwk-Fp?&YVcY}^Hs1OV7XdZ9G2Ve1?~opaYr^EjE`1KГKJC]Y@CYp5ݟtsx v`v|X?:Ӎ>뷾ꋾ駾e.y s~_E] \ No newline at end of file diff --git a/fixtures/repo.git/objects/ae/a80198499e567b0bace2ead0a58f2aea2df30d b/fixtures/repo.git/objects/ae/a80198499e567b0bace2ead0a58f2aea2df30d new file mode 100644 index 0000000000000000000000000000000000000000..0e6ddbaf9b106789741731cc4aae31525b6d5503 GIT binary patch literal 433 zcmV;i0Z#sS0V^p=O;s>4H)1d}FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3mNOGYuH(}(r&z; zvh}>?F%_ty#DW5#s~8I0WaB4rn)uE%e$lzXrEBrW-sYPo20);Yl$pmMs=N8riUk*> z&Xlb_dEe~W7NfOtp%B^Re4xMbb8=FPiWz1*II&V~enfY0IXJt1PMI``IyDtBA0d2@PIFREgQI>8>v16hCmWf#nKw{)>< zoged+B?Mx1L1|J>W->z-vvq2{z(lE=+hWuY|J?RF(O^RaL_tYvaY->l?w-A--SQ$! zs&vfu7;u&9%kTI74v{Y{$;>Hc*sWn)-)+Bt##!mpDsRNka!;S=sR@xU%S3VbIG=Nlnz};>ycUNsZ6VPbtkwE#~6V%d1R|&o3=0C@sAWiT`_Ff%bxNY5z8Nd]DA^l3,UX&5i)4 ; vn`{PT hzuCB6T v_RJpUx<,nV7QJ$d~< Bz4~wtq:1 ) )%'7g] l A{&v}v \ No newline at end of file diff --git a/fixtures/repo.git/objects/bd/db3db94fe7b8db26de11863d505d51f6adb11b b/fixtures/repo.git/objects/bd/db3db94fe7b8db26de11863d505d51f6adb11b new file mode 100644 index 0000000..10d64e7 --- /dev/null +++ b/fixtures/repo.git/objects/bd/db3db94fe7b8db26de11863d505d51f6adb11b @@ -0,0 +1,2 @@ +xAj0E)f_(GIJd5mbtM\a|=>i + : Tc^E i$W"R6[:W@L>`v eZ& e \ No newline at end of file diff --git a/fixtures/repo.git/objects/bd/f937f896fd5987ddd9a9cef93f78378ebb49be b/fixtures/repo.git/objects/bd/f937f896fd5987ddd9a9cef93f78378ebb49be new file mode 100644 index 0000000000000000000000000000000000000000..011640094ffc5f143ad9db3aaad92d3255a5ab1b GIT binary patch literal 727 zcmV;|0x11>0j*ZsZqq;zozngiR37@XJ_Y}GjleUH?W|#y1I799`pkSBM1Xp z0=he-HiHN@!Kd#+*Qcgo_lRp0HwqYFY7bX}9`U@vhZTp?;R=Qm&nRMGAx&w8uIID{ zoz59kRchHwbC42Qq z(8HRI`?OK3HEP6Z&_=gfC+lkj(>o8=YxPFGW|M|fCC+-)F*cHgL&AD-g>t#tL4SwU z$~W1r<(=S4L@V?>jOyGQW%;5?a)%kB4p!>W!1i4W85N)S2|wq5_=(tuEHj8Bamau3 zGx3?9ith%pz<)gi!&&Wu}4aFZsDR6kqrl^IbrQoZ-VUUT6GN{=5W9jJ6UW zR;TCFE|#oIWXf>KD&QyX1ycqV%WP0q0-K#m7XbwbPR2%+4u%6n_${y7f{c4YD|9AA zafA?mA%EjVAjUh)1rP~hw9h6G!@fhiZl5|!!8+CPH{-=#*yoqxYb@w7%KTGFj8Dh> z0{iDczUM!*OsT|{oeDg)r8&vlfQrr5?4trYGG?i z1DRJCHJp%v$?Fq?%|~gFuM9D=lUtA(S*m+}k#2UK87UAPL@IaIEdSvYlhZ+?dZt(4 zY#fVkI5ubE0R2LI1hzMnhR%FSwG`>lO#9+wGi4jtKM6;Yn`W$?a_5vgnHvX2_99E G|Ժq=v8Am)HLNLOOΆTcfFuQC-P |ZM-]Z* Jr2S&J~߉" +JK2sx +9> R.|Yfjy1_gt ޵[xѴ \ No newline at end of file diff --git a/fixtures/repo.git/objects/bf/5febfd6f9d51245d3c53f49d5c4ff72ccc82e9 b/fixtures/repo.git/objects/bf/5febfd6f9d51245d3c53f49d5c4ff72ccc82e9 new file mode 100644 index 0000000..c6d6863 --- /dev/null +++ b/fixtures/repo.git/objects/bf/5febfd6f9d51245d3c53f49d5c4ff72ccc82e9 @@ -0,0 +1 @@ +xMJ@]o/$= V<΋DBO(ƅg8+bn0,]Qaj:Ptn(ZkR}GPur%ږMkj2NVzb.Opmw@}' T^Z b#vh yO//٤2Czmz:[>d9A^A>edf-i(vC_}Y \ No newline at end of file diff --git a/fixtures/repo.git/objects/bf/6f83f2779b4829ee5301211352f3a3814feedb b/fixtures/repo.git/objects/bf/6f83f2779b4829ee5301211352f3a3814feedb new file mode 100644 index 0000000..b573c33 --- /dev/null +++ b/fixtures/repo.git/objects/bf/6f83f2779b4829ee5301211352f3a3814feedb @@ -0,0 +1,2 @@ +xMJ@`9EOD܊5$zFA7.<7@`PP}#,{|Ej@UZVέ+MmȰڹ6׎!h>ĭɋ\56MFkJ2uFvh'8nkw@q}:]QcJe5"?{||7I1%!s*]|] +s;If#34uW~XL} \ No newline at end of file diff --git a/fixtures/repo.git/objects/c8/1643d8fa442b8bd2ed46569f158cd27977b916 b/fixtures/repo.git/objects/c8/1643d8fa442b8bd2ed46569f158cd27977b916 new file mode 100644 index 0000000..a148ac1 --- /dev/null +++ b/fixtures/repo.git/objects/c8/1643d8fa442b8bd2ed46569f158cd27977b916 @@ -0,0 +1 @@ +xAj0E)f_(3F!.E)F&v1JhvIOcJ7 jr/]&Oй}5u-#_sjjHS22鐡EX5BT5QTQ+L [6 4n zUrQN--bh1ަ|[. |}>K.?yx4}X[ \ No newline at end of file diff --git a/fixtures/repo.git/objects/ca/495c7e5a5e684ae974e2a8cfff401a3ed2ac33 b/fixtures/repo.git/objects/ca/495c7e5a5e684ae974e2a8cfff401a3ed2ac33 new file mode 100644 index 0000000000000000000000000000000000000000..a8cb7a0a06d73dc410e3a00f2793632521d983c3 GIT binary patch literal 432 zcmV;h0Z;yT0V^p=O;s>4H)1d}FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3TjbvK_{vEYK# znX=U<@0&f_VzgE+6e63P5A;`lPEKl3F~gKhWdlvU|8AG=nyGVy@NL^E-IxHir64gm zJ25>~Hzz+i8xjZtK8L&agovr?+*>26+-v5Qx4H)1d}FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3ZCcZO`UvzG8>011;xA~@t0T3u8W#%!6>TW)@V!;Ke zGi9q!-Zy);#b~WuC`2|nALy_AoSf96Vg`fnp>yYaS>V1iY`bo8sz=v%7O_sKEd`0m z*@@|?x;gpD*^odG@HyPQCqztD=iVAos+|ws|YC`18GE>Wo8GQH} bPX0f;_`Q_irW~l?qDo8nh4mjXySC%3n?h0=$&u}yJv-;j%(3Bm1~eO6TenPa6fl@T7|;sP zgE2K3M6d%seG@u9)iu*5j#l0-VSui@tOho5UGH7hqI6uvaN=rZ3@l}kM(DU!&vPy6 zKl9xRB+rgZ^QQ+sC6?)juZfrnkMO34Pvz$mbRU491~_I8H(-l1a%Fw6)X9v zwf*2yL@#t*j2hgTJ&EQ!=2T=xJfmD!4(j~ zQzD6-H_Lxa&%!YksaMX9w1_!BiNE34%;F4F<>w>FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3g!xEjcp zBBYj=cp9oGv7i9xDux0#+4u>ZCcZO`UvzG8>011;xA~@t0T3u8W#%!6>TW)@V!;Ke zGi9q!-Zy);#b~WuC`2|nALy_AoSf96Vuslc`H|wY;`YybsBo&rtLDvHzQjpTTM81B zvlG)(b#wBQvmt@-GgV;a>6jUBDyr{zx-YpAzURh7T~x&obqmzOD>k2&_qcTMN0V=F zOP3aRz6!+Zg3_d%%w&cvX6w{?fr(N#x5cO*{<-aUqQQm;h=S6R%$#C|-5SRA-S+!u zoRvPU@<#kD_wBgI@L5{s^GqwT%CsVW-i~Z8k literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/d3/b5b29cf126502b255282a00b19b0dd1711ed0c b/fixtures/repo.git/objects/d3/b5b29cf126502b255282a00b19b0dd1711ed0c new file mode 100644 index 0000000..924f6a7 --- /dev/null +++ b/fixtures/repo.git/objects/d3/b5b29cf126502b255282a00b19b0dd1711ed0c @@ -0,0 +1,3 @@ +xMJA])j/J nܹ3#$}6QBs#H.-LΆ^|ΰA8cNV'A +]4&{ K056KI{joءcLJщiZP$>4Ҭc!Gl8<996HU~:))Q.Ga-uEY|qز]P"64 + V`=t- uqNF|])?qrPMٖ=}B7/a \ No newline at end of file diff --git a/fixtures/repo.git/objects/d6/d0878ebbac696b6ac64fd1835f735a55c11cff b/fixtures/repo.git/objects/d6/d0878ebbac696b6ac64fd1835f735a55c11cff new file mode 100644 index 0000000..44d33ba --- /dev/null +++ b/fixtures/repo.git/objects/d6/d0878ebbac696b6ac64fd1835f735a55c11cff @@ -0,0 +1,3 @@ +x+)JMU06d040031QK,L/JeGMXVMwPn.ӿPUA.z) .L+[i:mZ^ o@%e3O4isK⏽7M @!)3ATw .H)[}ٳ-FkB!y%E99E G|Ժq=v8Am)HLNLOOZǰ3{B9K'1\83b醴X4>t+K=| Jr2S&J~߉" +JK2sx +9> R.|Yfjy1_gt ޵[7 \ No newline at end of file diff --git a/fixtures/repo.git/objects/db/b9ce967b1be6ee2c4810d5510e6412266e61cb b/fixtures/repo.git/objects/db/b9ce967b1be6ee2c4810d5510e6412266e61cb new file mode 100644 index 0000000000000000000000000000000000000000..dd31154a85f39d650e8a5b05fa5b419de3178b45 GIT binary patch literal 1385 zcmV-v1(y1F0j-zYPFq(HhI{R&SW0e)6sS-yqEc1rDN$9as?@_hHdxrLvC;M>QSLBF z3KA$tRWG8pQrkB$24e?|d4;v!sNX+p`-F`Fsfr9??^$#B=bwL;3zb^Iee~qx{K{VAVI-}UVk$NySk*Z29fLnG{lgIv!4#?zk5%=*q>g&nLf zaCL?gJL&kEk=YLpB%3G=PT^@y3SX_FJ@YY}XZfFpDHyp~@ML5#)wm*@uYe|vG!0adGN5~Hp;29@K-qM@Lb&?QaD<1vbAR1EyU7T1$#=SN1)!@acWqU?m!j-INog7AOx&_kHsnNL>fV~CT z1_&B7Y7C*QpZ?sE>zi9zJi-GWK3WocMH*l`#qF^f<1n(TMOG(x7fr-HJwK=ZQ*iJ5 z_Y^=_wE@0jMDo{qGtBEjcmrl_+8e1xT00o;ST7~z#k5#Y%hip=Qf;&NqL%!!gkf%N z-OYTNt8Q(&vi+>5`6N}ONY8g9di$I}(SKFA@mEv@rECgs9JKIeIB0;_%HukPeUb2M3oghMzo)B|8mF^18b(eZ3V z#z%{tG8!#bOl0$4hTv?;jszU771M#(8%>|2_4}uvfA#It5xgdi+Ephsd5~t z^=RBgM+v~^a_F0IdqGn5lh2t3LJ^! zpc(-Y^SO?-McWgY@~=I(4`y1FQrIIkQ@is|LQOz_-TO?WyKcdiY zyIfg+R;#QRlb@1`9m)<`4^V!t3U+Wisl=Ht&hRK;7NbB&j7Uc7LqYHs&6S(iayt*Us^)UnY)PC7HbFGG!8^%V@l9 zsVQg{)Qfjd`?A1D-MzSHsM*PR? zN6iOJp9|st5nw>f`@!~Qt(q3Akw`bq`VG9OmufHOR;5jWo}h^OqGr0T9Xo*#%VLO7 rruqMXw!V8zY$Qo^7?;;0XYx7}1Nn(vA{bI`H&unZLBsz8{v8-^6aT~- literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/dc/294226663773910fe289d1a06201fd72ef0fd0 b/fixtures/repo.git/objects/dc/294226663773910fe289d1a06201fd72ef0fd0 new file mode 100644 index 0000000000000000000000000000000000000000..49d6c34e9dff522e6e1f3091c7c4234516ec2d97 GIT binary patch literal 1349 zcmV-L1-klp0j*bEZyQw*<#~U_Rr``iO;CkUQ4kVeEgup>;^RGQdlfIWz1Dgi=v$nm zB;cr#5Dy5DfPdg@youx3&R@9qA92pywb%BpO+d7A+U%W~J9FmDnRTfal++tn?pUpCovs!Xu6K0f5Ov|O3fxp-+OL9NIG53kjpA1S&14uP)moZZ1q=6pvXcMIx750xImV1&P7qT@#j0ekvJ z8Wr2ZIygjOC}w1iW=)8Js7(>*B8W6(K3Wg4IymS{wpYlDxFYK!&)Ka#wSn~LmHEX0 z>=lsh06~Fv2I2E< z7&_&ODm-)=&ARgCXDf2Uh&Ne!{(?mRc}_slzgW2NmsABx=@hOUH1l#cXaF&GoUIhu zSjGmYi>UVCu#s{sWoZE~ML;Hq02Z++3q(zuHAmF$BP%%z9(g*FwHfy|tq)`cmCE!} zWtLjbaYO|e<^e0s$4uU4#nijSK=R;1!U>;YV+R@3q2P4+0O>5DqeqTX2*|m{ZFY7+ z(i}z><(Ub`dsZ6zP#k661hdJ4<2jkO;)Yu(#Y1y+uPB_O#WE-y#1TV11y&Sec6-kT zE=FX2w6IgM(ZY(cZ2nykES79bz-+CE4%pss`Y5emJbmxO&z@%RiZpUpU82b+=u(Gs zjCPBB;}l0R%`;_0_b?ll5(^WP0D819of@jk6@EztliPsds7G0bxy83`BQZD=ytN9J zAl`*#6et5n3<4FGqIxSjhN+k3AlMHns9+|hSzki2Pxw0mbnX7&5d@Nc&@B`Vu@ua5 z;7}Z=)es1q&ob6>+X=yBeD1+hV8%sBg*|68xjTQuRSVEBM=wNrz)qudPz>c_L92$l z@9(*hA2dKO^4}Z-+)$ep8LHX+_^wc49HceR@~yF)e>h zLuOrDSCg=bWA-D;;RsSMRrI3isdrQqdftC_F5$)fUpl9l@^)&;oYwF?BrVk<4V?SR z`_3!3Bk!a1EG0iS2NWWfss4dO!3RN4yq{r|z5@0u-KPe5f5hhD2SFq98qrk6{sahon_kdZ(Wn9y zn(>C@=9ddfB6VHfy(kJRlua#*9+Jsoq~D+Pc=mQ{zkYPE7SffJX*6G8MTb>AC_n!j H7g244W}=Mj literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/dc/4a6ee4ba07076809598566179530a56492b2fa b/fixtures/repo.git/objects/dc/4a6ee4ba07076809598566179530a56492b2fa new file mode 100644 index 0000000000000000000000000000000000000000..2b750716241bf4b09818be74174e767b64090b28 GIT binary patch literal 205 zcmV;;05bo00hNwBN<%>uK&@vLw-@Bj=T2rIh^@GaJ3oDB-jl~9Xs3ZxDY6GwU}35h zZeeCeN^k>qhXV&roK~x$f+BrU=bXV8q!2UaM9e-YTv%s~@_CV11)T~x)K-#s<~ffQ ziYMY!qS3*nXsjk5Fh*IVvP5W;!-Ccr!Rz`k&2YQn5$>j^DRADva(F!BaP!Jz$}d;* z`Whq|lp4KtaETgG#Peg#|EQ&R_*aYe(T@GSZ~GqFS3C6s^j$l)Q~Un)Z|xKAhbn#m H0RUT5k3wT` literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/e1/02d52abefd86fb2e30bbb3751e0f0432834fd2 b/fixtures/repo.git/objects/e1/02d52abefd86fb2e30bbb3751e0f0432834fd2 new file mode 100644 index 0000000000000000000000000000000000000000..1e70a913cea83f7617f9860c0da35d4f313d500a GIT binary patch literal 295 zcmV+?0oeX{0ezCePQx$^hB@ykqMSjnNleqOJOBp}7sMfLtr19*VkdOf)OW{DT38R` zmi)@^|FfOSg-YG;c2}pBQX2fX-YYrsrNYn?APW%_ToF|IcQ tEpz5++|CE~PyI4a+1Y`=hjC{UYJh6A)x6wk4_0O-zeJ3y@drV)oWZD0jIRIy literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/e3/8428fe36c7396c3dd3cb4c2d442bf58e1ed199 b/fixtures/repo.git/objects/e3/8428fe36c7396c3dd3cb4c2d442bf58e1ed199 new file mode 100644 index 0000000000000000000000000000000000000000..04f82e9fd1418864e56a29ee406175352a72c46c GIT binary patch literal 623 zcmV-#0+9W90lidBbJH*o<(yx!m(()jc#;DL+6f03pq%Icx6ol!dlL(6$w+J3lF5JX zN|y3L=?o`wh~(Ak?c2A{zG=-3EM6?;&#G2B2k#ZZb^=ft?Z^%l87uM-i80t(bf*1< zJ6M9npM$a}vR+b?Pj9b2hJ=tSvND|pVA$dvR_|1Mic&SIt-tlwROno~ z5a3ceL#C}Swwv&u4-ACNTvT0MfV3NzC|jh#YS4HKSJrgOp%9UO!R)_dML8^A#Reny zRN(+uz_z-r&kwEb3J_>*0gh@joMHf|bvR8VyeJT>`CCyZ9}ErnjXxiy8WBq}pUEn{ z5&1rS7kA?tuJ+P8yi|_IbpL^{6Rpyi>W)&c8tEEVWuV3|VNxABl3iaw=Qh_YsJ~LW zzGeNgujFM9V~o;yGx%RXiTj8ZpALvIz_?+z+mC3YD3TPt+#nZSuypEo*v(J*n)TWt zamtuFgGCO{L-HxHy)WYIGcJ-9u!i5qh&qD>hKk3}CZ;@`C|7V#;QD7`iX_}BRFmhcvceqs;Z_gDl+_+)=Iv4=pz&H52Mo)Wv)C%iG5P*V^jNfGVxl;JbinA;>v0Nzdbs literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/e5/70c2a09de1ea9149f378e0a5541904e1e45945 b/fixtures/repo.git/objects/e5/70c2a09de1ea9149f378e0a5541904e1e45945 new file mode 100644 index 0000000..c0f7138 --- /dev/null +++ b/fixtures/repo.git/objects/e5/70c2a09de1ea9149f378e0a5541904e1e45945 @@ -0,0 +1,2 @@ +xMJPFgw. ⴸ^n1h i5kّ%8JZ#@' )59b-l"!![r9 +Uw4H)1d}FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3mNOGYuH(}(r&z; zvh}>?F%_ty#DW5#s~8I0WaB4rn)uE%e$lzXrEBrW-sYPo20);Yl$pmMs=N8riUk*> z&Xlb_dEe~W7NfOtp%B^Re4xMbb8=FPiWz1*II&V~enfY0IXJt1PMI``IyDtBA0d2@PIFREgQI>8>v16hCmWf#nKw{)>< zoged+B?Mx1L1|J>W->z-vvq2{z(lE=+hWuY|J?RF(O^RaL_tYvaY-?Ql#S3viTy&x zQ(Lt%`rLMHE;({25h7n&l9^M?uv^2pzT1BPjI+|GRo;l7<(@v#QxhUzmYG^!%;3Y< baPt4z#qXsAH{E!1HOR4dZN^prw7$L<>Pg(n literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 b/fixtures/repo.git/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 new file mode 100644 index 0000000000000000000000000000000000000000..711223894375fe1186ac5bfffdc48fb1fa1e65cc GIT binary patch literal 15 Wcmbg5mq{d@pz4&aR}N*p zb={%z(EmGS&%wXj0_8M^#vF_h8#`_K=dMGA{zYW zXc?)TffF>+H)mtfN+%Eg3b!&eG1CaG?>EA?nncohnv0#%0bRDTR--hW4uHG_J+DgR zyF<*_pa519A6A)RFee^>2o0L-5`RrA zhl2_l7jVT#C&mD(>)kK@{0;vXSKJ7Uwv)5|vL-DGs6E~!;vXa4e@qa&AnI8co#XWf Q9(~7>NV8uizro|xJ3%wBJOBUy literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/eb/18b98db87c323ca270929e93c40a1f74d5b7e9 b/fixtures/repo.git/objects/eb/18b98db87c323ca270929e93c40a1f74d5b7e9 new file mode 100644 index 0000000000000000000000000000000000000000..1b54ce183d7a8b78b6ff20e0488c672282e584a7 GIT binary patch literal 465 zcmV;?0WSV{0V^p=O;s>8FlR6{FfcPQQP4{*&dJOxDN5GMD$dVic*t~BYv13t-+BhS zHdK8D%jaxhX+3g}Sa3n= zOxfy__syPdF0;M9Kjte-2*lok(xjZsWQHte>(qLI ziBdPW#i$?tx$SqN!G;Kkf|AtYl46Gc@0B@2?)xlcyDqhxb^Bzs`4Yx85c$%Q%$#C| zYOeJ+A1*7Nbj(xFgy*T&jwI)VBM|wr%+&H?1|PnLlmE{yelI1s>BgI@L5{s^GqwT% H-Zje4o~!M@ literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/ed/d8e12442bbde86e50a9bd2fe92e1373ac76a2c b/fixtures/repo.git/objects/ed/d8e12442bbde86e50a9bd2fe92e1373ac76a2c new file mode 100644 index 0000000000000000000000000000000000000000..5c2c317de6740e933615682996bb9e3249f2ef0c GIT binary patch literal 406 zcmV;H0crkt0liW|PQx$|p;&U- zqCVd%w(Ur0oln~X#G*~(LbHShTM_U=xm}nn>y%Du+Zies;93K;(x^T$R1bdT-~Gm~ zswISL{)0a6{o22fAe5y;sg;Qiu3X+!X3wiaWAza)R`J~i3 z1r|07^#v_h_iJwplaG}R$XlYgQlPKLqV2qyOEP6M!C7;Rn2R`jaB+h+*EdKz3p<<0 z9k2dp^DY061~g4F0K`<#ANbveW<1GUp4GYHY!Ci#FD@y?fX3wJ{|#YV-jIoJc4%y5 zkrj-^tT;2PGad4B$eqwzP}-av0mtNPzNR89jH%m8Q{CJ3FzTum1qbQ<1P}yRg)8I6 A(*OVf literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/ee/9469684b181311d58d9f588f55c62f4188d9f6 b/fixtures/repo.git/objects/ee/9469684b181311d58d9f588f55c62f4188d9f6 new file mode 100644 index 0000000000000000000000000000000000000000..29d7347f6e9237a9056a5e4e46cda70136df2223 GIT binary patch literal 295 zcmV+?0oeX{0c}ySPQx%1WX@Muo{5{3rXVCHSeO|RNU{CY7!o_O-6R$2zw>M-YKDxy zd%nAOkGF=Cs(QTp%Lt*m?tnfMdQv_g6pUc$eZU8>P8l7jk`=5-s01gh>ix_lu&Y&^ zQ(D5req2J+phJP+gNh!U4|1ImO-;fpP0my<40?tEeGw$jE%e5EurH18+V$JRn(?sk0!)7X*eMcNkRactWb`{#TbqUdWgI(j8oT7cc87H_p&;Zxt-PjTz;Jm-xXn*-gL*j?C zX@3E@uAnj2X*ktZYZbSTng7>T@+QCXDNA{kxg6z77MVdl!s?wT84I`| z61~AB)Nw$^)DhQGJL*tu3Q5>RLacaKHhF^eo=14i+uXA3;iZ3jXumr0nB?$0?UqnC y7LkJS7UpQ~X?#2u`Cnb>hyLhA&-$rX{nFd-35Fau`~-LOpx-baWAz8ha#%(PR$&qV literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/f8/feb6312c4f9262dfa9544647b3bf662c8704da b/fixtures/repo.git/objects/f8/feb6312c4f9262dfa9544647b3bf662c8704da new file mode 100644 index 0000000000000000000000000000000000000000..a06c2cbbd8b464c23789a30713c69f48125dcccb GIT binary patch literal 200 zcmV;(05|`50hP`{N(3qLNgYM!PdKnZY@OTMwdwAc&r! zyphd-2XOQGe0cCvou;wDrgvv;5rM)!+nB^)FsXRlP~?b|9kMOx`)G<=x7h7?k-5PT zM3T3dg$f58mm*2(jaR+tvkc4?M$NeW;P;09WJvsg5^Cp0hk&F8gaR zy+fp6y@PYKD@~`5P5z^a{&c6$`mL|}qHp@C@A~!g1XE30zJN7G&<~i8srv;jSXs@! CS7eX? literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/f9/55adfc43b8dc46359b0cc1f1265506d80f0644 b/fixtures/repo.git/objects/f9/55adfc43b8dc46359b0cc1f1265506d80f0644 new file mode 100644 index 0000000..1fe549f --- /dev/null +++ b/fixtures/repo.git/objects/f9/55adfc43b8dc46359b0cc1f1265506d80f0644 @@ -0,0 +1 @@ +xJ1]Sܽ $ >ErsC;.uB7>H 7oԡqm @TL@VNe%j4N)̋ P+孷Ay!֥5.(ht̮vpYZe8a3Ei.sq3~y/>&1=Cz4ڈ OާW YRv!y \ No newline at end of file diff --git a/fixtures/repo.git/objects/f9/6510a9cb5c98ec787bdc4947a4d857bcd8912d b/fixtures/repo.git/objects/f9/6510a9cb5c98ec787bdc4947a4d857bcd8912d new file mode 100644 index 0000000000000000000000000000000000000000..8723b75165357669147a40811b9e583a50050383 GIT binary patch literal 51731 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 literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/fa/33312d96d1eda72976f9035ab726addd5e4629 b/fixtures/repo.git/objects/fa/33312d96d1eda72976f9035ab726addd5e4629 new file mode 100644 index 0000000000000000000000000000000000000000..3e98fecac2060b63fe4be8e7c3978dda13a7e8b7 GIT binary patch literal 1302 zcmV+x1?l>D0hL$VZW~n;<$1p1sC{XrCQx`l1R-&2xkwcfh4=U}iig@BYdjA0ElyIB z;;4}j4+xNeKd{H1*zqmDaLymG);?p8$76?9k<)n2zOKFYI@4m+FRJ(6{otLq?kfG8 zp6jXZnsYtVv5u7<>aHH(Gt(m-?fEn4e^}QK_+v#r%<~Eb*{%sk6|#ykC^D_fkMEpzLr5nwy`!2 z(HNSUnv>-aA|Pr@1iALRYFdXwieYggSvdGt#CA^`RZ$hLu? zK*PZxmCRF*rMS6-#fVcpz{C5yWG_hr*aisO6JrFl?21rTAJIt@a*xl)=zjp*=lU8A zAT7rLzQPE_ugzvz*B$c$n8g^cr5egQg7G=RjqW6j_yd6eIk)Eq&=OO?ZY~^We}BJO zaX7V7)vvpp-^ch=TE*RxU)w8twZg-P@4wxw1l~^QHbbv|uv77C?vH-(Y!`-3sjN00 zI`u|PdGfm%7J`tOEIofmq5r=ppy0;OaNw=SA_v0OBO7&*>Pf@~yfgVQXk zT{zrJIF_(<1208D=7<0maVQz0Cc|1GYUhEKoQy}Fj%01hz5CV&vVu-!`>8T(Bj-Az z11$51o#tc4AF^ZWT{e(B=t(%?Gi>Z4gE|zP4j-VLHFWgUQ3?UM*T`mf7bMMLWKmw4 zaJ`qUaSofKteRjq*>JQX(^lM&l~O!5C$ANSdz5X1!a*Fd)C*umF_zi8Ht=RdR#yvm zO1fIOVl12g5(GC(wk2SCt%wfT*>L+Pt=~TS9Xg<4d-N>T-oIiD2?JU^wbgT4C zfg=`yic3+Qh>l_F<#G`0#}rgB6Wgr&Q0y~)M}UsKKX?Rzq#tw(O+zdNvm7`S$3-^; z!q&5nwPZUZn2gVR@En-&qNKuJa+th3|3s<`^y|?#B0b`y(K;xGc5y+gdg0JJD1@G0 z2ffIDa|)DaU=T0MOI2)n)$(J%T6Tl)gR0nAI|~;?8n-&)O;szXay?}W2sAgfQh;c0 zkNauh7RsfdRVy}ci@ZW-#O)#5P%;r8%#Uh=n?&}PxnzrFm@Cy~V`OT3BM-o;8inw- zuD&V$;FiMIL5no{1?`Yx)B_bhZ@B6s6$Y+*8z2JpHs>N3ugYK86>$yov*lo1;c32R@H6nrV8$n*UPGO$|ICfmSm`qjfs|@H4+2y7h3erT+i~zAa`n zM0Rk)mMwWha`WYxD^J~$cMFQ}md#b`OO0aE7|H(+^lbU|W?!${kiA55Qw`z^n&^zG M`K4$70aVM_ya%OvQ~&?~ literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/fa/8d3bce1091cf8026bab06d40a3f085b1f426bb b/fixtures/repo.git/objects/fa/8d3bce1091cf8026bab06d40a3f085b1f426bb new file mode 100644 index 0000000000000000000000000000000000000000..41e6ebccf05b6b4c96cfee0d682dc2af2e167b3d GIT binary patch literal 337 zcmV-X0j~ad0V^p=O;s>9wPY|fFfcPQQP4}zEXhpI%P&f0*xE2ZSGVo-i|f%Qwk-)? zvh&0iJcX(Xa&>g^b=AvFVd#&))aq%J>09vOyOqK^)!6k;(}JLi5(^6SvWgiB++^b? zaGLneG=9;!!KG{Q$KK|fCI&#Dkd&FnAga6h)QSZcq|TJBK6&5l*%qUHc;1T!xD?_2xOKeXUXCWYag_4ixf`c})0X4!r4@v{%#d+7Y{ ze&`3j6At{9&wcLvx$pQ>K3Bfy^CidsvasWaeDcr^JK-=%{BJxRxWa7c{B_vI`jSv* z1Tjy?ua5h=^rG~ArB&ZZo$v7|>|$}{apA4M_Px+1_f9xcu*-0)=eh67U?wlM^oT$m zzDvGN_?5qhI9!E83Lh63Q{Nbe?XZW-MQB?I16)oi<1!rG;Ydk2@iY5L#o@IJ`=nFz zM~g}F5Y+z0AgAO3Mmy?7r4RiH7!-z}B%>Kr1SE!P04O^0cRq9R33Z)YTIQf$_rQJI z#zU{v!NYU6T2Gy&zb4Q*&ovz~h2teh?GepbeV8A~!@!1ncz>dGLL1nSAHZN(6 zW(Hw*G=vO9V~LHiemhyH>FNUJfx zSBxnB)@(*~JqRzsEN8rtYLvB&@d4p_4+=*7K_DR4_FMz4Fa`E-lqAc`%bT@CQ>!$Z z>s8I~Gd{Jg@?xdAwzN`TD?NSs(fgaVR(&C@Zl?A1)rDGft@?Ab_0uATNoB>&eVMFp zthu`V+)PWYRGA_@-%#lP?+FzBSB)EgMO9ELw(!nH3ol2D28dabEELFQwl=(-Mzw>( zqk>}vOXu*?1Y}4ASfrs$5w#fB1W^y4M9G=*n5CmwJLcZw=!2}#scpYh=GMryj> z_tfcZ%={B|EWMi!WDia(obef(xX4gPf^(<`lyeImKS-P-p!S+< z6j!2pX*$N%+i@`L`w~=`$u|2gioLJD32+$ihh8C&@uCO@8kijZljdm*VVV> zAFGx0ZO{^pUeS&yCOvTJFB?_&sY_ec>V1G1)OR_T`C|Hx&IP8*u3eefCEeK@%KZb< j`sy>a5Jspulo^4bN$H!Q_^TzfLn%eMgNE)u*VhltX>nMD literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/fc/5eb1237ea6d7541b06b268bc13d45bc65fab46 b/fixtures/repo.git/objects/fc/5eb1237ea6d7541b06b268bc13d45bc65fab46 new file mode 100644 index 0000000..6065df6 --- /dev/null +++ b/fixtures/repo.git/objects/fc/5eb1237ea6d7541b06b268bc13d45bc65fab46 @@ -0,0 +1,2 @@ +xA0ExsS8WKbw"q ;.p6vyR?"$k&^L9+u +ɩ8L'XǿP%6򄥣oU/ Uc!Hj!H{3wvRB[oibf`3 _|ΰ}|nڮ> eB \ No newline at end of file diff --git a/fixtures/repo.git/objects/fd/9ac3355dd8e97818e10a8e0a84e9803581ef96 b/fixtures/repo.git/objects/fd/9ac3355dd8e97818e10a8e0a84e9803581ef96 new file mode 100644 index 0000000000000000000000000000000000000000..840608d8240454faa9054ab73e9ec42cf8a3d592 GIT binary patch literal 285 zcmV+&0pk960c}xDPlPZK^~|qmdX_HW?#7sS(u-%0MiXc!QiYbZ71)^l@6NOkIC$)v z*Y`2gbhcrqs=E2j7~`hyfj=<*sY5<$n85K{!bfmkTSKE#6rxC|0xz8&!ZJxYvcs7$TMEv;^bhf?i&q z5~g4PY-*&2T|1Zu2c7`_aTMiQ99R3cSnU>{#OaNqZgTK**kVjg-QJ+cCf)d j1k#PF^J+T2aJPwnC-6&5lU=hv_DYOfd^3%a literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/fd/ddec6b39ab3afd0c3024ced96d1efb4ecf369e b/fixtures/repo.git/objects/fd/ddec6b39ab3afd0c3024ced96d1efb4ecf369e new file mode 100644 index 0000000000000000000000000000000000000000..b6c73a5d578a97e645d270016be57752db6f2ea2 GIT binary patch literal 630 zcmV-+0*U>20ku?3Z`3dl<(ywJmo^T{u38DHqSbN$wUiSTa9b+mCXmW3NV)XwYZ$u>!Lo}8-p_+EKYv}F#`Zd`P;=zFU{;~iXC(<+BT41ML)6erAJ^(Lg4 zl1x!@YNWU;Pa$-=%|W2GIXGXMe(njNs_+)mLimgE*@IY#CaQXTi z19Tfs{y%TDlh)y-a^Bd74<1|5D2*{?6l7gXR}%rfuMO4dRg2Ecw#%V)n`@Ga9hR3RF$J4 zSwRFY;5dVq0ZQYut7j%_O0m-%)**S?m`$3;>tfMS_5NX18QV&KdT@DgfAso5>Ufml za1*+e9#_hl$>MHRH+;pi#>jfGatD;`I$Qc0wV()c8kvDQHim)#cI@gj8%>pJJX-PA zmXP-k} Qw*2|Cnb2PT23K0hnBXQmEdT%j literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/objects/ff/ef230954df4ca106d71abb05b793269f18337c b/fixtures/repo.git/objects/ff/ef230954df4ca106d71abb05b793269f18337c new file mode 100644 index 0000000000000000000000000000000000000000..f1ee80f83e35f3ca57919ec15757a4807629faf2 GIT binary patch literal 91 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%0D4hn|=x!-)tiYI?98c#%_XMNpU zMDl_ENpXq@;x!5DN1#&)CBakLT4dioe~5J|k)U2a7(NCckLUN+E-eB+iu`l{@r8MK zECun`_qq8~r1UYl`YDt8uOG)+ufpj<6kmY8*QDf%UKb=q2v3Og>eCINNu20ja@h;N zZ`&7nVa!SPZX%|q+$}y8gVXk z#`+F4Rh}odv5c+BQP<-Rq%{mE(5cZI|6cdGOW%9S)%zaiUt_wWQKEJtSn=;xb-hU~ zTjP3N7sIQi-8?gq`L2TnV2)2Y2U`=|;k>yV+6=DBh^$8(KUM&Umrjx}U2>dsOoW3H zu190DM-IuZv(q<}L}~LqWeoA zUoCd`;#KIOA8%TX?r2K1|M(NY*C8L@;N2mN+`uxUeFRYoik%lmHnjA97zR zT&L?h+?{+>p3gsj_xIr350dXJ^R)r30p{+R%dXX(jG}Qb&ppXyvh#epvdNBL1NmD} zdHQ$?7EYVu^n?DS7|~gJxFeuE|{>^VlshF?jDDi>@d+< zJUSjyvSlR7cGHrAbr7Mc?oRh?-WkZNNJNd%KzG+xvvp3q5d{4Gar@e4FFocsRK6C~KPq1H4-4Au#~QMr{o|H= zneXqqCEwFaLDT#ug7N3)Ku@wCC$o~ny#`HaiEZw|)*usBT-4dp6u8^=6OSE_P>>Ki z(rF?2`x&|Fj0Z_#iYJ@!1573f_`?q$f|W72HS%nevrq)t=Z*pJ!i z2bSn3`Plu`@@;|w2lV}&|B?CQ`Q3hV{`l!LR15&wgP`Dq5F8Zj0uWlSrn#6nb|)l% zfBtwtQaufT$Gwvv6@V`{cogvahJ5`~mx5w1KB#NfGLHh(9BgMwOt?AvS${-Wc@!-+ zB8;~VxrrtCriUUTKQSzAxp1fc;NTL_fKg%5Kg2xz(Ikb%r?rc-#Sb$OE~q`#j> z@uTWYo#v2*Ncdl9il?8sG{e)wKWPF(+#YgZW=A7;Y)~d+FBmS3V}CN+ivp=k3|oOi|P0`jsK`>_?PXyRTVH3-+ zbTAfu8Zm)gPb0CutuKepkd1VXiQeRP)Sru9&nYi@Y*n9s{neVS`DuZ_t~XVCufMgx z7qTB0_!8yX|I9T}PGllsu4IY`jl%#PEeGP3+ZjDTk;&swTEhoS=JxnhY4Hw%Xv~z8 zRtd3@B4FXK6}UCxH+tX<(eZ?&P>kYD$F~WKZ-$@yJM6~)aP$5dH}AtP?DhT`Y`~iI zEw<>9-&?s-+DD25m6Vs;k=E6_io4H8J<^-&&@$N!pV^XLZW61sXb=VXA^uUDFI-i( zUaHc{@WW)C<|iQRnnPgjo;pafMHPhRWweW+a@y*gxSVYD$MMF5j&8gYvQWZIHJT0$ zA~|*elQ~+$K*vtgE!8oVqd+$-t`~h(SpN|eD9$X}aiA9gJI{5l>9^hIlc7iC+Rw6h zcV@bM<*6Lm`A4#^9aB{>?pey~#%)3z`zZRcVJ|?r8VtG{Z!I5X;KXI|f#)q2V5TmF zMU+O=iN_Tu18*XX4OW9fVxdZT=1_wlublaJIq7c1Ku@BBlRArx-_E#guvtgb8DV*7 z@0b|0Gp6?XXaxBq{^X~Q04h#G3}O=^7s>{J$Dusy2Q)h87&P2>cV@F-RXt9yrxTUm zgGb*BzFF}K{Hy_wF4GZDYevH-oR>-p!|3|3gT>HqQ0w`l(v000G%8?)dt%rP%M(A~K+l?Fq5sVM1>Q@Trr;CU4m&uv;=)UNk# zOjhasAi6Zc!;`Y(d>ocRXe0=-wD`Ov_x0sdrz$hJpxDyRhh)9-%&oa6Rxg&%(t;2G? zAT3`V%zAmS16GW%Ge&;Gr1DYW;S?6e2|j^i)ojc=e~c~b^7^H}=efFbgD<>Ds1=;B zOvW9&IX8XIx~w`~Z)*K7(Kq{lJt$At>$E_J)|_ObLo-YinPZ{{Zi{sdeRfJ(;c&HC zVW@Osl+AJPP4H#vE_Yom0;~a-qGM4XdiW?&rc>E5v3!&7HXZx4J*LeZo%*?85B9I3 zOm8y%eTluA^Kw(trGNB#{i#AN;!sF?x-0E;kppnOD66)18x_SWfB2zR^_wo{6%5za zTzrk(zMI&aEsC2uAkQ-MkQ`^ELM-jxctpefyt5zh3cuNz)0Vns#wQ|zr*1YJEEEG+ z?m9hh$8sJ|;Bl5xUUC4IIxhm5Yp%EOc6p4^kpS=dpSsnbVTsQJ-Z`&vfnc?r*cLCH zZcv>Qe=)*4kWBMFcg4qiUDv}s#NADY;dL8I51b7+!!GUM>S@|TgBodcuQ>sJkL~q^ z{F{akPwVl%Ze}Z(D30wyOjEQ zxKIXTr1D`A4Z6eCLLd3#!@%7Wp}Ox){n7js_BNhr4+M%64ZFop*{Q@1=;Lg?3kLCO z&D%m($p=T!QkQ{=c7;QiTDi^EK}|R>gqEOwn06u|cux)iG)iLn7JIhk_f45%SRbFh7*<; zIf$AW<7BnuBycl7a2C-p@m#!uRG$zY*KCqv`+3Xreef-mOBD4x_5TO1`B-!==j@#4-20C1Q-t*4CvF5JZ|1|IhJ8EKPt`=2O|Wt|sYUyLUDw3Naq&dQhORMW zBC*rz1T+`pHc7VZMs+*SZnq>{{BF2%6x=-UDt?qV$+a;nPCov!OT6d zE!P4%KEMlMtA|kv!q!;Y?z{Hy`P(1iJ1G3+^q0!{10+-egF+Xl$k?8snTabWWYW|lKR>?o|hBU6qa2KJ4=`L3n(vcc8aoE;mk`Cx|y*acP>Vk+!3pfEpav^Ir zGLRXA8gFJ(i$&O0f38eO8ng4>6y=lwvm1Hw$+b3;tqCx_uG$(GQWB(`v8I z6nLj0K>x({eJRR8pOx?PE&eRP^a0F&eZ|6;4BYfQYA4?3)`dU zLeGZ>WqHRMe*ba7JBe(F78kn1V?F8c{CovRdDw}k*%&F<}#O>s;cW{Q3 za@;WIf5m7T@5f@c9s$ybK1?w%m544HOP_p_KkKF69$^2OY_#6_Qhau&kA*YxCVtqU zyM0M5ZGXKkV}&0(*1|#pM_u)KW3V=y6C%tzW3_i8PENy<@rRV43LBi2eVbU^EINEA zx3t6Uu3m)rfMJu}l7#^I6bxGKs=HWVvE^%l->5vud3|V?@9@(BI)AF(rB;`X{t$2a zoHu-*nq9(|{;1gTKbbf0%=~&=S7H2WP{!aP8^6BgUgyV`^6J>@D2_MIuB-PkWB~4h zQwk$mPPxeMXk?|ah`8-ayjS`imAoq%WrQpb}{jhVZ_J+Pl$A8lum286s2mkG_IbCnBa%OuaZo@fvIE0qNgl>(Ej#}|907Zv`qLlbN!f+?k(TDk0d=<|9uNQ3wr$IXSC@# zouqzaeEmq7taF`7f8r9}G{R60C?P59_$7=F%N%(cvP|^v5d1O!WBWi8lE_$)jO5Nn09%Z!$7aMJ8pL3A_a7Snjxdr4>i)w~$%2`nJF&QVvx$PI3s z5Ra89>;kURwuDpuYGN*YTIpJHr1!j9xAg*rU|EXXE~s12S9iGZ$8Vk+=BE#H{>VBv zNqAnsssihOJrf!Je8Wsu+XbPAtlvfaUr#2N+?pyFe}hhT7FhJG^Ph5-{7hBjtvian z)Uj52>~a7e0;#vAcu2%vQ^h~MzICCcJGa*FlJGo8E)}}FujeQ#iE$eBwu+4?0-l4= zjL6(%#Nj>Xb<)p=uKrYG`btCix>YOJg?^(mt@yGSoR#m_JKUGjDa{-#vVS%k!m-wj z?d(Q~6l&wC7RB&_z&joox_C#Odj_0{$t)Og9c7`r6f{YDeZt^1PSqFg5F!?vvi zl}DD%(!uWJUe&tZ)kzII?`=UQn*d{-2eeQ@Og!2+uRPFn)1f-f?d8FIyq@a{os9OB3 zdoF-wxXiIWu-Yvs5$`)`SMtLUb9d`~4}u9Rn8b4)U^y$B(9u33_8KYRwgv#b&W^XS zEZZMr+}|8%(uSi+E`(i@UNlQA*Fz<{?H#MErmcNtSe(nYX43>~+}(l%cMZY4ao1qM zHMqOGLvVL@m*DQ21PKs4Xb29|?7ff8y=Ttcd8U7MSASnsy=$#^NjC9b3*@QK=oS^^a-=!g zNr7!!TXbap6kexyN8O3nk5L3a=i9pw5p zmEBk>0^J?5u%mt&{AirDr+h+DQFK!cc1WEYUwP!0&vozR>w34ni~RKj+*vH6OoIh( zl+`agrlX}YRomF;?wl!|zZk$4q|P!Hi1Ah$bFkM0->-b6nAJQz)a92rUBtCImBOHC z2`fp7ozX_Cg0x(COHk(;o}`l{l!0*jrXj3-s%JscET6_57f%RljZc)3r0b}>GQS?$ z?}V)_p&+u@<8k&EdNH&Vf3^SkblNFkUIV05z=}J?2$-iE04`WJ>Lc!oT>U=K)X!$W zcxULjqUgk9#~OcU?;DQ1s(GNI9T}@D#Y1FTVhqmUGlhdGpr{MZw<)1&>k}C5GmH`c zoqjOX9yyguB3R-&sob=VJL1jpW&5cTM0c~d)RE}PwY~Np0q;RpY&ygc%$wH}(;u@w z9JX%GLs-AUR%e*&u{J8rK@e2 zCU~V57Y?*t&*cY&<01n)-j9{W*9u?PnZym#tLug!uvz0HiJqcvPqA>58`Dd0{@z1% zMrN8}RCaot8Empb=VVarnSSAWN{U;(YHn+nhShN$N-m}rS5XjI1M%EIfp_y<&s2iA zLv&qsx}P1!+@2D=d!|LOsc^9NO|aRqT1STzHaX6-EFSV517()CV!I}}<&gY@$Z6SQ zg;iZI%diodq_Svryf3;}8yF?5eu$9QkKVdd{n@v65J~bX)oY>s>d5|vf7Ky6r^eD;^e5p6s&e?&T#ELyXRAzNGflg4AC1_T^{_ntFRyJkoGcgio5ZaTdkDH?&?S7+XXgoIrtcu+r|Pym+x zZZAWf!Yl$#hRBp80Jx^mLHSt!BQT7F{q@vY`{|Y?+0tdoU2hxB->Kkqk`kLir^g5Wb*ty*3#PoT=F1=AvVCqw8o=o4EznJh zIv|Y12F!UCXUB`g2LGiWd#uM#6WPAiGbZxK7{k&?xbm>Z{6@D?<#_og9S1hlOYbH- zP>Edx567MpdK^$GNCyrB<_a?>j6-^UC)eK=cX!JX$dFcASJ2*+?DxYeDQYLAsZ5+r zd0}rOSGadqqz)f@T9fKcE@9Tfzt&Gl)7G2lwbD_)?spZu58NFu_Z3tB_}j|Z6B+=w z=+}Dy^t&Q;%gh*WOZX6QIaG-`;V=XX3!A>AtJ`)~%#y|6m!XyMlb*)^4qF!UfIL775!(dY3hk>QycsDLy|K5S-^$zTj&lh zw@hzkzLy5O>-Y4w;c9J3fHBJO%Wg{U|F{E~#9~w4wYJ35seWwqn zF#a|W&7N%bw-E`8ixE+_FqMx`QL;1wJ1AM$DxVL;HD$=*f54YZL^D#yE9YRth-7!d z0%6Fo{i?rUzvNiBTIA$(ZlxA9#>jq1D+2-&ieJ;#i$M@nsk7Z?L0Wsn2HM6&u_t8^ z{{lJDv^VuT)4d(x!mNm+(#WsjFMPT#*y3s4Zq}w$ijCc&Po-|zQU*#B0-?y6Q%2I8(ER!0cIRT?^S+!*JLaHM$9Zn~oU0sq_h#c^%{u+U zl*FO&@+zAi?DhQ?44CrmEFCJ&scI>^i#hgO$g}poii;Fp)md>}Wm?$KERIGQkR?VH zb9#EH^_{`qPjTc(7FJMEqcL3+efI}~^5>Y6fUH9#pRv!rXHY9|yc0O850RwY?6QW1 z4x_i=6Idy7;#d(+d6xKo7ZukQd`Vzal3SSqu;zrCQw4n@Q|QTF9fsR}mz>8*0JAY; zUxFNf%RPm!$mL=#Ekcr39#bXmId;F##`Ulpgm_xZcmrH*3E531xI#~Ls zVn2-@v#hL(Tq5!@OxAj(su_5>SCP;<%-G5b*wDgc!Fy`;EAq%4QY0*IBwfd_R_WaH>^}xBmY}4DzECJzmFej z1|EWF`{tP1j_>J~rkt)TbM5g23!mH>>u2mKuCA}2fZqMD;K&|`81k@&jzf&!e`6IY z^`8B9c4hGX9!EFwm#}>QH&TR(=DfU`?Pr4SyZSx4)y)Rg*-)2{<{vv>f#dN@K6AU% zrIn|VV(Uf%TTg!PG=!wS;q2LED-&hz7`*?UjDM!c-4ioh*^?`)|GrRe#jI6#+f4ey zg{mDa@%OTztCNPfgYp#%G?6Nv#4#&@?lbw28Fn?$_%IDeXwNOp>Q3#eIy}=ESmlj= zChl{YCQd=Kv*GopmK+W;C6s~fPm~)C*A~yvsevg2|9uB}&HFpYbq>aw(|WsDrn5Z{ zpJTt3mQw(M3VK!-;Y*M7HQOLEwBS?k2)$0p0 zgm3(y<-?bzxXe}AWSgTsYqSYL$s>hGk#;}s6wpi`R=ghH)3X=p!8)fd- z=?$u+ufHt^RTd?UJQcrXxBR_qMRKvE`HQ9rK+2H;eU~LzyJMbLKhJ#v6NFsx>hC^* z)HK8FIGyPyPsQ6^&dWv1{AbI>W;pK@#L@MB6L_WgRLzvMY|VtU95`jSi(#a%#m=^& z&WX=dT~z8QI*Uce8r&{&my z76MP=NX>-!CCa?S=a}w?S^3Q&sswer4S}CJB{O5MZ-4zhq0qu?f3W<#VnR!)U!`|e zR2BV6P=86gPcLIl*##MdPy{)V<|1il+VC3f9U70&xjcuEe9TDiv^<_cW2v}`k6koV zuXZ}G*J2qkSe-mi)Qvd~yM6+JTPGtv6yJVz1z#NNcro$?t+#+9q^t4LYIg`8RV zCKIiI?7l-^g~ZV2Z+F$t42}7C0fB2IhW5}$;%6{Kp>FgXnYz8KBEnP6STGB7mo%0=67qdC5X$j%R z^zv$%>}dJPU&&e*#boRnV@AwN*jX$H?_DnCowrsu#uL>r+cKkQFf+GC$l&Af<;%p> z;;6@>cVODQ71w%<1}ia-+nhAOEaiUsuvu^}U5-j^7J5RLew7F2fDh?fYKN*0soi1p zv^?1GzD~Ry1Y~mSm4f$B!mivi;Bqq}J{%Qq+#lx&)P*LzfoAoWIAKq@u3rgD2RY8Q zHC9iBaJj^wNU7M=(0 z)pbfrdQiyJ0gLm|yh(V2a+<|Q!u{Qq5%sXD>+bOl^tpEBc9Vo#W^|Gq#I-;QIeo+y zAp2rb5PSp@+49@$LnDRbkkb~_C7_il=ZHruc+R3+OL2k`W3n;2Zn|8tEz%@MFpHxX z8P}1Q!Kw+6kfV+p?Wn9Wn=!5rp@;8Bu!f$I$yE*b{I(2!kc)Tq?djBs@mkePRxFp!Urhoo}Ik#ERKcGCrL%uy3ldv00*!!dXz#3;ArQptM&?ztU=`$js%SmhFBXp92 zx2q@6F8yR#8jrTU(WV{attTICph`-7ah4s4v4#*E2s=A#3$U%-%4mjeWuPE8n8wOx#Onyh=D z&g-}=hA)y-goFJ9*B_hnlUepNM%^UXOFrsLzL)4_R?fy#ARTyoLYfhler*0*`IW(4 za76oNx+g*QAtD>^+O!b1$%~`vhmG%;ZIxu=+xgRNWcK;?I%~(v2Sgl9Hzr*U7u1ag(i z_4TA;#d_K)f=_Nv{mK*C2{BfHMUXoSf>*-~LFF3E`zWo6KN<0K<*Bg~pg2jc?e3n@ zHJtc1ZK|eAeEGO*Q}2A7!V78;$?AL_my2m0+)fc+%Xf|+!TM>rW$Fxggjw`;VP%K~ zN98YY=oB3u1`OmcbYh^A)ikS*q70!*F^ra0HO(qCZf_|AfEh^>Y{5I316xKqMU4}g zs%twBofx@q<4|ZY3yDg{Vi3Vl0QnYboIN;y?w6BlvbNfbta0EkVOZhl+F3X)qk^0SEmJr^ zkQqts4s<5HTP73-VEnlc*awU|!8&i^c#<*aq7;x<6)U-9{8_hj8J-A)V!*olJu~^M9dRQhFAV?=%4k&#lkg-=xn# zV%vKyYtUzPnEy1{NYhD+;&_{}$7BnU-3b}#DggcAL~GsI&8b&QvlOrENk4%Xj>h7i zF!m2h_1#nvqGVR9HC4`8d_l{$n%}l&(8_ zaGOAcBL+{HP#z$yG<~ibRbU2fXqU8;?GMN)-iY)i1l9tDi)fQ4<&372v z;UwyxCuTTp0p68K0CjIbTDvs;0Vvq?MO@zco8)I=**P~kn5K(JC|PRTFfNPfdxst# zE@W=0l1V~=$}41)>A|_c#l^ccvSgvRoUFXiBS5xfVcFo!38T33a8m3yk*wtkF2;?p zMzfhnV&bMKLWFVrf0;v2` zl-;l_k!YBu9|L-i45gROkO2=i2*)t-Q2`txd9*)f(IhgTvcT9_Nh+i+%KrZl_YY=_|J3D}_&wy@V9#7veYHyQ ziN+9KDJLZ@Q9G)Q^onYB5zoKRb#wSyk^=mp_?mZs8IZ`IZ=f#ATV#L83E6ZuVIm<@l^*5_VlNhqoQYvr z__b2Ru>l8ih+lsIKjA|*sJA}GJ>Y2QBfmu5-v&obY$ZJ8gPn?G6x7t6?K z|8IV2>jQ7#x6cCM!}q8qSHwu)v6Yo*HDCbPLPT$EV<9Mbj-3bF_f3tyX26-yZCU~_ z$h=zkH;U}m>OL&LMq6SPBd6KSCv=@AVm);C9D-(2CN6#}ZXk}lo3_^@X5E01gIUl_ zvoYhfx7YHV8!^Y`s2uq@;&4iDd1LiA&BwLWef6VkL@Ebgl&+A!Y4VpYU&iU5k+AiV zvA3oqr(eh03->)SRF&k7Onhhul<*st;&I?lREl*Q)jwoaGZkx~n0_e(I&5*=V zgS6@h4Op&0t-P8^iUB-He-5~?v`RiUc<>uYi2BpEGBN$L{rNzWj|`6uGdHPT51e*LDl?BtUeHf}o7_+!tYmKPU}cp@1>}Sxu387` zKrHc;K$^Gc>-k-EY6=MeF(LHo2~;oy#J^r9_2lVZ1ZjuM6rFlVYr`MPp4hgVp8e!_c{;$u52!jrdfa~%B=z#Prx=@l z3JE9}o#6ZhkuC^14t(1(4_q02#!p_DW0&~`K~^+ES%ve@lnRDwIpV)$RjjTsxwzTW zSb%`GX}rm8m?+_Y)p~pI^T)a@cz*MUx}x`c3f^UWMW-)X|5HAWj@%>9qCm(Klbg!? zxzX|3=09mY=K&Sq2+GgsuN5ki=XZJ3^$Sk|Y>qM{O-+u|oM<_#G4wPd2LKKxdC>anm?x&h^te_gA^z4P@O~XSxWV73g^|Vdpr7hz_RD68oEse5wjYUmc zMvErCB<`^u$qS4g3-J1hYqM(emuR*W(r~K1mn5gC;}Mn2BdepNP*0SB0=;Ci&I9cu zlx4t?7g)*|G8pHpg{c{uxk_=Gs+ornBS!$_SZko<)R-r*+~4`i&^81D9i&l_{JHYC z1_)%N#YE!0yn;29oHaoeH~`LlDJbhuCdhpIZnEtIh6dC>hr4_QP!z*}kD&t8{}RAJ zl7f-^UlfXZH^niHr{HHb|0w}#q_B#xNs^cZvd1{QWG zk7HlX?@r3d?qg-~$RPuoxeiENBH#*8{3!^I?9JTej%4rxtY%OT( z6zFI7=W>q<}_m>NNfrc0pw}%Cwd`ENHhRU~u%y(ROG9@WTxlEB? z=}VZBodah9CO~iz=3pDHj`r_%Cd~C_@-W8`h5t?La*y6d;}+w6K!GWyXM#vJIFln8 zL7Ts)V_V2&ceXgi&gbEQ8dfOx&*DSv{QIjct#qwEyZ6t-`iSaU;moTI=zkR-KB`r( ze= zC2P6mn*wRe+f;!x{pxRZVeI*qZFeG9REmpf?zCmtrR7Z;%q~2o__;RTmm`%?{E19O zLrtSl0GD;HXvkRzNU-fWxitCqvyai>(Bx3mSk&L`#7ph0%$@2FJ7G++>jwBhhWc&~ z7|sj%%W$)wO~C!YOcBN+e)u51ItV6Q95R+fs2L^heS%U4ZFs{LsEX)zIJ| z_r$}*tHLa3_mtLr1#m4Q%WZ{o%aoy?lwlg3m{yUZo1BogAD@<%W&|;g&6Z9{F-*-U z(Y%C3i>jr&%7B3Ug@n2Mcfqe7|8Q`;v1`+{$&l5P4JOsb2a_{$l+zQ-Q?-@i^i`EB z4GKoS)POsj_% zFU5kzUo-sVvab}lP;daVD>j~Zt*^lI!aLj?MpKokE8vGKqFADbIw#ttqM?80op4Pi z9sdcukiv}`up<8+K95Y~(#13j!6sA_5rj`h>%zVJnkLzz?4vR?*cVxW0Ima=jY^1r z!VY-~JFC(kv7ZZM+O%WSqtc9Xkklf)!tGSjx2>;^T=zc@%*OXdjWxI>2}M-@sxd9; zb*+5QHT7%0nxtr8`z_m^M6gT^2QXQq!ubvrX!Sy3T>duw$Py_55JzXy4o?mbicb<& z_P>gSqK@IM!@9f0V!MphZnfTH+W>!A-A ztX1p}#v!YtVb%DoPA*(TFt9j2Ha#(~xU8{Uxu{UPoBj~HDh8;e{5vV75shF7-10@D zV`?x0+;#C=%pxHi__d!W**^bH6#!}k<{iO?n*S?^>&`~@XK7S()@O{WcpSXSH>2LZ zFCc!MH_`z9(u=f)zY0T#x1eMP|HOU)5l)Re_SjaZBD|gn>1OJdDfYDf@Si~p8S1}d z7+&i@%`v#bbg)yO<6hXnm151?glaW>0nz@GO>&Z=753PASdm16!s zp7&Rd`9`I|L-etqTiSKyMr+Kg+Q(WcKJs5?|lD#I_dx<8MFpAD+hgXi6Dj!bexb56aqkZ%0>!jxH|o zj5wJUHrGE{ePsEp(`xWLT0xMm$4gQTNr}7687DAH8!Z3pL=$$E@R6RR&Q8N$^Sxqv z66Ch0Gu5raGTE8K+cjdidiGeZCa=rwy-*sOaal%Y)3e)4dzYizY>mumOcl0R*^bE$ zE?)`&o{CG){~5a*n`Hr3?p=?La;eqz6dBiguX3ME7(j40W`65SNqR^Q2l;Z z_rXokbE=R2?~puWh+u5=LYtq!dBpICzJZkcK`a^`b}M7{PtmQN)-#9#9l7_-D3 z!yM%s5PojT?CUymd5y{+ICVdGTg=~nbZwERU;Qr zi#U3&6Sljlxq7@=A~1g&?Xk2n{I)A3h|~J|D>C(a>Se(s`yE889OTcpOdR^^n@ymR zI%BBxxFX3A>Xew=UojZcD5RoxT&g$2ucgk~5z9+`_Q=3LrIbu$LND~2RpfO2(mJl(HU!G#IN0g2EI|-`b zmshj`uV!Lgn+)=f>7`hmesH?EIo&bps?BIalK><(3^IOuh1v>Gs8{R_IBp5>H9;y zxvN4~4_!fu@p?V(+oYm6Z+P-;5tV^jau-ns3cW0@qmsq198V8thvMWg4ghXHEgd9h zF)lSZI;!ys0B;23+JW+~d&x}nJ!C^tHx!c2&dNSu6Puqq2vM&AO7L)=4KIrE|MRTI zFKFxtyx?urZfS@q>;0XnM)fDbXp{3d3^204S^Ud&h8seq1@DlP0QWto+Ok}8Bz z_{J!B9J`j!F!s&qoM{==~;C>-AKWPU=oKE=cSHx$v z2tj_$5!N$-Fv08Ieh;#veO!zkn3YoNpIveW12ycjy%7}z0x~#ouG#oDye6iHpO)8; zuCSp;2+PLqgXxq6EwN9-RBr@(=07C|+wQg*9$CH(F_BP1`qe3BPT^*s?Vg~jisoW1 z1BjR)`#2Y-TYELVZ-D5~G(ue4$0x{SpTZd-b_#7?D6!l-?KXBi)X|u;UiSE#@Nio=YQRGkg_%A;Fy9chqF>uEQO&1%)d3DYbu2|2J2ah zhr`BIAz;0tD{a~Z0z6=;Ch7@ZivP2=fhuo)mdHBa&qau)Riz${02A zM(E@GWVXC35OJbWB9FElV{OVrA30y?b)sKaG_M!O5k*bT@Vdsli}z0y*h+b~RPwCr z`h^!Pxx|>d&qL)Bo1RTgPvX7A>MJ#X-=xL@N5ABEIbTEU$&^0%12^cCKlxu}=Gd1q z^R>p!TvOnj`SnQk7}P6_Q;S}%6XePI&_kuejWVmAC5zol0eJ>w_*B2C!LC2N99?IYk1E~ zBpcZDE(bCw(cm*7!Jop^*Vj1o$$emV&_;J9grf)#;&*2$$Hl>uQFBavK%p`+17$E&X?vWa>w`e&rSRz>rTr}el;bM@P zanyV~bw5{}j1KlRR7%^13(9sD5n;g3Xt8Ru$@&Gk8pkPr|MTlpXL*mW@7i7N5Q7)9 ztgs&=@}gBz^DlbQT*9f2&5A!dS?jH%=#!r||{99L~b4V(I{+1CsBAq<{mx1J1?fYs0$? zwIOlsAQeb@6mpJlRu?3sh)j)*1%{LzDzO&$-vx?31ioH`9G1FdwG0DNeW+^lGd4{R zkdQF45204(jh)odo zQIckzp^k$~1hYFTf4gv0R*n>jba2{yoyJ>c@U#QKQIcQ+s1d3c>P5Lq3# zPyt|pU+G&kLk^hU_x{TM%W0~2e`d?8bvv~jj literal 0 HcmV?d00001 diff --git a/fixtures/repo.git/packed-refs b/fixtures/repo.git/packed-refs new file mode 100644 index 0000000..09fd3dd --- /dev/null +++ b/fixtures/repo.git/packed-refs @@ -0,0 +1,2 @@ +# pack-refs with: peeled fully-peeled +a35931b770328564ddde0ca70ccdab832b22e97a refs/heads/master diff --git a/package.json b/package.json index 56ff9ae..ac3c823 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ "test-cover": "nyc --reporter=html --reporter=text mocha tests", "start": "node ./bin/www", "dev": "nodemon ./bin/www", + "stage": "NODE_ENV=staging node ./bin/www", "debug": "ndb", "lint": "eslint --fix tests", "hermione": "hermione hermione" diff --git a/utils/git.js b/utils/git.js index fdddec6..bbe3a0f 100644 --- a/utils/git.js +++ b/utils/git.js @@ -1,5 +1,4 @@ -const { resolve } = require('path'); -const REPO = resolve('.'); +const { REPO } = require('../config/consts'); let { execFile } = require('child_process'); From afe94754572993995638ee2e13876b94b1bee656 Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Mon, 22 Oct 2018 05:13:26 +0300 Subject: [PATCH 13/18] =?UTF-8?q?=D0=98=D0=BD=D1=82=D0=B5=D0=B3=D1=80?= =?UTF-8?q?=D0=B0=D1=86=D0=B8=D0=BE=D0=BD=D0=BD=D1=8B=D0=B5=20=D1=82=D0=B5?= =?UTF-8?q?=D1=81=D1=82=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .hermione.conf.js | 23 +++++++ README.md | 6 +- hermione/breadcrumbs.hermione.js | 65 ++++++++++++++++++++ hermione/commit.hermione.js | 62 +++++++++++++++++++ hermione/commits.hermione.js | 23 +++++++ hermione/file.hermione.js | 22 +++++++ hermione/folder.hermione.js | 33 ++++++++++ hermione/fs.hermione.js | 33 ++++++++++ hermione/navigation-breadcrumbs.hermione.js | 55 +++++++++++++++++ hermione/navigation-commits.hermione.js | 59 ++++++++++++++++++ hermione/screens/1dae8ca/chrome/plain.png | Bin 0 -> 7777 bytes hermione/screens/1dae8ca/firefox/plain.png | Bin 0 -> 6006 bytes hermione/screens/51ea057/chrome/plain.png | Bin 0 -> 3109 bytes hermione/screens/51ea057/firefox/plain.png | Bin 0 -> 2743 bytes hermione/screens/5a13d6e/chrome/plain.png | Bin 0 -> 21822 bytes hermione/screens/5a13d6e/firefox/plain.png | Bin 0 -> 18952 bytes hermione/screens/7887a1f/chrome/plain.png | Bin 0 -> 4688 bytes hermione/screens/7887a1f/firefox/plain.png | Bin 0 -> 3475 bytes hermione/screens/8ade5dc/chrome/plain.png | Bin 0 -> 7102 bytes hermione/screens/8ade5dc/firefox/plain.png | Bin 0 -> 5109 bytes hermione/screens/f16d792/chrome/plain.png | Bin 0 -> 1840 bytes hermione/screens/f16d792/firefox/plain.png | Bin 0 -> 1764 bytes hermione/screens/f5b1733/chrome/plain.png | Bin 0 -> 48759 bytes hermione/screens/f5b1733/firefox/plain.png | Bin 0 -> 35244 bytes hermione/screens/f6e1612/chrome/plain.png | Bin 0 -> 15355 bytes hermione/screens/f6e1612/firefox/plain.png | Bin 0 -> 10089 bytes package.json | 3 +- 27 files changed, 380 insertions(+), 4 deletions(-) create mode 100644 .hermione.conf.js create mode 100644 hermione/breadcrumbs.hermione.js create mode 100644 hermione/commit.hermione.js create mode 100644 hermione/commits.hermione.js create mode 100644 hermione/file.hermione.js create mode 100644 hermione/folder.hermione.js create mode 100644 hermione/fs.hermione.js create mode 100644 hermione/navigation-breadcrumbs.hermione.js create mode 100644 hermione/navigation-commits.hermione.js create mode 100644 hermione/screens/1dae8ca/chrome/plain.png create mode 100644 hermione/screens/1dae8ca/firefox/plain.png create mode 100644 hermione/screens/51ea057/chrome/plain.png create mode 100644 hermione/screens/51ea057/firefox/plain.png create mode 100644 hermione/screens/5a13d6e/chrome/plain.png create mode 100644 hermione/screens/5a13d6e/firefox/plain.png create mode 100644 hermione/screens/7887a1f/chrome/plain.png create mode 100644 hermione/screens/7887a1f/firefox/plain.png create mode 100644 hermione/screens/8ade5dc/chrome/plain.png create mode 100644 hermione/screens/8ade5dc/firefox/plain.png create mode 100644 hermione/screens/f16d792/chrome/plain.png create mode 100644 hermione/screens/f16d792/firefox/plain.png create mode 100644 hermione/screens/f5b1733/chrome/plain.png create mode 100644 hermione/screens/f5b1733/firefox/plain.png create mode 100644 hermione/screens/f6e1612/chrome/plain.png create mode 100644 hermione/screens/f6e1612/firefox/plain.png diff --git a/.hermione.conf.js b/.hermione.conf.js new file mode 100644 index 0000000..57e4b18 --- /dev/null +++ b/.hermione.conf.js @@ -0,0 +1,23 @@ +module.exports = { + baseUrl: 'http://127.0.0.1:3000', + gridUrl: 'http://127.0.0.1:4444/wd/hub', + + browsers: { + firefox: { + desiredCapabilities: { + browserName: 'firefox' + } + }, + chrome: { + desiredCapabilities: { + browserName: 'chrome' + } + } + }, + + plugins: { + 'html-reporter/hermione': { + path: 'hermione-html-report' + } + } +}; \ No newline at end of file diff --git a/README.md b/README.md index b9111eb..4a2bbb3 100644 --- a/README.md +++ b/README.md @@ -28,14 +28,14 @@ npm start #### User Story -- как пользователь, я хочу открыть главную страницу, чтобы увидеть список коммитов репозитрория -- как пользователь, я хочу видеть информацию о коммите, чтобы можно было понять кто автор, время, описание, хэш +- как пользователь, я хочу открыть главную страницу, чтобы увидеть список из 20 коммитов репозитрория +- как пользователь, я хочу видеть информацию о коммите, чтобы можно было понять кто автор, дату, описание, хэш - как пользователь, я хочу открыть страницу определенного коммита, чтобы увидеть корневую файловую структуру коммита - как пользователь, я хочу открыть определенную папку, чтобы увидеть вложенную файловую структуру - как пользователь, я хочу открыть определенный файл, чтобы просмотреть содержимое файла - как пользователь, я хочу переходить от комитов к файловой структуре, переходить по папкам файловой структуры, смотреть содержимое файлов, чтобы была удобная навигация - как пользователь, я хочу видеть путь от главной страницы до той, на которой я сейчас нахожусь (хлебные крошки), для удобной навигации -- как пользователь, я переходить элементам хлебных крошек, что бы перейти к определенному уровню иерархии +- как пользователь, я хочу переходить элементам хлебных крошек, что бы перейти к определенному уровню иерархии ## Модульные тесты diff --git a/hermione/breadcrumbs.hermione.js b/hermione/breadcrumbs.hermione.js new file mode 100644 index 0000000..e68bfe9 --- /dev/null +++ b/hermione/breadcrumbs.hermione.js @@ -0,0 +1,65 @@ +const assert = require('chai').assert; + +describe('Открываю главную страницу', function() { + it('хлебные крошки на главной выводятся', function() { + return this.browser + .url('/') + .isExisting('.breadcrumbs') + .then(exist => { + assert.ok(exist, 'хлебные крошки не выводятся'); + }); + }); + + it('вид хлебных крошек на главной не изменился', function() { + return this.browser.url('/').assertView('plain', '.breadcrumbs'); + }); +}); + +describe('Открываю корневую директорию коммита', function() { + it('хлебные крошки в корневой директорию коммита выводятся', function() { + return this.browser + .url('/files/a35931b770328564ddde0ca70ccdab832b22e97a/') + .isExisting('.breadcrumbs') + .then(exist => { + assert.ok(exist, 'хлебные крошки не выводятся'); + }); + }); + + it('вид хлебных крошек в корневой директорию коммита не изменился', function() { + return this.browser.url('/files/a35931b770328564ddde0ca70ccdab832b22e97a/').assertView('plain', '.breadcrumbs'); + }); +}); + +describe('Открываю папку коммита', function() { + it('хлебные крошки в папке коммита выводятся', function() { + return this.browser + .url('/files/a35931b770328564ddde0ca70ccdab832b22e97a/controllers') + .isExisting('.breadcrumbs') + .then(exist => { + assert.ok(exist, 'хлебные крошки не выводятся'); + }); + }); + + it('вид хлебных крошек папке коммита не изменился', function() { + return this.browser + .url('/files/a35931b770328564ddde0ca70ccdab832b22e97a/controllers') + .assertView('plain', '.breadcrumbs'); + }); +}); + +describe('Открываю содержимое файла', function() { + it('хлебные крошки в содержимом файла выводятся', function() { + return this.browser + .url('/content/a35931b770328564ddde0ca70ccdab832b22e97a/controllers/contentController.js') + .isExisting('.breadcrumbs') + .then(exist => { + assert.ok(exist, 'хлебные крошки не выводятся'); + }); + }); + + it('вид хлебных крошек в содержимом файла не изменился', function() { + return this.browser + .url('/content/a35931b770328564ddde0ca70ccdab832b22e97a/controllers/contentController.js') + .assertView('plain', '.breadcrumbs'); + }); +}); diff --git a/hermione/commit.hermione.js b/hermione/commit.hermione.js new file mode 100644 index 0000000..991a8c9 --- /dev/null +++ b/hermione/commit.hermione.js @@ -0,0 +1,62 @@ +const assert = require('chai').assert; +const url = '/'; + +describe('Открываю главную страницу со списком комитов', function() { + it('в списке коммитов выводится коммит', function() { + return this.browser + .url(url) + .element('.content') + .isExisting('.commit') + .then(exist => { + assert.ok(exist, 'коммит не вывелся'); + }); + }); + + it('у коммита есть автор', function() { + return this.browser + .url(url) + .element('.commit') + .getText('.commit__author') + .then(author => { + assert.equal(author, 'Ivan Kolobaev'); + }); + }); + + it('у коммита есть дата', function() { + return this.browser + .url(url) + .element('.commit') + .getText('.commit__date') + .then(date => { + assert.equal(date, '2018-10-22 01:03:53 +0300'); + }); + }); + + it('у коммита есть описание', function() { + return this.browser + .url(url) + .element('.commit') + .getText('.commit__msg') + .then(msg => { + assert.equal(msg, 'Добавлено hermione'); + }); + }); + + it('у коммита есть хэш', function() { + return this.browser + .url(url) + .element('.commit') + .getText('.commit__link') + .then(link => { + assert.equal(link, 'a35931b770328564ddde0ca70ccdab832b22e97a'); + }); + }); + + it('вид коммита не изменился', function() { + return this.browser + .url(url) + .element('.content') + .element('.commit') + .assertView('plain', '.commit'); + }); +}); diff --git a/hermione/commits.hermione.js b/hermione/commits.hermione.js new file mode 100644 index 0000000..16bce9d --- /dev/null +++ b/hermione/commits.hermione.js @@ -0,0 +1,23 @@ +const assert = require('chai').assert; +const url = '/'; + +describe('Открываю главную страницу со списком комитов', function() { + it('выводится список коммитов', function() { + return this.browser + .url(url) + .isExisting('.content') + .then(exist => { + assert.ok(exist, 'список коммитов не выводится'); + }); + }); + + it('список состоит из 20 коммитов', function() { + return this.browser + .url(url) + .element('.content') + .elements('.commit') + .then(commits => { + assert.equal(commits.value.length, 20); + }); + }); +}); diff --git a/hermione/file.hermione.js b/hermione/file.hermione.js new file mode 100644 index 0000000..76c5564 --- /dev/null +++ b/hermione/file.hermione.js @@ -0,0 +1,22 @@ +const assert = require('chai').assert; +const url = '/content/a35931b770328564ddde0ca70ccdab832b22e97a/controllers/contentController.js'; + +describe('Открываю страницу c содержимым файла', function() { + it('выводится содржимое файла', function() { + return this.browser + .url(url) + .element('.content') + .isExisting('.file-content') + .then(exist => { + assert.ok(exist, 'содержимое файла не выводится'); + }); + }); + + it('вид вывода содержтиого файла не изменился', function() { + return this.browser + .url(url) + .element('.content') + .element('ul') + .assertView('plain', '.file-content'); + }); +}); diff --git a/hermione/folder.hermione.js b/hermione/folder.hermione.js new file mode 100644 index 0000000..c87529d --- /dev/null +++ b/hermione/folder.hermione.js @@ -0,0 +1,33 @@ +const assert = require('chai').assert; +const url = '/files/a35931b770328564ddde0ca70ccdab832b22e97a/controllers'; + +describe('Открываю страницу c файловой структурой', function() { + it('выводится файловая структура', function() { + return this.browser + .url(url) + .element('.content') + .isExisting('ul') + .then(exist => { + assert.ok(exist, 'файловая структура не выводится'); + }); + }); + + it('список состоит из 3 позиций', function() { + return this.browser + .url(url) + .element('.content') + .element('ul') + .elements('li a') + .then(items => { + assert.equal(items.value.length, 3); + }); + }); + + it('вид файловой структкуры папки не изменился', function() { + return this.browser + .url(url) + .element('.content') + .element('ul') + .assertView('plain', 'ul'); + }); +}); diff --git a/hermione/fs.hermione.js b/hermione/fs.hermione.js new file mode 100644 index 0000000..cb8d4fc --- /dev/null +++ b/hermione/fs.hermione.js @@ -0,0 +1,33 @@ +const assert = require('chai').assert; +const url = '/files/a35931b770328564ddde0ca70ccdab832b22e97a/'; + +describe('Открываю страницу c корневой файловой структурой комита', function() { + it('выводится файловая структура', function() { + return this.browser + .url(url) + .element('.content') + .isExisting('ul') + .then(exist => { + assert.ok(exist, 'файловая структура не выводится'); + }); + }); + + it('список состоит из 14 позиций', function() { + return this.browser + .url(url) + .element('.content') + .element('ul') + .elements('li a') + .then(items => { + assert.equal(items.value.length, 14); + }); + }); + + it('вид корневой файловой структкуры не изменился', function() { + return this.browser + .url(url) + .element('.content') + .element('ul') + .assertView('plain', 'ul'); + }); +}); diff --git a/hermione/navigation-breadcrumbs.hermione.js b/hermione/navigation-breadcrumbs.hermione.js new file mode 100644 index 0000000..bb89c95 --- /dev/null +++ b/hermione/navigation-breadcrumbs.hermione.js @@ -0,0 +1,55 @@ +const assert = require('chai').assert; + +describe('Открываю содержимое файла', function() { + it('кликаю в ХК на ссылку с фаловой структурой папки коммита', function() { + return this.browser + .url('/content/a35931b770328564ddde0ca70ccdab832b22e97a/controllers/contentController.js') + .element('.breadcrumbs') + .element('a:last-child') + .getAttribute('href') + .then(href => { + assert.equal( + `/${href + .split('/') + .slice(3) + .join('/')}`, + '/files/a35931b770328564ddde0ca70ccdab832b22e97a/controllers/' + ); + }) + .click('a:last-child'); + }); + + it('кликаю в ХК на ссылку с корневой структурой комита', function() { + return this.browser + .element('.breadcrumbs') + .element('a:last-child') + .getAttribute('href') + .then(href => { + assert.equal( + `/${href + .split('/') + .slice(3) + .join('/')}`, + '/files/a35931b770328564ddde0ca70ccdab832b22e97a/' + ); + }) + .click('a:last-child'); + }); + + it('кликаю в ХК на главную', function() { + return this.browser + .element('.breadcrumbs') + .element('a:last-child') + .getAttribute('href') + .then(href => { + assert.equal( + `/${href + .split('/') + .slice(3) + .join('/')}`, + '/' + ); + }) + .click('a:last-child'); + }); +}); diff --git a/hermione/navigation-commits.hermione.js b/hermione/navigation-commits.hermione.js new file mode 100644 index 0000000..d9e86db --- /dev/null +++ b/hermione/navigation-commits.hermione.js @@ -0,0 +1,59 @@ +const assert = require('chai').assert; + +describe('Открываю главную страницу', function() { + it('кликаю в списке коммитов на ссылку с корневой структурой комита', function() { + return this.browser + .url('/') + .element('.content') + .element('.commit') + .element('.commit__link') + .element('a:last-child') + .getAttribute('href') + .then(href => { + assert.equal( + `/${href + .split('/') + .slice(3) + .join('/')}`, + '/files/a35931b770328564ddde0ca70ccdab832b22e97a/' + ); + }) + .click('a:last-child'); + }); + + it('кликаю в корне на ссылку с фаловой структурой папки коммита', function() { + return this.browser + .element('.content') + .element('ul') + .element('li:last-child a') + .getAttribute('href') + .then(href => { + assert.equal( + `/${href + .split('/') + .slice(3) + .join('/')}`, + '/files/a35931b770328564ddde0ca70ccdab832b22e97a/views' + ); + }) + .click('li:last-child a'); + }); + + it('кликаю в папке на ссылку с файлом коммита', function() { + return this.browser + .element('.content') + .element('ul') + .element('li:last-child a') + .getAttribute('href') + .then(href => { + assert.equal( + `/${href + .split('/') + .slice(3) + .join('/')}`, + '/content/a35931b770328564ddde0ca70ccdab832b22e97a/views/layout.hbs' + ); + }) + .click('li:last-child a'); + }); +}); diff --git a/hermione/screens/1dae8ca/chrome/plain.png b/hermione/screens/1dae8ca/chrome/plain.png new file mode 100644 index 0000000000000000000000000000000000000000..e4711a7dfda9e1823c3068c0766bd6fc18caf1cf GIT binary patch literal 7777 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 literal 0 HcmV?d00001 diff --git a/hermione/screens/1dae8ca/firefox/plain.png b/hermione/screens/1dae8ca/firefox/plain.png new file mode 100644 index 0000000000000000000000000000000000000000..f6510d0455367593f271dfbba9abbbaff50fe7a8 GIT binary patch literal 6006 zcmb`LWmr^gx5sG^B&8%D8kCksx=R`f1sv&|5s>Z}LO=wR20@3CPN@Nhp+lsH?(Q6^ zgY(4uKJR(X`{~Swx%TY)+IOtI*8jKu6Q%P+g%Fa15&a}nufcT{)NqFfXKymAyUsd`00d6@^-DoP4_4>09= zP@dDPiGCle=leqERVXPgb;^DC0(g*vX_an3eD6rwR+C}Yd(d|glAoVXDv!q$Mk4=( z;NT&B5DDrB0I3?xcY6%clYh@I8b{WLGty@u{%Kcu-Yy)xc$PTrAqjm>QQkKQ7 zoi)YS^r8V!L{ONORBd)@p@gL@A>EP-G`@IyO^!>p5kVE zhhJTd&r(p&5-&U3_@r3?*pep^{)0t4$+lx5{dew%1U(<=OAS6Ooq zF;LEUhQ<1cqc1?R!YTmp*-mx@_4{=V10*4ZhL|aKF}{Vt91Mw6p!s=up4%9Ls^uceD$>h@gaqu12rw9y zy?(TWW3WUv%;%Trg+3heQph+-Y&|{2tjS?%jb1d+cfM7oBCHI^2}(M0#YkI6(4%TwhA%a=K}2_(8BA#y{?7I?g5G5A*7 zv+}T(FcMrld1(?_;pfb8ngx3s`7RTYFAKfTD>g6m-am|>UU{mf_3=29Ts`&MlxWWi ztrQ(}EN<$p#?qis?>kx4s@fbj`tH#&G2MfM*)s!!gYlNvQaR%tbcC8)$8NZrHnY>M0lm7WJvxMRkNS}X)nHuzXI#Qh5VSW8OmJndba zC)v_h!me6h zLd&dL)R%nmOViBNc?kuH-hNpt@!#AYA@)cQfB(`nL->mB=G@n2?1kv7ffpU53uLiv zBPAvozB>%1h{o-3j;(py+vlScp9$Z5+WvvYfL8K;XO)}|s*}r0LglPNr9FGS&ffS$uNbxFpiWF}U@BOT#CX!NgON8;>EV+VH8_B)Gg~+C%yf zuVBra-L=~b)W9Q?6YLfe?cVVK+>=Wda{UL^d&a;|9owm|P$EUaayyF3w5`ay_V~Z< z;Z?-_J3jv$?xNw^&$mM^@`~TgXigW}EY3nTU=ze*fpc$6g#|B8hiZSCJ%SP(td6hD z@9x4(kUWqxOi;$3h&@9JMK!`gw;Dc_t^s$DNS|3`j3F&*WxmRq1DotN>FpcQu)P{5 z>8Z@fqT#oBnGgXFOiBgrYvt73l_N=GM-^)AC#w^*CKDmE56oU4n3*O$-mK;EQlVM*NaBo=>dZO6799w~!e6Tx>bKf79S3d-pgOZx9CNd*dro$gn?s&TE>qugl zRc&w!4scb|`)VegNG~5cbbVqp<_W~&CX2BiG-^0)e@ugl6IF);r^W|?*D16o~qR;*?jIj(`hcd7TIexoM@k$NN} zUK!l;Ghp+AV{Mt)?{31KY$%7n3HN);+x}((q%dd;oe9yR;yu$1e}Gc=NKkO#!Z++v z3n)=gzs=J6P~MAy$WGJxm?_VOu12xwD`O(I4bUTK8a2!?AijZZ;PhmcWA6=^SD)sy zlKry%mC)?^!m^5UeN3RdiP7Wpz?|j5Oh45JjN~Te?4jdZc^_xMo*4T#vev&-bxy_A zm&$t$ci-73)eYBBvqiUOixJr5ba&466%c}hD;C*|(-XIyBS?>E+3qm%#r0j~-F)R? zOuReqT76J#7Ug$nPHDuGGio^`_j2A(#RLDd$}7&nH!#tUa#11?w*3}57V_}QPr$EK zs07fBF$uQN)oq)svbC*CPfzzgUMGda;Tl=_>mJ4ig!rI>2ts29XzYkgRD;!VKv9vD z-v_5<$Rk=u%ht(S9#ZM^h{W-x`q`OC`)?|tRHx)NAb{< z%A4u(D{auU4}1MQ`ZTkMT4jSxLQmpn>Nmll2|~H>GRpj!kVpJGT@7=ZYQv%#PBifJ z;@nM-lw&kd%1Bs_D=`G)#-W_bc~uekk>2C(U9MO^bIp?s5kHD zKJ+@Fb|wSIw$;gM#Gz9&!~+epShrJ;TwYWQa1VWmJghU|Uf{OfMfGV|B(Q%$H`^jq zTE?Yy*qzp2zW`IDk36wKQGISEMDHl5$1&4j1OtIJ>%)?M=!eO!1Xd%kIE!6^lL!Im zi~7}?g1W^5eWGz<$Z-Adxe<6eUp6hRx`IF2{mEdVKn*zAllo~DUn!Idkv3x7eE+Cm zU}(rQaW>5WcQIG zy5}VkaZrdazHt;NUjk={PjhKKSba$MUH)l2BclY-jbQ9uWsvzMv3N5ag;K8X94|ye z@;xkfkCWy2R;1nnoz+ID{0UFw}qfdSuuJ~_q2$Anj@awm` z4CLkd^ z3PKLMJYYu?vP!qe{bWbLf#F(VSZ87<4uP8t4<5urZEXmBSk~xl=tz0B?`zJa!M~30 zE)+HQntN3eUF)rJ>)$0^;UkOT@xHJ7d!i}|q3qyO3A}^cl>bf0Fk|WBmezR5(WW0v zkraYgjoD@Hc&PI@4ixe2!+*{@LPLG7Nu#-vD?Pcz^j@C&)u8}NpoH&-dRI(ir1zC6 zP>%rU6EG}LT#ocm{A)NtSa-f|bdGuVs!=G+E5_;g(%@SA5om?@fVXpna^X)XrbkJR z-U5`8dxgH<)PJz#xhEKR+=K7=-~!@kukCO)u?sxSNf&gG01krQ^{WB;mVC{=7tL!V%{jV3iiO z%u0uA!Nj3R+cF#QWaL8_k71-sbcy9W!}tf`6d$^@F6lEk1jOhZv2`JM_i_ z#P5z)we2R#77lCBAG3mXBL$W@8{T~-_5EJkcqKiMcAY9sqH+omQlAxEQVo3kjZrNy z-|kZ5p)WKIE5fUpb^jGVTWoqMcR{B3O(F|z!I!=KmcVyO&!<3BiMq_uOoA`ms7F4) z0e3{sT0&j-nMyT?3+_H+EQ#1z73zuUn>hXhi4`vJ>Q*Rl0b{((0=Lzs3Us_aln+gD zCGjOpqMwwrmZ$V-&#YU&Of=pxx+|kKB1oi zkID>=cYYrnGTp_8D(C~|$jJv1PfMSfl<#eh7HbE}p{Tgv*e!qtTY6MH@+S7xSH?=W z*x<#02!JLmi_RVK2X*~lBedpKiT0+^q|6aEPeD-}95)uoVTjs5;3fUdP~M91$8Z?w zn=w9q5p_cut7S-kRJ;L2{{0A_h;@8(DfVZ9F!gU);(M=EXkldjQIEkf?PPIAZAIUx zM$do&*KZ@FWm?utfBV&-9mq#c;$3%jb%prDV6b1CylhHX@t$hAMQU1Us&Cd4l_$X9 zy<0QU z`_hOBaT_ydqT9A3jyK_lXI;+7I-7F34jU%~DiTVE&uH!+m0U2}MK0 z(GdSZt(?f?IIaE*IIB6Mwvn^0dx31nE|1W*1|Ep1e;RBJW?ZZn!f?R2V@`ZJ7%Q~< z)CS+`Zp}KUV_zYai95?`mPD3+oL7xjvc5%0bWil( z;hp{B+8^s!Z6bDmrsTzR+XXJT5TD`w*cK?Iby(nyw&AV!yt&szbRo9Fh`Tx?=~ggR zva*F}OgfgnW|8k)uz)1AaSmu)G3D2t`!MQ_iVD+a|5u_HysD>L)Ey=ioAnFFG+p0J z*pNU8cs$$*YtE7%`15$fSQz)0H&*XPx@?c%D?r%F(%*+HFJiW21x`=hPs%>9*jP~6$rYj0Q=F_H=ZOHvvJ0kza$~Dpj}H_Tf5AiM4nqnN#lga+))@fT;u(ELkp!C z71f3o^PQOv<{KpKH2nY8Lll4e)kDN|{-?_}0ivcA*8W$MaD!_KITz5LEqieLe>$3) M(i6o}dCQRh0S8#K6aWAK literal 0 HcmV?d00001 diff --git a/hermione/screens/51ea057/chrome/plain.png b/hermione/screens/51ea057/chrome/plain.png new file mode 100644 index 0000000000000000000000000000000000000000..05a0c9c4a138a1d7fbfd06951e01a4f5acb3317b GIT binary patch literal 3109 zcmd5;`8yQe7giFHeVIa}Ms^Az*&;M3YZ^qh24jnmB{M#<4H_EzSkoj!(%5%>62oW+ z*>`5_+hiRK-|6#Le1Ey;oaf&AJm8szPY8eIwwl&cGdse|Y>yvQz->>rU6gSvwyxIWtY;MGb@uGf=@;|o={p>8qI&Jz4 zfFHr3cCst)`5VJlah@5?BA*)*8YjqgyU0>6IZq~>9DDoBpf!}#uRC`8mepye>_dTS z&BU9Q@;DEkTtwDU8xRVEwqt94_ zAITX!C*4~gm~QaADiJ4Rbls+Rr#@~>CxF; zxHJ`khe9f$Fb)RV`ZFBX$$boa?zvNt@6YRJzumNl3(owa@WCHpKxBxYsd5Gr=OPYb zu5$t|chZ^|=q~*vaalnjAuRsv&}WYAU~?73UipE38<&3R;?}C6ghT&HZ_9#Pxdh@% zPFuNWQ46VSXu1;nK5BYMTc1+rvdH1%HZJ5Qk!6zU?#J}lbGXt8G<(2}fQP2W?4$3D zh9FO@bbz+HAw<>{Ypa)VSJa&xPx97ytOqhzyf6P+r$P~?Fs7kF0t^-wyi=MoT-)+9 z3?T()zj+x`{FW!l?)W2w)Ld7d&l4z>^q0aPv`FhX~nkMTrPCS$VqlK^XORUDK}5yrv^M0(xSnYk{LHM zs7*@kxEL)hk9=aU>dzuz9Ym1njL?%9mZaO5%S$42BNSly#zS7}@}#T--|Xlf+nQ#- zsb%}qbimUA?KDzZ2as|5&xqnfhBHg*m#?=r1?e)>mqba_44HE`jG@*vjmMc|L&{+i zYoFcpMwkADsdKKmy14*St;{X=&$YkfLwvEe6%3;E_X*T&1S6gglhX4{_rHEPkwiR@ zdVIUrOo;tK?rH&fp7FSb%m}SnpJ^9o(n(#Z&XyFuRKL=EMcBvdO^G^G#=!Y0SJ4i% zFoiDfj){6P(vCg{%~T-aB#1-X{zc&6NC{c5ss2djq;&b3r}TF|{vK!Q$lCz)2sJ@? zwQKgBp_?UaGQz`o6GogGu+gaT;jokT{~{8~HDh zgu6MYm}zU|xSZOx3es8=hEO7f(}#%*A5Jfk%H9BMnr``G3QHJq7p zy;4<>&gen~*7U+3EZE}VZXkamG+j>4c`>1pdf*NaB1khV`A+JE&)cx(PyCBy=T8i@ zG4CF0;4Ge|2$m0uVlXFC8_aR=Z(r;Um*wnxdorNqSk&i&y(}f+iTXFH4x{=WUFBeN zu+C@&eIn$}`0 z3>96-6O9@L-@^F@+>2_pOKs0s2T(D-3$was&gnn{#KBG?cIk`BE5fdD{8n1c#+f}4 z(S?>37SH$&1(49<1jxCWY?U_kyS(8VkC?EIVwSK++`z=at!D9RuV$5q#GdA0CcEJ$ zJUQMN%79F`I;Sd+aoYAoLN#xOhyKPQ*1OjX9p4vRw=HC1M(?&^r6x9+G~5OZl}|dl zsMLURGuqaZZSl->VGkFEn)YjEirh_o#=Ss&TnQ&~%3A6S`2fMGPl*Gh4Mu6=AFOW#^S)&rHU~8GH)vN{7NQ`@RW+JiG;4l7T-p`POQ!oD6!*alU z(a1_S%J&ZCdu>-Yl`+9=ECAA$na#KB+MO;QeMIsnHqEw+$;5D`0V^P@e;hK0?fPPF z>ksXXCgs`RFO(f8J6MvY!@WJ_W%AMOv0?HQe6!wDwR|F>Y<6`&)1)LHJZ=+Tdc#`o z3t+w)pt?O)H*~c%6ah8SOTsS%fp+*BPBlYSO3BMDttZ@P{ z?{{VWG9lCP^!KFPJT9Uu5~}gNBn)3$bjQy%A_=l2Bu#MXHvI!0PMPb?|EM;YHTN5v zP$k;>1DE!SvW>=;2o7Z4;!5OYr+i=GqUuP$BbiyE?)L$OMhq8U`)0}|SRDU3xVf*X z75mA}HijvAt)RLxxny@B>O6x{i2sqTG^1ld_ChV^uk;evf$njz_3QPt2dHZ^2J$_D zOxWy}OgfzX#Kv_oARHFgo}y7$Tg#+{_5cmVJ-GL6E|yV1`yxhu+fPsQGz61>olO0l zwcHZ^V2nck+DVL(_c%?=*_Xw*MI(-NeYQ}>^f6Kz^i+#D zw`cQC$+4$eol#HB&)tzNyO4>$X^+@(&6VIsi*A|upn2D&P$_xuZVctk>H5egESlOk zvrGy>j005w&Wy*D-&^eP(|{iO52G(Gt~!3JB8s@0fy!4ScphnegjY2epu|7^nwNG5*6 zXaMFKF~V;BvM30df^#q`m2T;S7I&g{kH0FK6o!btbwPYcMmKyUy%L4&uU>i5))hyp zKZOjps91>06x;ce?KaEpjh}PPf0JRpqx8P*GDnMlgggOTn!CXL{V)CObuQDq7FJgv zWULl)tyO3EID+Z<=zY*YxO%%pZre{9Eb6i9cCc)Pq`cl(g>8Bk- z-u7$7@HZK?)#mn=4?WCvN*WW=7X%s(Km7I@?_eGN4{U)+oLJP=87lE*aDhkibsQfa z`PZu4Qbo62FKyGHxx1rimz3USb(audh7^P+>%omECyk)x9fp}yi?2;UtcKg?miaw_QKSYy=_A+&r#b`A8X`{6({8u-J9|dY`UU%+FHA*$`louJ<@%R zeub8XVP6^nwPxH(96F89@4v?tjsBjQk(xe+aPv literal 0 HcmV?d00001 diff --git a/hermione/screens/51ea057/firefox/plain.png b/hermione/screens/51ea057/firefox/plain.png new file mode 100644 index 0000000000000000000000000000000000000000..cf94b0e36dfa32028f9ff8a54ec512271a92b015 GIT binary patch literal 2743 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 literal 0 HcmV?d00001 diff --git a/hermione/screens/5a13d6e/chrome/plain.png b/hermione/screens/5a13d6e/chrome/plain.png new file mode 100644 index 0000000000000000000000000000000000000000..3580e3920374c3ee845ddfeaec8d32e461e463bd GIT binary patch literal 21822 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 OMovmuvRJ~{|NjFl?K49F literal 0 HcmV?d00001 diff --git a/hermione/screens/7887a1f/chrome/plain.png b/hermione/screens/7887a1f/chrome/plain.png new file mode 100644 index 0000000000000000000000000000000000000000..fc98654c280a57be3bfc5b412468780304e555d8 GIT binary patch literal 4688 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 Nv>!q=%G7K^{s$;LCv literal 0 HcmV?d00001 diff --git a/hermione/screens/7887a1f/firefox/plain.png b/hermione/screens/7887a1f/firefox/plain.png new file mode 100644 index 0000000000000000000000000000000000000000..ce8b4b211fe9a290cf0972b467a4d8ee544408a4 GIT binary patch literal 3475 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 E4?bdC0{{R3 literal 0 HcmV?d00001 diff --git a/hermione/screens/f16d792/firefox/plain.png b/hermione/screens/f16d792/firefox/plain.png new file mode 100644 index 0000000000000000000000000000000000000000..21a5481b33baabb7434d1cf1dc613dd2997dbea7 GIT binary patch literal 1764 zcmc&#`#;lr82=hMXmcyImJW8x{j?=Yi`-|!8I5yLuS}+rQ|3Bz-Cpi1iy12`CWq>{ zbwL;oC--D?C~`}$iXn4J8fBcX{)vA1JkR@iKCkEVe!ZXP^?aBf1ZS8ELInT-7#`9leFkIf&0ehQf4}k`}Gi@F23OM?=?#rG+VAqJ*C= zhXjL0W{Mfxup6%X{XUt21MRiUADA3I{O8-Hb=ap=%=_M~?ou8pzLT|qSpC>*#ls~` zZD5>HL%t^55qg5Xd`9iT%Zr3T8y>khf={~7r6s%x%z1BW^PG*@Uo9X7$nZ>wch?_C@}&XvmsN6mY@LKt3Ffh*GerrrbN#-`~0$OM^x>P9@XeNEG~ zf$(nc+T?fL%3OD5Z>2A-p9|6Q)A)!83_s>zJfsUX@uK<>jngwr2i-)I#b<09iGYJr2PWx1Io1{xCXpwAcLvV%=jK{3T4ACvV`YkoBxUv(w&dl5v z^mqU-%e|g%7S}&+mv9uarepUBPBDMzhHJ+9$d5ush1ToHvMUcMVfK5ER_nBP<#3Y1TcM0P;Lai_)!l${_g5+rv_)&cZuD_C6tZbHCGx)YBzI}MI5(_W1 zuP7*5op_b`;QSVn1*JNIHUy?1wI>+EWvf z!{mO;yH6UPyX+8DiE(rq5#2fdQh&X+D;H-Lk8-YC)dOE^j_8pau-}^3ZnGOaM~mWg zlvb{w)D-L2(XI>rSrVDGpX9(&_`~*5Kjy%U&N!byKcRnWxy8yZrmb^hHOsy%YDsnH zuD{)phVa6BbeZbZ7j4c^I;i+(wySEkf}J;N*8NnPG+W{9UbiI6s}sIhL3O4ZP%A$~ z5qXaLOm)2GXPQ%{*WP(SMgx|<8kQ*X>9NFqZ7O1!4-KBtG^<<_-Sj-p7IY8Ff}rZ4!LyHihfbXU8w~H>C-1neb>NRr mP9tpLX_Ik3gLHBdAzJ`;vp4UtG^_*sy#Txu!LiETKk0wSFDVxQ literal 0 HcmV?d00001 diff --git a/hermione/screens/f5b1733/chrome/plain.png b/hermione/screens/f5b1733/chrome/plain.png new file mode 100644 index 0000000000000000000000000000000000000000..dddb42152b99ab3e45c135ff1fd8682e13307b17 GIT binary patch literal 48759 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 JQ#60`{{Ra)-0%PZ literal 0 HcmV?d00001 diff --git a/hermione/screens/f5b1733/firefox/plain.png b/hermione/screens/f5b1733/firefox/plain.png new file mode 100644 index 0000000000000000000000000000000000000000..bfeeff683acfb59f9971c783d2f7a12eb1e4c926 GIT binary patch literal 35244 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 literal 0 HcmV?d00001 diff --git a/hermione/screens/f6e1612/firefox/plain.png b/hermione/screens/f6e1612/firefox/plain.png new file mode 100644 index 0000000000000000000000000000000000000000..c900235690b09fb3277365cc67cdcfda1b1df551 GIT binary patch literal 10089 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 literal 0 HcmV?d00001 diff --git a/package.json b/package.json index ac3c823..0a3df70 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,8 @@ "stage": "NODE_ENV=staging node ./bin/www", "debug": "ndb", "lint": "eslint --fix tests", - "hermione": "hermione hermione" + "hermione": "hermione hermione", + "hermione-gui": "hermione gui" }, "keywords": [], "author": "", From cb78d5030723aa5a22ef5477c05aa44df17eaa78 Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Mon, 22 Oct 2018 07:58:41 +0300 Subject: [PATCH 14/18] =?UTF-8?q?=D0=94=D0=BE=D0=BF=D0=BE=D0=BB=D0=BD?= =?UTF-8?q?=D0=B8=D0=BB=20=D1=80=D0=B8=D0=B4=D0=BC=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 64 ++++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 52 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 4a2bbb3..95d32f8 100644 --- a/README.md +++ b/README.md @@ -9,12 +9,19 @@ ## Как запустить ```sh -git clone git@github.com:dima117/shri-testing-homework.git +git clone https://github.com/vak1n/shri-testing-homework.git cd shri-testing-homework npm i npm start ``` +## Окружение при разработке + +- ОС "Ubuntu 16.04.5 LTS +- Selenium build info: version: '3.12.0' +- Google Chrome 70.0.3538.67 +- Mozilla Firefox 62.0.3 + ## Интеграционные тесты Сценарии для интеграционных тестов @@ -26,16 +33,29 @@ npm start - из списка файлов на страницу отдельного файла - переходы по хлебным крошкам -#### User Story +#### User stories + +- как неаторизованный пользователь, я хочу открыть главную страницу, чтобы увидеть список из 20 коммитов репозитрория +- как неаторизованный пользователь, я хочу видеть информацию о коммите, чтобы можно было понять кто автор, дату, описание, хэш +- как неаторизованный пользователь, я хочу открыть страницу определенного коммита, чтобы увидеть корневую файловую структуру коммита +- как неаторизованный пользователь, я хочу открыть определенную папку, чтобы увидеть вложенную файловую структуру +- как неаторизованный пользователь, я хочу открыть определенный файл, чтобы просмотреть содержимое файла +- как неаторизованный пользователь, я хочу переходить от комитов к файловой структуре, переходить по папкам файловой структуры, смотреть содержимое файлов, чтобы была удобная навигация +- как неаторизованный пользователь, я хочу видеть путь от главной страницы до той, на которой я сейчас нахожусь (хлебные крошки), для удобной навигации +- как неаторизованный пользователь, я хочу переходить элементам хлебных крошек, что бы перейти к определенному уровню иерархии + +#### Запуск -- как пользователь, я хочу открыть главную страницу, чтобы увидеть список из 20 коммитов репозитрория -- как пользователь, я хочу видеть информацию о коммите, чтобы можно было понять кто автор, дату, описание, хэш -- как пользователь, я хочу открыть страницу определенного коммита, чтобы увидеть корневую файловую структуру коммита -- как пользователь, я хочу открыть определенную папку, чтобы увидеть вложенную файловую структуру -- как пользователь, я хочу открыть определенный файл, чтобы просмотреть содержимое файла -- как пользователь, я хочу переходить от комитов к файловой структуре, переходить по папкам файловой структуры, смотреть содержимое файлов, чтобы была удобная навигация -- как пользователь, я хочу видеть путь от главной страницы до той, на которой я сейчас нахожусь (хлебные крошки), для удобной навигации -- как пользователь, я хочу переходить элементам хлебных крошек, что бы перейти к определенному уровню иерархии +```sh +# запуск selenium +selenium-standalone start + +# в отделной вкладке запуск импровезированного стейдж +npm run stage + +# в отдельной вкладке запуск интеграционных тестов +npm run hermione +``` ## Модульные тесты @@ -68,7 +88,27 @@ npm start - получаем ошибку Error: git show - получаем содержимое файла по hash -#### Рефакторинг +#### Запуск + +```sh +npm run test +``` + +#### Отчет о покрытии + +```sh +npm run test-cover +``` +В папке `coverage` в корне + +## Рефакторинг - функция buildObjectUrl перенесена в хелпер navigation -- в хелпере git добавлена возиожность инъекции mock для execFile \ No newline at end of file +- в хелпере git добавлена возможность замены execFile на mock путем инъекции + + В итоге отдал предпочтение этому варианту взамен переписыванию модуля на класс или фабричную функцию, + так как несет меньше рефакторинга. При таком подходе конечно в тестах этого модуля придется следить за тем, + чтобы предыдущая инъекция не влияла на результаты следующих тестов. Но если бы проект был большой, + то рефакторить пришлось бы ощутимо больше, чем пару-тройку контролеров. + +- сслыка на репо выделена в отдельный файл с подменой на импревизированном стейдже на mock bare репозиторий \ No newline at end of file From e196754517aa095d5171405e757594bc7508ba00 Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Mon, 22 Oct 2018 16:29:32 +0300 Subject: [PATCH 15/18] =?UTF-8?q?=D0=9F=D0=BE=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D0=BB=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA=D0=B8=20=D0=B2=20?= =?UTF-8?q?=D0=BD=D0=B5=D0=BA=D1=81=D1=82=D0=B0=D1=85=20=D1=80=D0=B8=D0=B4?= =?UTF-8?q?=D0=BC=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 95d32f8..a300f75 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,8 @@ npm start ## Окружение при разработке -- ОС "Ubuntu 16.04.5 LTS +- ОС Ubuntu 16.04.5 LTS +- node --version v10.12.0 - Selenium build info: version: '3.12.0' - Google Chrome 70.0.3538.67 - Mozilla Firefox 62.0.3 @@ -35,14 +36,14 @@ npm start #### User stories -- как неаторизованный пользователь, я хочу открыть главную страницу, чтобы увидеть список из 20 коммитов репозитрория -- как неаторизованный пользователь, я хочу видеть информацию о коммите, чтобы можно было понять кто автор, дату, описание, хэш -- как неаторизованный пользователь, я хочу открыть страницу определенного коммита, чтобы увидеть корневую файловую структуру коммита -- как неаторизованный пользователь, я хочу открыть определенную папку, чтобы увидеть вложенную файловую структуру -- как неаторизованный пользователь, я хочу открыть определенный файл, чтобы просмотреть содержимое файла -- как неаторизованный пользователь, я хочу переходить от комитов к файловой структуре, переходить по папкам файловой структуры, смотреть содержимое файлов, чтобы была удобная навигация -- как неаторизованный пользователь, я хочу видеть путь от главной страницы до той, на которой я сейчас нахожусь (хлебные крошки), для удобной навигации -- как неаторизованный пользователь, я хочу переходить элементам хлебных крошек, что бы перейти к определенному уровню иерархии +- как неавторизованный пользователь, я хочу открыть главную страницу, чтобы увидеть список из 20 коммитов репозитрория +- как неавторизованный пользователь, я хочу видеть информацию о коммите, чтобы можно было понять кто автор, дату, описание, хэш +- как неавторизованный пользователь, я хочу открыть страницу определенного коммита, чтобы увидеть корневую файловую структуру коммита +- как неавторизованный пользователь, я хочу открыть определенную папку, чтобы увидеть вложенную файловую структуру +- как неавторизованный пользователь, я хочу открыть определенный файл, чтобы просмотреть содержимое файла +- как неавторизованный пользователь, я хочу переходить от комитов к файловой структуре, переходить по папкам файловой структуры, смотреть содержимое файлов, чтобы была удобная навигация +- как неавторизованный пользователь, я хочу видеть путь от главной страницы до той, на которой я сейчас нахожусь (хлебные крошки), для удобной навигации +- как неавторизованный пользователь, я хочу переходить элементам хлебных крошек, что бы перейти к определенному уровню иерархии #### Запуск @@ -50,7 +51,7 @@ npm start # запуск selenium selenium-standalone start -# в отделной вкладке запуск импровезированного стейдж +# в отдельной вкладке запуск импровизированного стейдж npm run stage # в отдельной вкладке запуск интеграционных тестов @@ -111,4 +112,4 @@ npm run test-cover чтобы предыдущая инъекция не влияла на результаты следующих тестов. Но если бы проект был большой, то рефакторить пришлось бы ощутимо больше, чем пару-тройку контролеров. -- сслыка на репо выделена в отдельный файл с подменой на импревизированном стейдже на mock bare репозиторий \ No newline at end of file +- ссылка на репо выделена в отдельный файл с подменой на импровизированном стейдже на mock bare репозиторий \ No newline at end of file From f280043b8f2dab578890278dfb39e2b6e5ebb8f8 Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Mon, 22 Oct 2018 16:35:40 +0300 Subject: [PATCH 16/18] =?UTF-8?q?=D0=9F=D0=BE=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D0=BB=20=D0=BE=D0=BF=D0=B8=D1=81=D0=B0=D0=BD=D0=B8=D0=B5?= =?UTF-8?q?=20=D0=BD=D0=B5=D0=BA=D0=BE=D1=82=D0=BE=D1=80=D1=8B=D1=85=20?= =?UTF-8?q?=D0=B8=D0=BD=D1=82=D0=B5=D0=B3=D1=80=D0=B0=D1=86=D0=B8=D0=BE?= =?UTF-8?q?=D0=BD=D0=BD=D1=8B=D1=85=20=D1=82=D0=B5=D1=81=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hermione/navigation-breadcrumbs.hermione.js | 2 +- hermione/navigation-commits.hermione.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hermione/navigation-breadcrumbs.hermione.js b/hermione/navigation-breadcrumbs.hermione.js index bb89c95..5a0bb71 100644 --- a/hermione/navigation-breadcrumbs.hermione.js +++ b/hermione/navigation-breadcrumbs.hermione.js @@ -1,6 +1,6 @@ const assert = require('chai').assert; -describe('Открываю содержимое файла', function() { +describe('Перехожу по хлебным крошкам со страницы с файлом до главной', function() { it('кликаю в ХК на ссылку с фаловой структурой папки коммита', function() { return this.browser .url('/content/a35931b770328564ddde0ca70ccdab832b22e97a/controllers/contentController.js') diff --git a/hermione/navigation-commits.hermione.js b/hermione/navigation-commits.hermione.js index d9e86db..d6407a8 100644 --- a/hermione/navigation-commits.hermione.js +++ b/hermione/navigation-commits.hermione.js @@ -1,6 +1,6 @@ const assert = require('chai').assert; -describe('Открываю главную страницу', function() { +describe('Перехожу перехожу от главной до страницы с содержимым файла', function() { it('кликаю в списке коммитов на ссылку с корневой структурой комита', function() { return this.browser .url('/') From baf356d8126025d878cfd3185351643b645f2d8b Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Mon, 22 Oct 2018 18:54:20 +0300 Subject: [PATCH 17/18] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D0=B8=D1=81=D0=BF=D0=BE=D0=BB=D1=8C=D0=B7=D1=83=D0=B5?= =?UTF-8?q?=D0=BC=D1=83=D1=8E=20=D0=B2=D0=B5=D1=80=D1=81=D0=B8=D1=8E=20?= =?UTF-8?q?=D0=B3=D0=B8=D1=82=D0=B0=20=D0=B2=20=D1=80=D0=B8=D0=B4=D0=BC?= =?UTF-8?q?=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index a300f75..dfb9fb7 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,7 @@ npm start - Selenium build info: version: '3.12.0' - Google Chrome 70.0.3538.67 - Mozilla Firefox 62.0.3 +- git version 2.7.4 ## Интеграционные тесты From 3b7a3c8bbcd7a8a71e33f5770b01275b6dd23a2e Mon Sep 17 00:00:00 2001 From: Ivan Kolobaev Date: Thu, 25 Oct 2018 05:37:27 +0300 Subject: [PATCH 18/18] =?UTF-8?q?=D0=A3=D0=B4=D0=B0=D0=BB=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=BB=D0=B8=D1=88=D0=BD=D0=B8=D0=B5=20=D0=BF=D1=80=D0=B8=D0=BC?= =?UTF-8?q?=D0=B5=D1=80=D1=8B=20=D1=85=D1=83=D0=BA=D0=BE=D0=B2=20=D0=B8?= =?UTF-8?q?=D0=B7=20bare=20=D1=80=D0=B5=D0=BF=D0=BE=20=D0=B4=D0=BB=D1=8F?= =?UTF-8?q?=20=D1=82=D0=B5=D1=81=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- fixtures/repo.git/hooks/applypatch-msg.sample | 15 -- fixtures/repo.git/hooks/commit-msg.sample | 24 --- fixtures/repo.git/hooks/post-update.sample | 8 - fixtures/repo.git/hooks/pre-applypatch.sample | 14 -- fixtures/repo.git/hooks/pre-commit.sample | 49 ----- fixtures/repo.git/hooks/pre-push.sample | 53 ------ fixtures/repo.git/hooks/pre-rebase.sample | 169 ------------------ .../repo.git/hooks/prepare-commit-msg.sample | 36 ---- fixtures/repo.git/hooks/update.sample | 128 ------------- 9 files changed, 496 deletions(-) delete mode 100755 fixtures/repo.git/hooks/applypatch-msg.sample delete mode 100755 fixtures/repo.git/hooks/commit-msg.sample delete mode 100755 fixtures/repo.git/hooks/post-update.sample delete mode 100755 fixtures/repo.git/hooks/pre-applypatch.sample delete mode 100755 fixtures/repo.git/hooks/pre-commit.sample delete mode 100755 fixtures/repo.git/hooks/pre-push.sample delete mode 100755 fixtures/repo.git/hooks/pre-rebase.sample delete mode 100755 fixtures/repo.git/hooks/prepare-commit-msg.sample delete mode 100755 fixtures/repo.git/hooks/update.sample diff --git a/fixtures/repo.git/hooks/applypatch-msg.sample b/fixtures/repo.git/hooks/applypatch-msg.sample deleted file mode 100755 index a5d7b84..0000000 --- a/fixtures/repo.git/hooks/applypatch-msg.sample +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/sh -# -# An example hook script to check the commit log message taken by -# applypatch from an e-mail message. -# -# The hook should exit with non-zero status after issuing an -# appropriate message if it wants to stop the commit. The hook is -# allowed to edit the commit message file. -# -# To enable this hook, rename this file to "applypatch-msg". - -. git-sh-setup -commitmsg="$(git rev-parse --git-path hooks/commit-msg)" -test -x "$commitmsg" && exec "$commitmsg" ${1+"$@"} -: diff --git a/fixtures/repo.git/hooks/commit-msg.sample b/fixtures/repo.git/hooks/commit-msg.sample deleted file mode 100755 index b58d118..0000000 --- a/fixtures/repo.git/hooks/commit-msg.sample +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/sh -# -# An example hook script to check the commit log message. -# Called by "git commit" with one argument, the name of the file -# that has the commit message. The hook should exit with non-zero -# status after issuing an appropriate message if it wants to stop the -# commit. The hook is allowed to edit the commit message file. -# -# To enable this hook, rename this file to "commit-msg". - -# Uncomment the below to add a Signed-off-by line to the message. -# Doing this in a hook is a bad idea in general, but the prepare-commit-msg -# hook is more suited to it. -# -# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p') -# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1" - -# This example catches duplicate Signed-off-by lines. - -test "" = "$(grep '^Signed-off-by: ' "$1" | - sort | uniq -c | sed -e '/^[ ]*1[ ]/d')" || { - echo >&2 Duplicate Signed-off-by lines. - exit 1 -} diff --git a/fixtures/repo.git/hooks/post-update.sample b/fixtures/repo.git/hooks/post-update.sample deleted file mode 100755 index ec17ec1..0000000 --- a/fixtures/repo.git/hooks/post-update.sample +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh -# -# An example hook script to prepare a packed repository for use over -# dumb transports. -# -# To enable this hook, rename this file to "post-update". - -exec git update-server-info diff --git a/fixtures/repo.git/hooks/pre-applypatch.sample b/fixtures/repo.git/hooks/pre-applypatch.sample deleted file mode 100755 index 4142082..0000000 --- a/fixtures/repo.git/hooks/pre-applypatch.sample +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/sh -# -# An example hook script to verify what is about to be committed -# by applypatch from an e-mail message. -# -# The hook should exit with non-zero status after issuing an -# appropriate message if it wants to stop the commit. -# -# To enable this hook, rename this file to "pre-applypatch". - -. git-sh-setup -precommit="$(git rev-parse --git-path hooks/pre-commit)" -test -x "$precommit" && exec "$precommit" ${1+"$@"} -: diff --git a/fixtures/repo.git/hooks/pre-commit.sample b/fixtures/repo.git/hooks/pre-commit.sample deleted file mode 100755 index 68d62d5..0000000 --- a/fixtures/repo.git/hooks/pre-commit.sample +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/sh -# -# An example hook script to verify what is about to be committed. -# Called by "git commit" with no arguments. The hook should -# exit with non-zero status after issuing an appropriate message if -# it wants to stop the commit. -# -# To enable this hook, rename this file to "pre-commit". - -if git rev-parse --verify HEAD >/dev/null 2>&1 -then - against=HEAD -else - # Initial commit: diff against an empty tree object - against=4b825dc642cb6eb9a060e54bf8d69288fbee4904 -fi - -# If you want to allow non-ASCII filenames set this variable to true. -allownonascii=$(git config --bool hooks.allownonascii) - -# Redirect output to stderr. -exec 1>&2 - -# Cross platform projects tend to avoid non-ASCII filenames; prevent -# them from being added to the repository. We exploit the fact that the -# printable range starts at the space character and ends with tilde. -if [ "$allownonascii" != "true" ] && - # Note that the use of brackets around a tr range is ok here, (it's - # even required, for portability to Solaris 10's /usr/bin/tr), since - # the square bracket bytes happen to fall in the designated range. - test $(git diff --cached --name-only --diff-filter=A -z $against | - LC_ALL=C tr -d '[ -~]\0' | wc -c) != 0 -then - cat <<\EOF -Error: Attempt to add a non-ASCII file name. - -This can cause problems if you want to work with people on other platforms. - -To be portable it is advisable to rename the file. - -If you know what you are doing you can disable this check using: - - git config hooks.allownonascii true -EOF - exit 1 -fi - -# If there are whitespace errors, print the offending file names and fail. -exec git diff-index --check --cached $against -- diff --git a/fixtures/repo.git/hooks/pre-push.sample b/fixtures/repo.git/hooks/pre-push.sample deleted file mode 100755 index 6187dbf..0000000 --- a/fixtures/repo.git/hooks/pre-push.sample +++ /dev/null @@ -1,53 +0,0 @@ -#!/bin/sh - -# An example hook script to verify what is about to be pushed. Called by "git -# push" after it has checked the remote status, but before anything has been -# pushed. If this script exits with a non-zero status nothing will be pushed. -# -# This hook is called with the following parameters: -# -# $1 -- Name of the remote to which the push is being done -# $2 -- URL to which the push is being done -# -# If pushing without using a named remote those arguments will be equal. -# -# Information about the commits which are being pushed is supplied as lines to -# the standard input in the form: -# -# -# -# This sample shows how to prevent push of commits where the log message starts -# with "WIP" (work in progress). - -remote="$1" -url="$2" - -z40=0000000000000000000000000000000000000000 - -while read local_ref local_sha remote_ref remote_sha -do - if [ "$local_sha" = $z40 ] - then - # Handle delete - : - else - if [ "$remote_sha" = $z40 ] - then - # New branch, examine all commits - range="$local_sha" - else - # Update to existing branch, examine new commits - range="$remote_sha..$local_sha" - fi - - # Check for WIP commit - commit=`git rev-list -n 1 --grep '^WIP' "$range"` - if [ -n "$commit" ] - then - echo >&2 "Found WIP commit in $local_ref, not pushing" - exit 1 - fi - fi -done - -exit 0 diff --git a/fixtures/repo.git/hooks/pre-rebase.sample b/fixtures/repo.git/hooks/pre-rebase.sample deleted file mode 100755 index 33730ca..0000000 --- a/fixtures/repo.git/hooks/pre-rebase.sample +++ /dev/null @@ -1,169 +0,0 @@ -#!/bin/sh -# -# Copyright (c) 2006, 2008 Junio C Hamano -# -# The "pre-rebase" hook is run just before "git rebase" starts doing -# its job, and can prevent the command from running by exiting with -# non-zero status. -# -# The hook is called with the following parameters: -# -# $1 -- the upstream the series was forked from. -# $2 -- the branch being rebased (or empty when rebasing the current branch). -# -# This sample shows how to prevent topic branches that are already -# merged to 'next' branch from getting rebased, because allowing it -# would result in rebasing already published history. - -publish=next -basebranch="$1" -if test "$#" = 2 -then - topic="refs/heads/$2" -else - topic=`git symbolic-ref HEAD` || - exit 0 ;# we do not interrupt rebasing detached HEAD -fi - -case "$topic" in -refs/heads/??/*) - ;; -*) - exit 0 ;# we do not interrupt others. - ;; -esac - -# Now we are dealing with a topic branch being rebased -# on top of master. Is it OK to rebase it? - -# Does the topic really exist? -git show-ref -q "$topic" || { - echo >&2 "No such branch $topic" - exit 1 -} - -# Is topic fully merged to master? -not_in_master=`git rev-list --pretty=oneline ^master "$topic"` -if test -z "$not_in_master" -then - echo >&2 "$topic is fully merged to master; better remove it." - exit 1 ;# we could allow it, but there is no point. -fi - -# Is topic ever merged to next? If so you should not be rebasing it. -only_next_1=`git rev-list ^master "^$topic" ${publish} | sort` -only_next_2=`git rev-list ^master ${publish} | sort` -if test "$only_next_1" = "$only_next_2" -then - not_in_topic=`git rev-list "^$topic" master` - if test -z "$not_in_topic" - then - echo >&2 "$topic is already up-to-date with master" - exit 1 ;# we could allow it, but there is no point. - else - exit 0 - fi -else - not_in_next=`git rev-list --pretty=oneline ^${publish} "$topic"` - /usr/bin/perl -e ' - my $topic = $ARGV[0]; - my $msg = "* $topic has commits already merged to public branch:\n"; - my (%not_in_next) = map { - /^([0-9a-f]+) /; - ($1 => 1); - } split(/\n/, $ARGV[1]); - for my $elem (map { - /^([0-9a-f]+) (.*)$/; - [$1 => $2]; - } split(/\n/, $ARGV[2])) { - if (!exists $not_in_next{$elem->[0]}) { - if ($msg) { - print STDERR $msg; - undef $msg; - } - print STDERR " $elem->[1]\n"; - } - } - ' "$topic" "$not_in_next" "$not_in_master" - exit 1 -fi - -<<\DOC_END - -This sample hook safeguards topic branches that have been -published from being rewound. - -The workflow assumed here is: - - * Once a topic branch forks from "master", "master" is never - merged into it again (either directly or indirectly). - - * Once a topic branch is fully cooked and merged into "master", - it is deleted. If you need to build on top of it to correct - earlier mistakes, a new topic branch is created by forking at - the tip of the "master". This is not strictly necessary, but - it makes it easier to keep your history simple. - - * Whenever you need to test or publish your changes to topic - branches, merge them into "next" branch. - -The script, being an example, hardcodes the publish branch name -to be "next", but it is trivial to make it configurable via -$GIT_DIR/config mechanism. - -With this workflow, you would want to know: - -(1) ... if a topic branch has ever been merged to "next". Young - topic branches can have stupid mistakes you would rather - clean up before publishing, and things that have not been - merged into other branches can be easily rebased without - affecting other people. But once it is published, you would - not want to rewind it. - -(2) ... if a topic branch has been fully merged to "master". - Then you can delete it. More importantly, you should not - build on top of it -- other people may already want to - change things related to the topic as patches against your - "master", so if you need further changes, it is better to - fork the topic (perhaps with the same name) afresh from the - tip of "master". - -Let's look at this example: - - o---o---o---o---o---o---o---o---o---o "next" - / / / / - / a---a---b A / / - / / / / - / / c---c---c---c B / - / / / \ / - / / / b---b C \ / - / / / / \ / - ---o---o---o---o---o---o---o---o---o---o---o "master" - - -A, B and C are topic branches. - - * A has one fix since it was merged up to "next". - - * B has finished. It has been fully merged up to "master" and "next", - and is ready to be deleted. - - * C has not merged to "next" at all. - -We would want to allow C to be rebased, refuse A, and encourage -B to be deleted. - -To compute (1): - - git rev-list ^master ^topic next - git rev-list ^master next - - if these match, topic has not merged in next at all. - -To compute (2): - - git rev-list master..topic - - if this is empty, it is fully merged to "master". - -DOC_END diff --git a/fixtures/repo.git/hooks/prepare-commit-msg.sample b/fixtures/repo.git/hooks/prepare-commit-msg.sample deleted file mode 100755 index f093a02..0000000 --- a/fixtures/repo.git/hooks/prepare-commit-msg.sample +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/sh -# -# An example hook script to prepare the commit log message. -# Called by "git commit" with the name of the file that has the -# commit message, followed by the description of the commit -# message's source. The hook's purpose is to edit the commit -# message file. If the hook fails with a non-zero status, -# the commit is aborted. -# -# To enable this hook, rename this file to "prepare-commit-msg". - -# This hook includes three examples. The first comments out the -# "Conflicts:" part of a merge commit. -# -# The second includes the output of "git diff --name-status -r" -# into the message, just before the "git status" output. It is -# commented because it doesn't cope with --amend or with squashed -# commits. -# -# The third example adds a Signed-off-by line to the message, that can -# still be edited. This is rarely a good idea. - -case "$2,$3" in - merge,) - /usr/bin/perl -i.bak -ne 's/^/# /, s/^# #/#/ if /^Conflicts/ .. /#/; print' "$1" ;; - -# ,|template,) -# /usr/bin/perl -i.bak -pe ' -# print "\n" . `git diff --cached --name-status -r` -# if /^#/ && $first++ == 0' "$1" ;; - - *) ;; -esac - -# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p') -# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1" diff --git a/fixtures/repo.git/hooks/update.sample b/fixtures/repo.git/hooks/update.sample deleted file mode 100755 index 80ba941..0000000 --- a/fixtures/repo.git/hooks/update.sample +++ /dev/null @@ -1,128 +0,0 @@ -#!/bin/sh -# -# An example hook script to block unannotated tags from entering. -# Called by "git receive-pack" with arguments: refname sha1-old sha1-new -# -# To enable this hook, rename this file to "update". -# -# Config -# ------ -# hooks.allowunannotated -# This boolean sets whether unannotated tags will be allowed into the -# repository. By default they won't be. -# hooks.allowdeletetag -# This boolean sets whether deleting tags will be allowed in the -# repository. By default they won't be. -# hooks.allowmodifytag -# This boolean sets whether a tag may be modified after creation. By default -# it won't be. -# hooks.allowdeletebranch -# This boolean sets whether deleting branches will be allowed in the -# repository. By default they won't be. -# hooks.denycreatebranch -# This boolean sets whether remotely creating branches will be denied -# in the repository. By default this is allowed. -# - -# --- Command line -refname="$1" -oldrev="$2" -newrev="$3" - -# --- Safety check -if [ -z "$GIT_DIR" ]; then - echo "Don't run this script from the command line." >&2 - echo " (if you want, you could supply GIT_DIR then run" >&2 - echo " $0 )" >&2 - exit 1 -fi - -if [ -z "$refname" -o -z "$oldrev" -o -z "$newrev" ]; then - echo "usage: $0 " >&2 - exit 1 -fi - -# --- Config -allowunannotated=$(git config --bool hooks.allowunannotated) -allowdeletebranch=$(git config --bool hooks.allowdeletebranch) -denycreatebranch=$(git config --bool hooks.denycreatebranch) -allowdeletetag=$(git config --bool hooks.allowdeletetag) -allowmodifytag=$(git config --bool hooks.allowmodifytag) - -# check for no description -projectdesc=$(sed -e '1q' "$GIT_DIR/description") -case "$projectdesc" in -"Unnamed repository"* | "") - echo "*** Project description file hasn't been set" >&2 - exit 1 - ;; -esac - -# --- Check types -# if $newrev is 0000...0000, it's a commit to delete a ref. -zero="0000000000000000000000000000000000000000" -if [ "$newrev" = "$zero" ]; then - newrev_type=delete -else - newrev_type=$(git cat-file -t $newrev) -fi - -case "$refname","$newrev_type" in - refs/tags/*,commit) - # un-annotated tag - short_refname=${refname##refs/tags/} - if [ "$allowunannotated" != "true" ]; then - echo "*** The un-annotated tag, $short_refname, is not allowed in this repository" >&2 - echo "*** Use 'git tag [ -a | -s ]' for tags you want to propagate." >&2 - exit 1 - fi - ;; - refs/tags/*,delete) - # delete tag - if [ "$allowdeletetag" != "true" ]; then - echo "*** Deleting a tag is not allowed in this repository" >&2 - exit 1 - fi - ;; - refs/tags/*,tag) - # annotated tag - if [ "$allowmodifytag" != "true" ] && git rev-parse $refname > /dev/null 2>&1 - then - echo "*** Tag '$refname' already exists." >&2 - echo "*** Modifying a tag is not allowed in this repository." >&2 - exit 1 - fi - ;; - refs/heads/*,commit) - # branch - if [ "$oldrev" = "$zero" -a "$denycreatebranch" = "true" ]; then - echo "*** Creating a branch is not allowed in this repository" >&2 - exit 1 - fi - ;; - refs/heads/*,delete) - # delete branch - if [ "$allowdeletebranch" != "true" ]; then - echo "*** Deleting a branch is not allowed in this repository" >&2 - exit 1 - fi - ;; - refs/remotes/*,commit) - # tracking branch - ;; - refs/remotes/*,delete) - # delete tracking branch - if [ "$allowdeletebranch" != "true" ]; then - echo "*** Deleting a tracking branch is not allowed in this repository" >&2 - exit 1 - fi - ;; - *) - # Anything else (is there anything else?) - echo "*** Update hook: unknown type of update to ref $refname of type $newrev_type" >&2 - exit 1 - ;; -esac - -# --- Finished -exit 0