From 1fb43fc57446cf7b4d33202d2605139aa0d88fc8 Mon Sep 17 00:00:00 2001 From: Pawel Galazka Date: Sun, 20 Aug 2017 17:57:10 +1000 Subject: [PATCH 01/41] Removing log option from run command --- README.md | 1 - lib/index.js | 5 +-- test/babel-sandbox/yarn.lock | 63 ++++-------------------------------- test/index.test.js | 12 ------- 4 files changed, 7 insertions(+), 74 deletions(-) diff --git a/README.md b/README.md index c60af6b..77a2ce5 100644 --- a/README.md +++ b/README.md @@ -141,7 +141,6 @@ run given command as a child process and log the call in the output. async: ... // run command asynchronously (true/false), false by default stdio: ... // 'inherit' (default), 'pipe' or 'ignore' env: ... // environment key-value pairs (Object) - log: ... // log command to console (true/false), true by default timeout: ... } ``` diff --git a/lib/index.js b/lib/index.js index a13a2e4..383a020 100644 --- a/lib/index.js +++ b/lib/index.js @@ -50,7 +50,6 @@ function runAsync (command, options) { function run (command, options = {}, logger = loggerAlias) { const binPath = path.resolve('./node_modules/.bin') - const shouldLog = options.log !== false // Pick relevant option keys and set default values options = { @@ -65,9 +64,7 @@ function run (command, options = {}, logger = loggerAlias) { // Include in PATH node_modules bin path options.env.PATH = [binPath, options.env.PATH || process.env.PATH].join(path.delimiter) - if (shouldLog) { - logger.info(command) - } + logger.info(command) // Handle async call if (options.async) { diff --git a/test/babel-sandbox/yarn.lock b/test/babel-sandbox/yarn.lock index 1e0cfe2..f6fd729 100644 --- a/test/babel-sandbox/yarn.lock +++ b/test/babel-sandbox/yarn.lock @@ -18,7 +18,7 @@ babel-code-frame@^6.16.0, babel-code-frame@^6.22.0: esutils "^2.0.2" js-tokens "^3.0.0" -babel-core@6.16.0: +babel-core@6.16.0, babel-core@^6.16.0: version "6.16.0" resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.16.0.tgz#cf8bbfdf0097c4146195d80d9ec96d73acf387d5" dependencies: @@ -44,31 +44,7 @@ babel-core@6.16.0: slash "^1.0.0" source-map "^0.5.0" -babel-core@^6.16.0, babel-core@^6.24.1: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.25.0.tgz#7dd42b0463c742e9d5296deb3ec67a9322dad729" - dependencies: - babel-code-frame "^6.22.0" - babel-generator "^6.25.0" - babel-helpers "^6.24.1" - babel-messages "^6.23.0" - babel-register "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.25.0" - babel-traverse "^6.25.0" - babel-types "^6.25.0" - babylon "^6.17.2" - convert-source-map "^1.1.0" - debug "^2.1.1" - json5 "^0.5.0" - lodash "^4.2.0" - minimatch "^3.0.2" - path-is-absolute "^1.0.0" - private "^0.1.6" - slash "^1.0.0" - source-map "^0.5.0" - -babel-generator@^6.16.0, babel-generator@^6.25.0: +babel-generator@^6.16.0: version "6.25.0" resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.25.0.tgz#33a1af70d5f2890aeb465a4a7793c1df6a9ea9fc" dependencies: @@ -159,7 +135,7 @@ babel-helper-replace-supers@^6.24.1: babel-traverse "^6.24.1" babel-types "^6.24.1" -babel-helpers@^6.16.0, babel-helpers@^6.24.1: +babel-helpers@^6.16.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" dependencies: @@ -419,7 +395,7 @@ babel-preset-es2017@6.24.1: babel-plugin-syntax-trailing-function-commas "^6.22.0" babel-plugin-transform-async-to-generator "^6.24.1" -babel-register@6.16.3: +babel-register@6.16.3, babel-register@^6.16.0: version "6.16.3" resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.16.3.tgz#7b0c0ca7bfdeb9188ba4c27e5fcb7599a497c624" dependencies: @@ -432,18 +408,6 @@ babel-register@6.16.3: path-exists "^1.0.0" source-map-support "^0.4.2" -babel-register@^6.16.0, babel-register@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.24.1.tgz#7e10e13a2f71065bdfad5a1787ba45bca6ded75f" - dependencies: - babel-core "^6.24.1" - babel-runtime "^6.22.0" - core-js "^2.4.0" - home-or-tmp "^2.0.0" - lodash "^4.2.0" - mkdirp "^0.5.1" - source-map-support "^0.4.2" - babel-runtime@^6.11.6, babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.9.1: version "6.25.0" resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.25.0.tgz#33b98eaa5d482bb01a8d1aa6b437ad2b01aec41c" @@ -451,7 +415,7 @@ babel-runtime@^6.11.6, babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runti core-js "^2.4.0" regenerator-runtime "^0.10.0" -babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.25.0: +babel-template@^6.16.0, babel-template@^6.24.1: version "6.25.0" resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.25.0.tgz#665241166b7c2aa4c619d71e192969552b10c071" dependencies: @@ -562,13 +526,6 @@ home-or-tmp@^1.0.0: os-tmpdir "^1.0.1" user-home "^1.1.1" -home-or-tmp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.1" - invariant@^2.2.0: version "2.2.2" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" @@ -597,10 +554,6 @@ json5@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/json5/-/json5-0.4.0.tgz#054352e4c4c80c86c0923877d449de176a732c8d" -json5@^0.5.0: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - lodash@^4.2.0: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" @@ -635,10 +588,6 @@ number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - os-tmpdir@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" @@ -696,7 +645,7 @@ repeating@^2.0.0: is-finite "^1.0.0" "runjs@file:../../": - version "4.0.0-beta.1" + version "4.0.1" dependencies: chalk "1.1.3" get-parameter-names "0.3.0" diff --git a/test/index.test.js b/test/index.test.js index 1153980..a0c4333 100644 --- a/test/index.test.js +++ b/test/index.test.js @@ -36,11 +36,6 @@ describe('api', () => { const output = api.run('echo $RUNJS_TEST', {stdio: 'pipe'}, logger) expect(output).toEqual('runjs test\n') }) - - it('should not log command if "log" option has "false"', () => { - api.run('echo "echo test"', {stdio: 'pipe', log: false}, logger) - expect(logger.info).not.toHaveBeenCalled() - }) }) describe('with stdio=inherit', () => { @@ -75,13 +70,6 @@ describe('api', () => { done() }) }) - - it('should not log command if "log" option has "false"', (done) => { - api.run('echo "echo test"', {async: true, stdio: 'pipe', log: false}, logger).then(() => { - expect(logger.info).not.toHaveBeenCalled() - done() - }) - }) }) describe('with stdio=inherit', () => { From dbe480f26f4859e8ce9cdeae57aaea5f29d3734f Mon Sep 17 00:00:00 2001 From: Pawel Galazka Date: Sun, 20 Aug 2017 18:01:58 +1000 Subject: [PATCH 02/41] Upgrading jest --- package.json | 5 +- yarn.lock | 753 ++++++++++++++++++++++----------------------------- 2 files changed, 330 insertions(+), 428 deletions(-) diff --git a/package.json b/package.json index 042d5f7..7317376 100644 --- a/package.json +++ b/package.json @@ -42,11 +42,14 @@ "eslint-config-standard": "6.2.0", "eslint-plugin-promise": "2.0.1", "eslint-plugin-standard": "2.0.1", - "jest": "16.0.2" + "jest": "20.0.4" }, "eslintConfig": { "extends": [ "eslint-config-standard" ] + }, + "jest": { + "testEnvironment": "node" } } diff --git a/yarn.lock b/yarn.lock index 7b0bdc7..2d30138 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6,14 +6,6 @@ abab@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.3.tgz#b81de5f7274ec4e756d797cd834f303642724e5d" -abbrev@1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" - -abbrev@1.0.x: - version "1.0.9" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135" - acorn-globals@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-3.1.0.tgz#fd8270f71fbb4996b004fa880ee5d46573a731bf" @@ -65,7 +57,7 @@ ansi-escapes@^1.1.0, ansi-escapes@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" -ansi-regex@^2.0.0: +ansi-regex@^2.0.0, ansi-regex@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" @@ -77,9 +69,18 @@ ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" -ansicolors@~0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/ansicolors/-/ansicolors-0.2.1.tgz#be089599097b74a5c9c4a84a0cdbcdb62bd87aef" +ansi-styles@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" + dependencies: + color-convert "^1.9.0" + +anymatch@^1.3.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a" + dependencies: + micromatch "^2.1.5" + normalize-path "^2.0.0" append-transform@^0.4.0: version "0.4.0" @@ -103,10 +104,6 @@ arr-flatten@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" -array-differ@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" - array-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" @@ -141,7 +138,7 @@ assert-plus@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" -async@1.x, async@^1.4.0: +async@^1.4.0: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" @@ -171,7 +168,7 @@ babel-code-frame@^6.22.0: esutils "^2.0.2" js-tokens "^3.0.0" -babel-core@^6.0.0, babel-core@^6.11.4, babel-core@^6.24.1: +babel-core@^6.0.0, babel-core@^6.24.1: version "6.25.0" resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.25.0.tgz#7dd42b0463c742e9d5296deb3ec67a9322dad729" dependencies: @@ -215,13 +212,13 @@ babel-helpers@^6.24.1: babel-runtime "^6.22.0" babel-template "^6.24.1" -babel-jest@^16.0.0: - version "16.0.0" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-16.0.0.tgz#348729aea6d624a4774b8a934d07a40dd2cfd640" +babel-jest@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-20.0.3.tgz#e4a03b13dc10389e140fc645d09ffc4ced301671" dependencies: babel-core "^6.0.0" - babel-plugin-istanbul "^2.0.0" - babel-preset-jest "^16.0.0" + babel-plugin-istanbul "^4.0.0" + babel-preset-jest "^20.0.3" babel-messages@^6.23.0: version "6.23.0" @@ -229,24 +226,23 @@ babel-messages@^6.23.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-istanbul@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-2.0.3.tgz#266b304b9109607d60748474394676982f660df4" +babel-plugin-istanbul@^4.0.0: + version "4.1.4" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.4.tgz#18dde84bf3ce329fddf3f4103fae921456d8e587" dependencies: - find-up "^1.1.2" - istanbul-lib-instrument "^1.1.4" - object-assign "^4.1.0" - test-exclude "^2.1.1" + find-up "^2.1.0" + istanbul-lib-instrument "^1.7.2" + test-exclude "^4.1.1" -babel-plugin-jest-hoist@^16.0.0: - version "16.0.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-16.0.0.tgz#b58ca3f770982a7e7c25b5614b2e57e9dafc6e76" +babel-plugin-jest-hoist@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-20.0.3.tgz#afedc853bd3f8dc3548ea671fbe69d03cc2c1767" -babel-preset-jest@^16.0.0: - version "16.0.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-16.0.0.tgz#417aabc2d7d93170f43c20ef1ea0145e8f7f2db5" +babel-preset-jest@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-20.0.3.tgz#cbacaadecb5d689ca1e1de1360ebfc66862c178a" dependencies: - babel-plugin-jest-hoist "^16.0.0" + babel-plugin-jest-hoist "^20.0.3" babel-register@^6.24.1: version "6.24.1" @@ -347,6 +343,12 @@ bser@1.0.2: dependencies: node-int64 "^0.4.0" +bser@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719" + dependencies: + node-int64 "^0.4.0" + builtin-modules@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" @@ -373,13 +375,6 @@ camelcase@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" -cardinal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/cardinal/-/cardinal-1.0.0.tgz#50e21c1b0aa37729f9377def196b5a9cec932ee9" - dependencies: - ansicolors "~0.2.1" - redeyed "~1.0.0" - caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" @@ -415,19 +410,6 @@ cli-cursor@^1.0.1: dependencies: restore-cursor "^1.0.1" -cli-table@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cli-table/-/cli-table-0.3.1.tgz#f53b05266a8b1a0b934b3d0821e6e2dc5914ae23" - dependencies: - colors "1.0.3" - -cli-usage@^0.1.1: - version "0.1.4" - resolved "https://registry.yarnpkg.com/cli-usage/-/cli-usage-0.1.4.tgz#7c01e0dc706c234b39c933838c8e20b2175776e2" - dependencies: - marked "^0.3.6" - marked-terminal "^1.6.2" - cli-width@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.1.0.tgz#b234ca209b29ef66fc518d9b98d5847b00edf00a" @@ -456,9 +438,15 @@ code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" -colors@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" +color-convert@^1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.0.tgz#1accf97dd739b983bf994d56fec8f95853641b7a" + dependencies: + color-name "^1.1.1" + +color-name@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" combined-stream@^1.0.5, combined-stream@~1.0.5: version "1.0.5" @@ -482,7 +470,7 @@ content-type-parser@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.1.tgz#c3e56988c53c65127fb46d4032a3a900246fdc94" -convert-source-map@^1.1.0: +convert-source-map@^1.1.0, convert-source-map@^1.4.0: version "1.5.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" @@ -564,7 +552,7 @@ detect-indent@^4.0.0: dependencies: repeating "^2.0.0" -diff@^3.0.0: +diff@^3.2.0: version "3.3.0" resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.0.tgz#056695150d7aa93237ca7e378ac3b1682b7963b9" @@ -649,7 +637,7 @@ escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" -escodegen@1.8.x, escodegen@^1.6.1: +escodegen@^1.6.1: version "1.8.1" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.8.1.tgz#5a5b53af4693110bebb0867aa3430dd3b70a1018" dependencies: @@ -726,7 +714,7 @@ espree@^3.3.1: acorn "^5.1.1" acorn-jsx "^3.0.0" -esprima@2.7.x, esprima@^2.7.1: +esprima@^2.7.1: version "2.7.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" @@ -734,10 +722,6 @@ esprima@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" -esprima@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.0.0.tgz#53cf247acda77313e551c3aa2e73342d3fb4f7d9" - esrecurse@^4.1.0: version "4.2.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.0.tgz#fa9568d98d3823f9a41d91e902dcab9ea6e5b163" @@ -804,12 +788,18 @@ fast-levenshtein@~2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" -fb-watchman@^1.8.0, fb-watchman@^1.9.0: +fb-watchman@^1.8.0: version "1.9.2" resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-1.9.2.tgz#a24cf47827f82d38fb59a69ad70b76e3b6ae7383" dependencies: bser "1.0.2" +fb-watchman@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.0.tgz#54e9abf7dfa2f26cd9b1636c588c1afc05de5d58" + dependencies: + bser "^2.0.0" + figures@^1.3.5: version "1.7.0" resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" @@ -845,13 +835,19 @@ fill-range@^2.1.0: repeat-element "^1.1.2" repeat-string "^1.5.2" -find-up@^1.0.0, find-up@^1.1.2: +find-up@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" dependencies: path-exists "^2.0.0" pinkie-promise "^2.0.0" +find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + dependencies: + locate-path "^2.0.0" + flat-cache@^1.2.1: version "1.2.2" resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.2.2.tgz#fa86714e72c21db88601761ecf2f555d1abc6b96" @@ -924,17 +920,7 @@ glob-parent@^2.0.0: dependencies: is-glob "^2.0.0" -glob@^5.0.15: - version "5.0.15" - resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" - dependencies: - inflight "^1.0.4" - inherits "2" - minimatch "2 || 3" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@^7.0.3, glob@^7.0.5: +glob@^7.0.3, glob@^7.0.5, glob@^7.1.1: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" dependencies: @@ -960,15 +946,15 @@ globby@^5.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" -graceful-fs@^4.1.2, graceful-fs@^4.1.6: +graceful-fs@^4.1.11, graceful-fs@^4.1.2: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" -growly@^1.2.0: +growly@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" -handlebars@^4.0.1, handlebars@^4.0.3: +handlebars@^4.0.3: version "4.0.10" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.10.tgz#3d30c718b09a3d96f23ea4cc1f403c4d3ba9ff4f" dependencies: @@ -1102,7 +1088,7 @@ is-builtin-module@^1.0.0: dependencies: builtin-modules "^1.0.0" -is-ci@^1.0.9: +is-ci@^1.0.10: version "1.0.10" resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.0.10.tgz#f739336b2632365061a9d48270cd56ae3369318e" dependencies: @@ -1229,7 +1215,7 @@ isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" -istanbul-api@^1.0.0-aplha.10: +istanbul-api@^1.1.1: version "1.1.11" resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.1.11.tgz#fcc0b461e2b3bda71e305155138238768257d9de" dependencies: @@ -1245,7 +1231,7 @@ istanbul-api@^1.0.0-aplha.10: mkdirp "^0.5.1" once "^1.4.0" -istanbul-lib-coverage@^1.0.0, istanbul-lib-coverage@^1.1.1: +istanbul-lib-coverage@^1.0.1, istanbul-lib-coverage@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.1.1.tgz#73bfb998885299415c93d38a3e9adf784a77a9da" @@ -1255,7 +1241,7 @@ istanbul-lib-hook@^1.0.7: dependencies: append-transform "^0.4.0" -istanbul-lib-instrument@^1.1.1, istanbul-lib-instrument@^1.1.4, istanbul-lib-instrument@^1.7.4: +istanbul-lib-instrument@^1.4.2, istanbul-lib-instrument@^1.7.2, istanbul-lib-instrument@^1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.7.4.tgz#e9fd920e4767f3d19edc765e2d6b3f5ccbd0eea8" dependencies: @@ -1276,7 +1262,7 @@ istanbul-lib-report@^1.1.1: path-parse "^1.0.5" supports-color "^3.1.2" -istanbul-lib-source-maps@^1.2.1: +istanbul-lib-source-maps@^1.1.0, istanbul-lib-source-maps@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.1.tgz#a6fe1acba8ce08eebc638e572e294d267008aa0c" dependencies: @@ -1292,217 +1278,222 @@ istanbul-reports@^1.1.1: dependencies: handlebars "^4.0.3" -istanbul@^0.4.5: - version "0.4.5" - resolved "https://registry.yarnpkg.com/istanbul/-/istanbul-0.4.5.tgz#65c7d73d4c4da84d4f3ac310b918fb0b8033733b" - dependencies: - abbrev "1.0.x" - async "1.x" - escodegen "1.8.x" - esprima "2.7.x" - glob "^5.0.15" - handlebars "^4.0.1" - js-yaml "3.x" - mkdirp "0.5.x" - nopt "3.x" - once "1.x" - resolve "1.1.x" - supports-color "^3.1.0" - which "^1.1.1" - wordwrap "^1.0.0" - -jasmine-check@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/jasmine-check/-/jasmine-check-0.1.5.tgz#dbad7eec56261c4b3d175ada55fe59b09ac9e415" - dependencies: - testcheck "^0.1.0" - -jest-changed-files@^16.0.0: - version "16.0.0" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-16.0.0.tgz#7931deff4424182b8173d80e06800d7363b19c45" +jest-changed-files@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-20.0.3.tgz#9394d5cc65c438406149bef1bf4d52b68e03e3f8" -jest-cli@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-16.0.2.tgz#d439b28affa7189aa3d046d2af931f7ebb9af69d" +jest-cli@^20.0.4: + version "20.0.4" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-20.0.4.tgz#e532b19d88ae5bc6c417e8b0593a6fe954b1dc93" dependencies: ansi-escapes "^1.4.0" callsites "^2.0.0" - chalk "^1.1.1" - graceful-fs "^4.1.6" - is-ci "^1.0.9" - istanbul-api "^1.0.0-aplha.10" - istanbul-lib-coverage "^1.0.0" - istanbul-lib-instrument "^1.1.1" - jest-changed-files "^16.0.0" - jest-config "^16.0.2" - jest-environment-jsdom "^16.0.2" - jest-file-exists "^15.0.0" - jest-haste-map "^16.0.2" - jest-jasmine2 "^16.0.2" - jest-mock "^16.0.2" - jest-resolve "^16.0.2" - jest-resolve-dependencies "^16.0.2" - jest-runtime "^16.0.2" - jest-snapshot "^16.0.2" - jest-util "^16.0.2" - json-stable-stringify "^1.0.0" - node-notifier "^4.6.1" - sane "~1.4.1" - strip-ansi "^3.0.1" + chalk "^1.1.3" + graceful-fs "^4.1.11" + is-ci "^1.0.10" + istanbul-api "^1.1.1" + istanbul-lib-coverage "^1.0.1" + istanbul-lib-instrument "^1.4.2" + istanbul-lib-source-maps "^1.1.0" + jest-changed-files "^20.0.3" + jest-config "^20.0.4" + jest-docblock "^20.0.3" + jest-environment-jsdom "^20.0.3" + jest-haste-map "^20.0.4" + jest-jasmine2 "^20.0.4" + jest-message-util "^20.0.3" + jest-regex-util "^20.0.3" + jest-resolve-dependencies "^20.0.3" + jest-runtime "^20.0.4" + jest-snapshot "^20.0.3" + jest-util "^20.0.3" + micromatch "^2.3.11" + node-notifier "^5.0.2" + pify "^2.3.0" + slash "^1.0.0" + string-length "^1.0.1" throat "^3.0.0" - which "^1.1.1" + which "^1.2.12" worker-farm "^1.3.1" - yargs "^5.0.0" + yargs "^7.0.2" -jest-config@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-16.0.2.tgz#8e82a9c08846f23dc7fd42b5c0a1f596c385772a" +jest-config@^20.0.4: + version "20.0.4" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-20.0.4.tgz#e37930ab2217c913605eff13e7bd763ec48faeea" dependencies: - chalk "^1.1.1" - istanbul "^0.4.5" - jest-environment-jsdom "^16.0.2" - jest-environment-node "^16.0.2" - jest-jasmine2 "^16.0.2" - jest-mock "^16.0.2" - jest-resolve "^16.0.2" - jest-util "^16.0.2" - json-stable-stringify "^1.0.0" - -jest-diff@^16.0.0: - version "16.0.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-16.0.0.tgz#4a5d13b1e36c5b8020d5d9e69639e486a675ce14" + chalk "^1.1.3" + glob "^7.1.1" + jest-environment-jsdom "^20.0.3" + jest-environment-node "^20.0.3" + jest-jasmine2 "^20.0.4" + jest-matcher-utils "^20.0.3" + jest-regex-util "^20.0.3" + jest-resolve "^20.0.4" + jest-validate "^20.0.3" + pretty-format "^20.0.3" + +jest-diff@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-20.0.3.tgz#81f288fd9e675f0fb23c75f1c2b19445fe586617" dependencies: chalk "^1.1.3" - diff "^3.0.0" - jest-matcher-utils "^16.0.0" - pretty-format "~4.2.1" + diff "^3.2.0" + jest-matcher-utils "^20.0.3" + pretty-format "^20.0.3" -jest-environment-jsdom@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-16.0.2.tgz#548d883b68f8ed0bd6466d8703986296724c1ef7" - dependencies: - jest-mock "^16.0.2" - jest-util "^16.0.2" - jsdom "^9.8.0" +jest-docblock@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-20.0.3.tgz#17bea984342cc33d83c50fbe1545ea0efaa44712" -jest-environment-node@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-16.0.2.tgz#eb7b3a4a9c63b728ce023828d4b5661aad8c7a08" +jest-environment-jsdom@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-20.0.3.tgz#048a8ac12ee225f7190417713834bb999787de99" dependencies: - jest-mock "^16.0.2" - jest-util "^16.0.2" + jest-mock "^20.0.3" + jest-util "^20.0.3" + jsdom "^9.12.0" -jest-file-exists@^15.0.0: - version "15.0.0" - resolved "https://registry.yarnpkg.com/jest-file-exists/-/jest-file-exists-15.0.0.tgz#b7fefdd3f4b227cb686bb156ecc7661ee6935a88" +jest-environment-node@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-20.0.3.tgz#d488bc4612af2c246e986e8ae7671a099163d403" + dependencies: + jest-mock "^20.0.3" + jest-util "^20.0.3" -jest-haste-map@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-16.0.2.tgz#4562915b25171ae2d0d75118c992f0e97536a2ed" +jest-haste-map@^20.0.4: + version "20.0.5" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-20.0.5.tgz#abad74efb1a005974a7b6517e11010709cab9112" dependencies: - fb-watchman "^1.9.0" - graceful-fs "^4.1.6" - multimatch "^2.1.0" + fb-watchman "^2.0.0" + graceful-fs "^4.1.11" + jest-docblock "^20.0.3" + micromatch "^2.3.11" + sane "~1.6.0" worker-farm "^1.3.1" -jest-jasmine2@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-16.0.2.tgz#c91ae170d127aae22180dbfe181d77655a5da8c3" +jest-jasmine2@^20.0.4: + version "20.0.4" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-20.0.4.tgz#fcc5b1411780d911d042902ef1859e852e60d5e1" dependencies: - graceful-fs "^4.1.6" - jasmine-check "^0.1.4" - jest-matchers "^16.0.2" - jest-snapshot "^16.0.2" - jest-util "^16.0.2" + chalk "^1.1.3" + graceful-fs "^4.1.11" + jest-diff "^20.0.3" + jest-matcher-utils "^20.0.3" + jest-matchers "^20.0.3" + jest-message-util "^20.0.3" + jest-snapshot "^20.0.3" + once "^1.4.0" + p-map "^1.1.1" -jest-matcher-utils@^16.0.0: - version "16.0.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-16.0.0.tgz#705af3ff85944bec1c25bc813f427aff8642b0cd" +jest-matcher-utils@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-20.0.3.tgz#b3a6b8e37ca577803b0832a98b164f44b7815612" dependencies: chalk "^1.1.3" - pretty-format "~4.2.1" + pretty-format "^20.0.3" + +jest-matchers@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jest-matchers/-/jest-matchers-20.0.3.tgz#ca69db1c32db5a6f707fa5e0401abb55700dfd60" + dependencies: + jest-diff "^20.0.3" + jest-matcher-utils "^20.0.3" + jest-message-util "^20.0.3" + jest-regex-util "^20.0.3" -jest-matchers@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/jest-matchers/-/jest-matchers-16.0.2.tgz#c078c28cfe05b9b1f295f9ab27b5991f1095bbbf" +jest-message-util@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-20.0.3.tgz#6aec2844306fcb0e6e74d5796c1006d96fdd831c" dependencies: - jest-diff "^16.0.0" - jest-matcher-utils "^16.0.0" - jest-util "^16.0.2" + chalk "^1.1.3" + micromatch "^2.3.11" + slash "^1.0.0" -jest-mock@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-16.0.2.tgz#97b533343295d0082e9474a73ac4eb474d1636fe" +jest-mock@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-20.0.3.tgz#8bc070e90414aa155c11a8d64c869a0d5c71da59" -jest-resolve-dependencies@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-16.0.2.tgz#b204166d50141469d10667dc216239c0be865729" +jest-regex-util@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-20.0.3.tgz#85bbab5d133e44625b19faf8c6aa5122d085d762" + +jest-resolve-dependencies@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-20.0.3.tgz#6e14a7b717af0f2cb3667c549de40af017b1723a" dependencies: - jest-file-exists "^15.0.0" - jest-resolve "^16.0.2" + jest-regex-util "^20.0.3" -jest-resolve@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-16.0.2.tgz#46b92b9c2a44aa7ddd9a6b73dc234e9503e8c609" +jest-resolve@^20.0.4: + version "20.0.4" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-20.0.4.tgz#9448b3e8b6bafc15479444c6499045b7ffe597a5" dependencies: browser-resolve "^1.11.2" - jest-file-exists "^15.0.0" - jest-haste-map "^16.0.2" - resolve "^1.1.6" + is-builtin-module "^1.0.0" + resolve "^1.3.2" -jest-runtime@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-16.0.2.tgz#a741e8d55a7b5f011bbe17a22c673a83d278a45d" +jest-runtime@^20.0.4: + version "20.0.4" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-20.0.4.tgz#a2c802219c4203f754df1404e490186169d124d8" dependencies: - babel-core "^6.11.4" - babel-jest "^16.0.0" - babel-plugin-istanbul "^2.0.0" + babel-core "^6.0.0" + babel-jest "^20.0.3" + babel-plugin-istanbul "^4.0.0" chalk "^1.1.3" - graceful-fs "^4.1.6" - jest-config "^16.0.2" - jest-file-exists "^15.0.0" - jest-haste-map "^16.0.2" - jest-mock "^16.0.2" - jest-resolve "^16.0.2" - jest-snapshot "^16.0.2" - jest-util "^16.0.2" - json-stable-stringify "^1.0.0" - multimatch "^2.1.0" - yargs "^5.0.0" + convert-source-map "^1.4.0" + graceful-fs "^4.1.11" + jest-config "^20.0.4" + jest-haste-map "^20.0.4" + jest-regex-util "^20.0.3" + jest-resolve "^20.0.4" + jest-util "^20.0.3" + json-stable-stringify "^1.0.1" + micromatch "^2.3.11" + strip-bom "3.0.0" + yargs "^7.0.2" -jest-snapshot@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-16.0.2.tgz#f137a4176d661bd4058910850191d1816bebdaae" +jest-snapshot@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-20.0.3.tgz#5b847e1adb1a4d90852a7f9f125086e187c76566" dependencies: - jest-diff "^16.0.0" - jest-file-exists "^15.0.0" - jest-matcher-utils "^16.0.0" - jest-util "^16.0.2" + chalk "^1.1.3" + jest-diff "^20.0.3" + jest-matcher-utils "^20.0.3" + jest-util "^20.0.3" natural-compare "^1.4.0" - pretty-format "~4.2.1" + pretty-format "^20.0.3" -jest-util@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-16.0.2.tgz#db5123358278e7a34a6d9f837409d649a0db5d54" +jest-util@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-20.0.3.tgz#0c07f7d80d82f4e5a67c6f8b9c3fe7f65cfd32ad" dependencies: - chalk "^1.1.1" - diff "^3.0.0" - graceful-fs "^4.1.6" - jest-file-exists "^15.0.0" - jest-mock "^16.0.2" + chalk "^1.1.3" + graceful-fs "^4.1.11" + jest-message-util "^20.0.3" + jest-mock "^20.0.3" + jest-validate "^20.0.3" + leven "^2.1.0" mkdirp "^0.5.1" -jest@16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/jest/-/jest-16.0.2.tgz#4a2f7f3527465168a0bafe0c3d55055188253f3a" +jest-validate@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-20.0.3.tgz#d0cfd1de4f579f298484925c280f8f1d94ec3cab" dependencies: - jest-cli "^16.0.2" + chalk "^1.1.3" + jest-matcher-utils "^20.0.3" + leven "^2.1.0" + pretty-format "^20.0.3" + +jest@^20.0.4: + version "20.0.4" + resolved "https://registry.yarnpkg.com/jest/-/jest-20.0.4.tgz#3dd260c2989d6dad678b1e9cc4d91944f6d602ac" + dependencies: + jest-cli "^20.0.4" js-tokens@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" -js-yaml@3.x, js-yaml@^3.5.1, js-yaml@^3.7.0: +js-yaml@^3.5.1, js-yaml@^3.7.0: version "3.9.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.9.1.tgz#08775cebdfdd359209f0d2acd383c8f86a6904a0" dependencies: @@ -1513,7 +1504,7 @@ jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" -jsdom@^9.8.0: +jsdom@^9.12.0: version "9.12.0" resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-9.12.0.tgz#e8c546fffcb06c00d4833ca84410fed7f8a097d4" dependencies: @@ -1598,6 +1589,10 @@ lcid@^1.0.0: dependencies: invert-kv "^1.0.0" +leven@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" + levn@^0.3.0, levn@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" @@ -1615,78 +1610,12 @@ load-json-file@^1.0.0: pinkie-promise "^2.0.0" strip-bom "^2.0.0" -lodash._arraycopy@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._arraycopy/-/lodash._arraycopy-3.0.0.tgz#76e7b7c1f1fb92547374878a562ed06a3e50f6e1" - -lodash._arrayeach@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._arrayeach/-/lodash._arrayeach-3.0.0.tgz#bab156b2a90d3f1bbd5c653403349e5e5933ef9e" - -lodash._baseassign@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" - dependencies: - lodash._basecopy "^3.0.0" - lodash.keys "^3.0.0" - -lodash._baseclone@^3.0.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/lodash._baseclone/-/lodash._baseclone-3.3.0.tgz#303519bf6393fe7e42f34d8b630ef7794e3542b7" - dependencies: - lodash._arraycopy "^3.0.0" - lodash._arrayeach "^3.0.0" - lodash._baseassign "^3.0.0" - lodash._basefor "^3.0.0" - lodash.isarray "^3.0.0" - lodash.keys "^3.0.0" - -lodash._basecopy@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" - -lodash._basefor@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/lodash._basefor/-/lodash._basefor-3.0.3.tgz#7550b4e9218ef09fad24343b612021c79b4c20c2" - -lodash._bindcallback@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz#e531c27644cf8b57a99e17ed95b35c748789392e" - -lodash._getnative@^3.0.0: - version "3.9.1" - resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" - -lodash.assign@^4.1.0, lodash.assign@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" - -lodash.clonedeep@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-3.0.2.tgz#a0a1e40d82a5ea89ff5b147b8444ed63d92827db" - dependencies: - lodash._baseclone "^3.0.0" - lodash._bindcallback "^3.0.0" - -lodash.isarguments@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" - -lodash.isarray@^3.0.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" - -lodash.keys@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" dependencies: - lodash._getnative "^3.0.0" - lodash.isarguments "^3.0.0" - lodash.isarray "^3.0.0" - -lodash.toarray@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.toarray/-/lodash.toarray-4.4.0.tgz#24c4bfcd6b2fba38bfd0594db1179d8e9b656561" + p-locate "^2.0.0" + path-exists "^3.0.0" lodash@^4.0.0, lodash@^4.14.0, lodash@^4.2.0, lodash@^4.3.0: version "4.17.4" @@ -1708,25 +1637,11 @@ makeerror@1.0.x: dependencies: tmpl "1.0.x" -marked-terminal@^1.6.2: - version "1.7.0" - resolved "https://registry.yarnpkg.com/marked-terminal/-/marked-terminal-1.7.0.tgz#c8c460881c772c7604b64367007ee5f77f125904" - dependencies: - cardinal "^1.0.0" - chalk "^1.1.3" - cli-table "^0.3.1" - lodash.assign "^4.2.0" - node-emoji "^1.4.1" - -marked@^0.3.6: - version "0.3.6" - resolved "https://registry.yarnpkg.com/marked/-/marked-0.3.6.tgz#b2c6c618fccece4ef86c4fc6cb8a7cbf5aeda8d7" - merge@^1.1.3: version "1.2.0" resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da" -micromatch@^2.3.11: +micromatch@^2.1.5, micromatch@^2.3.11: version "2.3.11" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" dependencies: @@ -1754,13 +1669,13 @@ mime-types@^2.1.12, mime-types@~2.1.7: dependencies: mime-db "~1.29.0" -"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: +minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" dependencies: brace-expansion "^1.1.7" -minimist@0.0.8: +minimist@0.0.8, minimist@~0.0.1: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" @@ -1768,11 +1683,7 @@ minimist@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" -minimist@~0.0.1: - version "0.0.10" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" - -mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1: +mkdirp@^0.5.0, mkdirp@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: @@ -1782,15 +1693,6 @@ ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" -multimatch@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-2.1.0.tgz#9c7906a22fb4c02919e2f5f75161b4cdbd4b2a2b" - dependencies: - array-differ "^1.0.0" - array-union "^1.0.1" - arrify "^1.0.0" - minimatch "^3.0.0" - mute-stream@0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0" @@ -1799,33 +1701,18 @@ natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" -node-emoji@^1.4.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-1.8.1.tgz#6eec6bfb07421e2148c75c6bba72421f8530a826" - dependencies: - lodash.toarray "^4.4.0" - node-int64@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" -node-notifier@^4.6.1: - version "4.6.1" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-4.6.1.tgz#056d14244f3dcc1ceadfe68af9cff0c5473a33f3" +node-notifier@^5.0.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.1.2.tgz#2fa9e12605fa10009d44549d6fcd8a63dde0e4ff" dependencies: - cli-usage "^0.1.1" - growly "^1.2.0" - lodash.clonedeep "^3.0.0" - minimist "^1.1.1" - semver "^5.1.0" + growly "^1.3.0" + semver "^5.3.0" shellwords "^0.1.0" - which "^1.0.5" - -nopt@3.x: - version "3.0.6" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" - dependencies: - abbrev "1" + which "^1.2.12" normalize-package-data@^2.3.2: version "2.4.0" @@ -1836,7 +1723,7 @@ normalize-package-data@^2.3.2: semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-path@^2.0.1: +normalize-path@^2.0.0, normalize-path@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" dependencies: @@ -1865,7 +1752,7 @@ object.omit@^2.0.0: for-own "^0.1.4" is-extendable "^0.1.1" -once@1.x, once@^1.3.0, once@^1.4.0: +once@^1.3.0, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" dependencies: @@ -1907,6 +1794,20 @@ os-tmpdir@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" +p-limit@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + dependencies: + p-limit "^1.1.0" + +p-map@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.1.1.tgz#05f5e4ae97a068371bc2a5cc86bfbdbc19c4ae7a" + parse-glob@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" @@ -1932,6 +1833,10 @@ path-exists@^2.0.0: dependencies: pinkie-promise "^2.0.0" +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" @@ -1956,7 +1861,7 @@ performance-now@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" -pify@^2.0.0: +pify@^2.0.0, pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -1982,9 +1887,12 @@ preserve@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" -pretty-format@~4.2.1: - version "4.2.3" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-4.2.3.tgz#8894c2ac81419cf801629d8f66320a25380d8b05" +pretty-format@^20.0.3: + version "20.0.3" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-20.0.3.tgz#020e350a560a1fe1a98dc3beb6ccffb386de8b14" + dependencies: + ansi-regex "^2.1.1" + ansi-styles "^3.0.0" private@^0.1.6: version "0.1.7" @@ -2052,12 +1960,6 @@ readline2@^1.0.1: is-fullwidth-code-point "^1.0.0" mute-stream "0.0.5" -redeyed@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/redeyed/-/redeyed-1.0.1.tgz#e96c193b40c0816b00aec842698e61185e55498a" - dependencies: - esprima "~3.0.0" - regenerator-runtime@^0.10.0: version "0.10.5" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658" @@ -2133,11 +2035,11 @@ resolve-from@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" -resolve@1.1.7, resolve@1.1.x: +resolve@1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" -resolve@^1.1.6: +resolve@^1.3.2: version "1.4.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.4.0.tgz#a75be01c53da25d934a98ebd0e4c4a7312f92a86" dependencies: @@ -2176,10 +2078,11 @@ safe-buffer@^5.0.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" -sane@~1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/sane/-/sane-1.4.1.tgz#88f763d74040f5f0c256b6163db399bf110ac715" +sane@~1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/sane/-/sane-1.6.0.tgz#9610c452307a135d29c1fdfe2547034180c46775" dependencies: + anymatch "^1.3.0" exec-sh "^0.2.0" fb-watchman "^1.8.0" minimatch "^3.0.2" @@ -2191,7 +2094,7 @@ sax@^1.2.1: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" -"semver@2 || 3 || 4 || 5", semver@^5.1.0, semver@^5.3.0: +"semver@2 || 3 || 4 || 5", semver@^5.3.0: version "5.4.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" @@ -2275,6 +2178,12 @@ sshpk@^1.7.0: jsbn "~0.1.0" tweetnacl "~0.14.0" +string-length@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/string-length/-/string-length-1.0.1.tgz#56970fb1c38558e9e70b728bf3de269ac45adfac" + dependencies: + strip-ansi "^3.0.0" + string-width@^1.0.1, string-width@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" @@ -2312,16 +2221,16 @@ strip-ansi@^4.0.0: dependencies: ansi-regex "^3.0.0" +strip-bom@3.0.0, strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + strip-bom@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" dependencies: is-utf8 "^0.2.0" -strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - strip-json-comments@~1.0.1: version "1.0.4" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91" @@ -2330,7 +2239,7 @@ supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" -supports-color@^3.1.0, supports-color@^3.1.2: +supports-color@^3.1.2: version "3.2.3" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" dependencies: @@ -2351,9 +2260,9 @@ table@^3.7.8: slice-ansi "0.0.4" string-width "^2.0.0" -test-exclude@^2.1.1: - version "2.1.3" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-2.1.3.tgz#a8d8968e1da83266f9864f2852c55e220f06434a" +test-exclude@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.1.1.tgz#4d84964b0966b0087ecc334a2ce002d3d9341e26" dependencies: arrify "^1.0.1" micromatch "^2.3.11" @@ -2361,10 +2270,6 @@ test-exclude@^2.1.1: read-pkg-up "^1.0.1" require-main-filename "^1.0.1" -testcheck@^0.1.0: - version "0.1.4" - resolved "https://registry.yarnpkg.com/testcheck/-/testcheck-0.1.4.tgz#90056edd48d11997702616ce6716f197d8190164" - text-table@~0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" @@ -2500,7 +2405,7 @@ which-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" -which@^1.0.5, which@^1.1.1: +which@^1.2.12: version "1.3.0" resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" dependencies: @@ -2510,22 +2415,18 @@ window-size@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" -window-size@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075" - wordwrap@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" -wordwrap@^1.0.0, wordwrap@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" - wordwrap@~0.0.2: version "0.0.3" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" +wordwrap@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" + worker-farm@^1.3.1: version "1.4.1" resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.4.1.tgz#a438bc993a7a7d133bcb6547c95eca7cff4897d8" @@ -2562,21 +2463,20 @@ y18n@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" -yargs-parser@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-3.2.0.tgz#5081355d19d9d0c8c5d81ada908cb4e6d186664f" +yargs-parser@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" dependencies: camelcase "^3.0.0" - lodash.assign "^4.1.0" -yargs@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-5.0.0.tgz#3355144977d05757dbb86d6e38ec056123b3a66e" +yargs@^7.0.2: + version "7.1.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" dependencies: + camelcase "^3.0.0" cliui "^3.2.0" decamelize "^1.1.1" get-caller-file "^1.0.1" - lodash.assign "^4.2.0" os-locale "^1.4.0" read-pkg-up "^1.0.1" require-directory "^2.1.1" @@ -2584,9 +2484,8 @@ yargs@^5.0.0: set-blocking "^2.0.0" string-width "^1.0.2" which-module "^1.0.0" - window-size "^0.2.0" y18n "^3.2.1" - yargs-parser "^3.2.0" + yargs-parser "^5.0.0" yargs@~3.10.0: version "3.10.0" From 5fad1826684f2ad2287ca80490db3aeb8c1643eb Mon Sep 17 00:00:00 2001 From: Pawel Galazka Date: Sun, 20 Aug 2017 18:08:01 +1000 Subject: [PATCH 03/41] Upgrade eslint --- package.json | 10 +- yarn.lock | 769 +++++++++++++++++++++++++++++---------------------- 2 files changed, 448 insertions(+), 331 deletions(-) diff --git a/package.json b/package.json index 7317376..376715b 100644 --- a/package.json +++ b/package.json @@ -38,10 +38,12 @@ "get-parameter-names": "0.3.0" }, "devDependencies": { - "eslint": "3.6.1", - "eslint-config-standard": "6.2.0", - "eslint-plugin-promise": "2.0.1", - "eslint-plugin-standard": "2.0.1", + "eslint": "4.5.0", + "eslint-config-standard": "10.2.1", + "eslint-plugin-import": "2.7.0", + "eslint-plugin-node": "5.1.1", + "eslint-plugin-promise": "3.5.0", + "eslint-plugin-standard": "3.0.1", "jest": "20.0.4" }, "eslintConfig": { diff --git a/yarn.lock b/yarn.lock index 2d30138..ef5a0e4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -41,6 +41,15 @@ ajv@^4.7.0, ajv@^4.9.1: co "^4.6.0" json-stable-stringify "^1.0.1" +ajv@^5.2.0: + version "5.2.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.2.2.tgz#47c68d69e86f5d953103b0074a9430dc63da5e39" + dependencies: + co "^4.6.0" + fast-deep-equal "^1.0.0" + json-schema-traverse "^0.3.0" + json-stable-stringify "^1.0.1" + align-text@^0.1.1, align-text@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" @@ -53,10 +62,14 @@ amdefine@>=0.0.4: version "1.0.1" resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" -ansi-escapes@^1.1.0, ansi-escapes@^1.4.0: +ansi-escapes@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" +ansi-escapes@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-2.0.0.tgz#5bae52be424878dd9783e8910e3fc2922e83c81b" + ansi-regex@^2.0.0, ansi-regex@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" @@ -69,7 +82,7 @@ ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" -ansi-styles@^3.0.0: +ansi-styles@^3.0.0, ansi-styles@^3.1.0: version "3.2.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" dependencies: @@ -160,49 +173,49 @@ aws4@^1.2.1: version "1.6.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" -babel-code-frame@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4" +babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" dependencies: - chalk "^1.1.0" + chalk "^1.1.3" esutils "^2.0.2" - js-tokens "^3.0.0" + js-tokens "^3.0.2" -babel-core@^6.0.0, babel-core@^6.24.1: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.25.0.tgz#7dd42b0463c742e9d5296deb3ec67a9322dad729" +babel-core@^6.0.0, babel-core@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8" dependencies: - babel-code-frame "^6.22.0" - babel-generator "^6.25.0" + babel-code-frame "^6.26.0" + babel-generator "^6.26.0" babel-helpers "^6.24.1" babel-messages "^6.23.0" - babel-register "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.25.0" - babel-traverse "^6.25.0" - babel-types "^6.25.0" - babylon "^6.17.2" - convert-source-map "^1.1.0" - debug "^2.1.1" - json5 "^0.5.0" - lodash "^4.2.0" - minimatch "^3.0.2" - path-is-absolute "^1.0.0" - private "^0.1.6" + babel-register "^6.26.0" + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + convert-source-map "^1.5.0" + debug "^2.6.8" + json5 "^0.5.1" + lodash "^4.17.4" + minimatch "^3.0.4" + path-is-absolute "^1.0.1" + private "^0.1.7" slash "^1.0.0" - source-map "^0.5.0" + source-map "^0.5.6" -babel-generator@^6.18.0, babel-generator@^6.25.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.25.0.tgz#33a1af70d5f2890aeb465a4a7793c1df6a9ea9fc" +babel-generator@^6.18.0, babel-generator@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5" dependencies: babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-types "^6.25.0" + babel-runtime "^6.26.0" + babel-types "^6.26.0" detect-indent "^4.0.0" jsesc "^1.3.0" - lodash "^4.2.0" - source-map "^0.5.0" + lodash "^4.17.4" + source-map "^0.5.6" trim-right "^1.0.1" babel-helpers@^6.24.1: @@ -244,61 +257,61 @@ babel-preset-jest@^20.0.3: dependencies: babel-plugin-jest-hoist "^20.0.3" -babel-register@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.24.1.tgz#7e10e13a2f71065bdfad5a1787ba45bca6ded75f" +babel-register@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" dependencies: - babel-core "^6.24.1" - babel-runtime "^6.22.0" - core-js "^2.4.0" + babel-core "^6.26.0" + babel-runtime "^6.26.0" + core-js "^2.5.0" home-or-tmp "^2.0.0" - lodash "^4.2.0" + lodash "^4.17.4" mkdirp "^0.5.1" - source-map-support "^0.4.2" + source-map-support "^0.4.15" -babel-runtime@^6.22.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.25.0.tgz#33b98eaa5d482bb01a8d1aa6b437ad2b01aec41c" +babel-runtime@^6.22.0, babel-runtime@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" dependencies: core-js "^2.4.0" - regenerator-runtime "^0.10.0" + regenerator-runtime "^0.11.0" -babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.25.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.25.0.tgz#665241166b7c2aa4c619d71e192969552b10c071" +babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.25.0" - babel-types "^6.25.0" - babylon "^6.17.2" - lodash "^4.2.0" + babel-runtime "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + lodash "^4.17.4" -babel-traverse@^6.18.0, babel-traverse@^6.25.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.25.0.tgz#2257497e2fcd19b89edc13c4c91381f9512496f1" +babel-traverse@^6.18.0, babel-traverse@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" dependencies: - babel-code-frame "^6.22.0" + babel-code-frame "^6.26.0" babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-types "^6.25.0" - babylon "^6.17.2" - debug "^2.2.0" - globals "^9.0.0" - invariant "^2.2.0" - lodash "^4.2.0" - -babel-types@^6.18.0, babel-types@^6.25.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.25.0.tgz#70afb248d5660e5d18f811d91c8303b54134a18e" - dependencies: - babel-runtime "^6.22.0" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + debug "^2.6.8" + globals "^9.18.0" + invariant "^2.2.2" + lodash "^4.17.4" + +babel-types@^6.18.0, babel-types@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" + dependencies: + babel-runtime "^6.26.0" esutils "^2.0.2" - lodash "^4.2.0" - to-fast-properties "^1.0.1" + lodash "^4.17.4" + to-fast-properties "^1.0.3" -babylon@^6.17.2, babylon@^6.17.4: - version "6.17.4" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.17.4.tgz#3e8b7402b88d22c3423e137a1577883b15ff869a" +babylon@^6.17.4, babylon@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" balanced-match@^1.0.0: version "1.0.0" @@ -349,7 +362,7 @@ bser@^2.0.0: dependencies: node-int64 "^0.4.0" -builtin-modules@^1.0.0: +builtin-modules@^1.0.0, builtin-modules@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" @@ -386,7 +399,7 @@ center-align@^0.1.1: align-text "^0.1.3" lazy-cache "^1.0.3" -chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3: +chalk@1.1.3, chalk@^1.1.1, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" dependencies: @@ -396,6 +409,14 @@ chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" +chalk@^2.0.0, chalk@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.1.0.tgz#ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e" + dependencies: + ansi-styles "^3.1.0" + escape-string-regexp "^1.0.5" + supports-color "^4.0.0" + ci-info@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.0.0.tgz#dc5285f2b4e251821683681c381c3388f46ec534" @@ -404,11 +425,11 @@ circular-json@^0.3.1: version "0.3.3" resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" -cli-cursor@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" +cli-cursor@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" dependencies: - restore-cursor "^1.0.1" + restore-cursor "^2.0.0" cli-width@^2.0.0: version "2.1.0" @@ -458,7 +479,7 @@ concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" -concat-stream@^1.4.6: +concat-stream@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" dependencies: @@ -466,15 +487,19 @@ concat-stream@^1.4.6: readable-stream "^2.2.2" typedarray "^0.0.6" +contains-path@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" + content-type-parser@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.1.tgz#c3e56988c53c65127fb46d4032a3a900246fdc94" -convert-source-map@^1.1.0, convert-source-map@^1.4.0: +convert-source-map@^1.4.0, convert-source-map@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" -core-js@^2.4.0: +core-js@^2.4.0, core-js@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.0.tgz#569c050918be6486b3837552028ae0466b717086" @@ -482,6 +507,14 @@ core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" +cross-spawn@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" + dependencies: + lru-cache "^4.0.1" + shebang-command "^1.2.0" + which "^1.2.9" + cryptiles@2.x.x: version "2.0.5" resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" @@ -498,19 +531,13 @@ cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0": dependencies: cssom "0.3.x" -d@1: - version "1.0.0" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" - dependencies: - es5-ext "^0.10.9" - dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" dependencies: assert-plus "^1.0.0" -debug@^2.1.1, debug@^2.2.0, debug@^2.6.3: +debug@^2.6.3, debug@^2.6.8: version "2.6.8" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" dependencies: @@ -556,13 +583,20 @@ diff@^3.2.0: version "3.3.0" resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.0.tgz#056695150d7aa93237ca7e378ac3b1682b7963b9" -doctrine@^1.2.2: +doctrine@1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" dependencies: esutils "^2.0.2" isarray "^1.0.0" +doctrine@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.0.0.tgz#c73d8d2909d22291e1a007a395804da8b665fe63" + dependencies: + esutils "^2.0.2" + isarray "^1.0.0" + ecc-jsbn@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" @@ -581,58 +615,6 @@ error-ex@^1.2.0: dependencies: is-arrayish "^0.2.1" -es5-ext@^0.10.14, es5-ext@^0.10.9, es5-ext@~0.10.14: - version "0.10.26" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.26.tgz#51b2128a531b70c4f6764093a73cbebb82186372" - dependencies: - es6-iterator "2" - es6-symbol "~3.1" - -es6-iterator@2, es6-iterator@^2.0.1, es6-iterator@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.1.tgz#8e319c9f0453bf575d374940a655920e59ca5512" - dependencies: - d "1" - es5-ext "^0.10.14" - es6-symbol "^3.1" - -es6-map@^0.1.3: - version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0" - dependencies: - d "1" - es5-ext "~0.10.14" - es6-iterator "~2.0.1" - es6-set "~0.1.5" - es6-symbol "~3.1.1" - event-emitter "~0.3.5" - -es6-set@~0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1" - dependencies: - d "1" - es5-ext "~0.10.14" - es6-iterator "~2.0.1" - es6-symbol "3.1.1" - event-emitter "~0.3.5" - -es6-symbol@3.1.1, es6-symbol@^3.1, es6-symbol@^3.1.1, es6-symbol@~3.1, es6-symbol@~3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" - dependencies: - d "1" - es5-ext "~0.10.14" - -es6-weak-map@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f" - dependencies: - d "1" - es5-ext "^0.10.14" - es6-iterator "^2.0.1" - es6-symbol "^3.1.1" - escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" @@ -648,66 +630,106 @@ escodegen@^1.6.1: optionalDependencies: source-map "~0.2.0" -escope@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3" +eslint-config-standard@10.2.1: + version "10.2.1" + resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-10.2.1.tgz#c061e4d066f379dc17cd562c64e819b4dd454591" + +eslint-import-resolver-node@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.1.tgz#4422574cde66a9a7b099938ee4d508a199e0e3cc" dependencies: - es6-map "^0.1.3" - es6-weak-map "^2.0.1" - esrecurse "^4.1.0" - estraverse "^4.1.1" + debug "^2.6.8" + resolve "^1.2.0" -eslint-config-standard@6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-6.2.0.tgz#1d2384ee074de6f6b6c0f2bbe976863032565aee" +eslint-module-utils@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.1.1.tgz#abaec824177613b8a95b299639e1b6facf473449" + dependencies: + debug "^2.6.8" + pkg-dir "^1.0.0" + +eslint-plugin-import@^2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.7.0.tgz#21de33380b9efb55f5ef6d2e210ec0e07e7fa69f" + dependencies: + builtin-modules "^1.1.1" + contains-path "^0.1.0" + debug "^2.6.8" + doctrine "1.5.0" + eslint-import-resolver-node "^0.3.1" + eslint-module-utils "^2.1.1" + has "^1.0.1" + lodash.cond "^4.3.0" + minimatch "^3.0.3" + read-pkg-up "^2.0.0" -eslint-plugin-promise@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-2.0.1.tgz#a9759cefa5e38ab11bb2ef65a04ef042309aa0a4" +eslint-plugin-node@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-5.1.1.tgz#a7ed956e780c22aef6afd1116005acd82f26eac6" + dependencies: + ignore "^3.3.3" + minimatch "^3.0.4" + resolve "^1.3.3" + semver "5.3.0" -eslint-plugin-standard@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-2.0.1.tgz#3589699ff9c917f2c25f76a916687f641c369ff3" +eslint-plugin-promise@3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-3.5.0.tgz#78fbb6ffe047201627569e85a6c5373af2a68fca" + +eslint-plugin-standard@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-3.0.1.tgz#34d0c915b45edc6f010393c7eef3823b08565cf2" -eslint@3.6.1: - version "3.6.1" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-3.6.1.tgz#39eeabcfd8d2fe046fb8754b4cf97182abde0d9d" +eslint-scope@^3.7.1: + version "3.7.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" dependencies: - chalk "^1.1.3" - concat-stream "^1.4.6" - debug "^2.1.1" - doctrine "^1.2.2" - escope "^3.6.0" - espree "^3.3.1" + esrecurse "^4.1.0" + estraverse "^4.1.1" + +eslint@4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.5.0.tgz#bb75d3b8bde97fb5e13efcd539744677feb019c3" + dependencies: + ajv "^5.2.0" + babel-code-frame "^6.22.0" + chalk "^2.1.0" + concat-stream "^1.6.0" + cross-spawn "^5.1.0" + debug "^2.6.8" + doctrine "^2.0.0" + eslint-scope "^3.7.1" + espree "^3.5.0" + esquery "^1.0.0" estraverse "^4.2.0" esutils "^2.0.2" file-entry-cache "^2.0.0" - glob "^7.0.3" - globals "^9.2.0" - ignore "^3.1.5" + functional-red-black-tree "^1.0.1" + glob "^7.1.2" + globals "^9.17.0" + ignore "^3.3.3" imurmurhash "^0.1.4" - inquirer "^0.12.0" - is-my-json-valid "^2.10.0" + inquirer "^3.0.6" is-resolvable "^1.0.0" - js-yaml "^3.5.1" - json-stable-stringify "^1.0.0" + js-yaml "^3.9.1" + json-stable-stringify "^1.0.1" levn "^0.3.0" - lodash "^4.0.0" - mkdirp "^0.5.0" + lodash "^4.17.4" + minimatch "^3.0.2" + mkdirp "^0.5.1" natural-compare "^1.4.0" - optionator "^0.8.1" - path-is-inside "^1.0.1" - pluralize "^1.2.1" - progress "^1.1.8" - require-uncached "^1.0.2" - shelljs "^0.6.0" - strip-bom "^3.0.0" - strip-json-comments "~1.0.1" - table "^3.7.8" + optionator "^0.8.2" + path-is-inside "^1.0.2" + pluralize "^4.0.0" + progress "^2.0.0" + require-uncached "^1.0.3" + semver "^5.3.0" + strip-ansi "^4.0.0" + strip-json-comments "~2.0.1" + table "^4.0.1" text-table "~0.2.0" - user-home "^2.0.0" -espree@^3.3.1: +espree@^3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.0.tgz#98358625bdd055861ea27e2867ea729faf463d8d" dependencies: @@ -722,6 +744,12 @@ esprima@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" +esquery@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.0.tgz#cfba8b57d7fba93f17298a8a006a04cda13d80fa" + dependencies: + estraverse "^4.0.0" + esrecurse@^4.1.0: version "4.2.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.0.tgz#fa9568d98d3823f9a41d91e902dcab9ea6e5b163" @@ -733,7 +761,7 @@ estraverse@^1.9.1: version "1.9.3" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.9.3.tgz#af67f2dc922582415950926091a4005d29c9bb44" -estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: +estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" @@ -741,23 +769,12 @@ esutils@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" -event-emitter@~0.3.5: - version "0.3.5" - resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" - dependencies: - d "1" - es5-ext "~0.10.14" - exec-sh@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.0.tgz#14f75de3f20d286ef933099b2ce50a90359cef10" dependencies: merge "^1.1.3" -exit-hook@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" - expand-brackets@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" @@ -774,6 +791,14 @@ extend@~3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" +external-editor@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.0.4.tgz#1ed9199da9cbfe2ef2f7a31b2fde8b0d12368972" + dependencies: + iconv-lite "^0.4.17" + jschardet "^1.4.2" + tmp "^0.0.31" + extglob@^0.3.1: version "0.3.2" resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" @@ -784,6 +809,10 @@ extsprintf@1.3.0, extsprintf@^1.2.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" +fast-deep-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff" + fast-levenshtein@~2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" @@ -800,12 +829,11 @@ fb-watchman@^2.0.0: dependencies: bser "^2.0.0" -figures@^1.3.5: - version "1.7.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" +figures@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" dependencies: escape-string-regexp "^1.0.5" - object-assign "^4.1.0" file-entry-cache@^2.0.0: version "2.0.0" @@ -842,7 +870,7 @@ find-up@^1.0.0: path-exists "^2.0.0" pinkie-promise "^2.0.0" -find-up@^2.1.0: +find-up@^2.0.0, find-up@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" dependencies: @@ -883,15 +911,13 @@ fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" -generate-function@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" +function-bind@^1.0.2: + version "1.1.0" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771" -generate-object-property@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" - dependencies: - is-property "^1.0.0" +functional-red-black-tree@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" get-caller-file@^1.0.1: version "1.0.2" @@ -920,7 +946,7 @@ glob-parent@^2.0.0: dependencies: is-glob "^2.0.0" -glob@^7.0.3, glob@^7.0.5, glob@^7.1.1: +glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" dependencies: @@ -931,7 +957,7 @@ glob@^7.0.3, glob@^7.0.5, glob@^7.1.1: once "^1.3.0" path-is-absolute "^1.0.0" -globals@^9.0.0, globals@^9.2.0: +globals@^9.17.0, globals@^9.18.0: version "9.18.0" resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" @@ -985,6 +1011,16 @@ has-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" +has-flag@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" + +has@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" + dependencies: + function-bind "^1.0.2" + hawk@~3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" @@ -1027,7 +1063,11 @@ iconv-lite@0.4.13: version "0.4.13" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.13.tgz#1f88aba4ab0b1508e8312acc39345f36e992e2f2" -ignore@^3.1.5: +iconv-lite@^0.4.17: + version "0.4.18" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.18.tgz#23d8656b16aae6742ac29732ea8f0336a4789cf2" + +ignore@^3.3.3: version "3.3.3" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.3.tgz#432352e57accd87ab3110e82d3fea0e47812156d" @@ -1046,25 +1086,26 @@ inherits@2, inherits@^2.0.3, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" -inquirer@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-0.12.0.tgz#1ef2bfd63504df0bc75785fff8c2c41df12f077e" +inquirer@^3.0.6: + version "3.2.2" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.2.2.tgz#c2aaede1507cc54d826818737742d621bef2e823" dependencies: - ansi-escapes "^1.1.0" - ansi-regex "^2.0.0" - chalk "^1.0.0" - cli-cursor "^1.0.1" + ansi-escapes "^2.0.0" + chalk "^2.0.0" + cli-cursor "^2.1.0" cli-width "^2.0.0" - figures "^1.3.5" + external-editor "^2.0.4" + figures "^2.0.0" lodash "^4.3.0" - readline2 "^1.0.1" - run-async "^0.1.0" - rx-lite "^3.1.2" - string-width "^1.0.1" - strip-ansi "^3.0.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" -invariant@^2.2.0: +invariant@^2.2.2: version "2.2.2" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" dependencies: @@ -1134,15 +1175,6 @@ is-glob@^2.0.0, is-glob@^2.0.1: dependencies: is-extglob "^1.0.0" -is-my-json-valid@^2.10.0: - version "2.16.0" - resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz#f079dd9bfdae65ee2038aae8acbc86ab109e3693" - dependencies: - generate-function "^2.0.0" - generate-object-property "^1.1.0" - jsonpointer "^4.0.0" - xtend "^4.0.0" - is-number@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" @@ -1179,9 +1211,9 @@ is-primitive@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" -is-property@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" +is-promise@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" is-resolvable@^1.0.0: version "1.0.0" @@ -1483,17 +1515,17 @@ jest-validate@^20.0.3: leven "^2.1.0" pretty-format "^20.0.3" -jest@^20.0.4: +jest@20.0.4: version "20.0.4" resolved "https://registry.yarnpkg.com/jest/-/jest-20.0.4.tgz#3dd260c2989d6dad678b1e9cc4d91944f6d602ac" dependencies: jest-cli "^20.0.4" -js-tokens@^3.0.0: +js-tokens@^3.0.0, js-tokens@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" -js-yaml@^3.5.1, js-yaml@^3.7.0: +js-yaml@^3.7.0, js-yaml@^3.9.1: version "3.9.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.9.1.tgz#08775cebdfdd359209f0d2acd383c8f86a6904a0" dependencies: @@ -1504,6 +1536,10 @@ jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" +jschardet@^1.4.2: + version "1.5.1" + resolved "https://registry.yarnpkg.com/jschardet/-/jschardet-1.5.1.tgz#c519f629f86b3a5bedba58a88d311309eec097f9" + jsdom@^9.12.0: version "9.12.0" resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-9.12.0.tgz#e8c546fffcb06c00d4833ca84410fed7f8a097d4" @@ -1532,11 +1568,15 @@ jsesc@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" +json-schema-traverse@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" + json-schema@0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" -json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1: +json-stable-stringify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" dependencies: @@ -1546,7 +1586,7 @@ json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" -json5@^0.5.0: +json5@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" @@ -1554,10 +1594,6 @@ jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" -jsonpointer@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" - jsprim@^1.2.2: version "1.4.1" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" @@ -1610,6 +1646,15 @@ load-json-file@^1.0.0: pinkie-promise "^2.0.0" strip-bom "^2.0.0" +load-json-file@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + strip-bom "^3.0.0" + locate-path@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" @@ -1617,7 +1662,11 @@ locate-path@^2.0.0: p-locate "^2.0.0" path-exists "^3.0.0" -lodash@^4.0.0, lodash@^4.14.0, lodash@^4.2.0, lodash@^4.3.0: +lodash.cond@^4.3.0: + version "4.5.2" + resolved "https://registry.yarnpkg.com/lodash.cond/-/lodash.cond-4.5.2.tgz#f471a1da486be60f6ab955d17115523dd1d255d5" + +lodash@^4.0.0, lodash@^4.14.0, lodash@^4.17.4, lodash@^4.3.0: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" @@ -1631,6 +1680,13 @@ loose-envify@^1.0.0: dependencies: js-tokens "^3.0.0" +lru-cache@^4.0.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" + makeerror@1.0.x: version "1.0.11" resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" @@ -1669,6 +1725,10 @@ mime-types@^2.1.12, mime-types@~2.1.7: dependencies: mime-db "~1.29.0" +mimic-fn@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" + minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" @@ -1683,7 +1743,7 @@ minimist@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" -mkdirp@^0.5.0, mkdirp@^0.5.1: +mkdirp@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: @@ -1693,9 +1753,9 @@ ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" -mute-stream@0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0" +mute-stream@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" natural-compare@^1.4.0: version "1.4.0" @@ -1758,9 +1818,11 @@ once@^1.3.0, once@^1.4.0: dependencies: wrappy "1" -onetime@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" +onetime@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" + dependencies: + mimic-fn "^1.0.0" optimist@^0.6.1: version "0.6.1" @@ -1769,7 +1831,7 @@ optimist@^0.6.1: minimist "~0.0.1" wordwrap "~0.0.2" -optionator@^0.8.1: +optionator@^0.8.1, optionator@^0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" dependencies: @@ -1790,7 +1852,7 @@ os-locale@^1.4.0: dependencies: lcid "^1.0.0" -os-tmpdir@^1.0.1: +os-tmpdir@^1.0.1, os-tmpdir@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" @@ -1837,11 +1899,11 @@ path-exists@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" -path-is-absolute@^1.0.0: +path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" -path-is-inside@^1.0.1: +path-is-inside@^1.0.1, path-is-inside@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" @@ -1857,6 +1919,12 @@ path-type@^1.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" +path-type@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" + dependencies: + pify "^2.0.0" + performance-now@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" @@ -1875,9 +1943,15 @@ pinkie@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" -pluralize@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-1.2.1.tgz#d1a21483fd22bb41e58a12fa3421823140897c45" +pkg-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4" + dependencies: + find-up "^1.0.0" + +pluralize@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-4.0.0.tgz#59b708c1c0190a2f692f1c7618c446b052fd1762" prelude-ls@~1.1.2: version "1.1.2" @@ -1894,7 +1968,7 @@ pretty-format@^20.0.3: ansi-regex "^2.1.1" ansi-styles "^3.0.0" -private@^0.1.6: +private@^0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1" @@ -1902,14 +1976,18 @@ process-nextick-args@~1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" -progress@^1.1.8: - version "1.1.8" - resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" +progress@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f" prr@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/prr/-/prr-0.0.0.tgz#1a84b85908325501411853d0081ee3fa86e2926a" +pseudomap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" @@ -1932,6 +2010,13 @@ read-pkg-up@^1.0.1: find-up "^1.0.0" read-pkg "^1.0.0" +read-pkg-up@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" + dependencies: + find-up "^2.0.0" + read-pkg "^2.0.0" + read-pkg@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" @@ -1940,6 +2025,14 @@ read-pkg@^1.0.0: normalize-package-data "^2.3.2" path-type "^1.0.0" +read-pkg@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" + dependencies: + load-json-file "^2.0.0" + normalize-package-data "^2.3.2" + path-type "^2.0.0" + readable-stream@^2.2.2: version "2.3.3" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" @@ -1952,17 +2045,9 @@ readable-stream@^2.2.2: string_decoder "~1.0.3" util-deprecate "~1.0.1" -readline2@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/readline2/-/readline2-1.0.1.tgz#41059608ffc154757b715d9989d199ffbf372e35" - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - mute-stream "0.0.5" - -regenerator-runtime@^0.10.0: - version "0.10.5" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658" +regenerator-runtime@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz#7e54fe5b5ccd5d6624ea6255c3473be090b802e1" regex-cache@^0.4.2: version "0.4.3" @@ -1972,8 +2057,8 @@ regex-cache@^0.4.2: is-primitive "^2.0.0" remove-trailing-separator@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.0.2.tgz#69b062d978727ad14dc6b56ba4ab772fd8d70511" + version "1.1.0" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" repeat-element@^1.1.2: version "1.1.2" @@ -2024,7 +2109,7 @@ require-main-filename@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" -require-uncached@^1.0.2: +require-uncached@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" dependencies: @@ -2039,18 +2124,18 @@ resolve@1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" -resolve@^1.3.2: +resolve@^1.2.0, resolve@^1.3.2, resolve@^1.3.3: version "1.4.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.4.0.tgz#a75be01c53da25d934a98ebd0e4c4a7312f92a86" dependencies: path-parse "^1.0.5" -restore-cursor@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" +restore-cursor@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" dependencies: - exit-hook "^1.0.0" - onetime "^1.0.0" + onetime "^2.0.0" + signal-exit "^3.0.2" right-align@^0.1.1: version "0.1.3" @@ -2064,15 +2149,21 @@ rimraf@^2.2.8, rimraf@^2.6.1: dependencies: glob "^7.0.5" -run-async@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-0.1.0.tgz#c8ad4a5e110661e402a7d21b530e009f25f8e389" +run-async@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" dependencies: - once "^1.3.0" + is-promise "^2.1.0" -rx-lite@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102" +rx-lite-aggregates@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be" + dependencies: + rx-lite "*" + +rx-lite@*, rx-lite@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" safe-buffer@^5.0.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.1" @@ -2098,17 +2189,31 @@ sax@^1.2.1: version "5.4.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" +semver@5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" + set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" -shelljs@^0.6.0: - version "0.6.1" - resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.6.1.tgz#ec6211bed1920442088fe0f70b2837232ed2c8a8" +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + dependencies: + shebang-regex "^1.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" shellwords@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.0.tgz#66afd47b6a12932d9071cbfd98a52e785cd0ba14" + version "0.1.1" + resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" + +signal-exit@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" slash@^1.0.0: version "1.0.0" @@ -2124,9 +2229,9 @@ sntp@1.x.x: dependencies: hoek "2.x.x" -source-map-support@^0.4.2: - version "0.4.15" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.15.tgz#03202df65c06d2bd8c7ec2362a193056fef8d3b1" +source-map-support@^0.4.15: + version "0.4.16" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.16.tgz#16fecf98212467d017d586a2af68d628b9421cd8" dependencies: source-map "^0.5.6" @@ -2136,7 +2241,7 @@ source-map@^0.4.4: dependencies: amdefine ">=0.0.4" -source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1: +source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1: version "0.5.6" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" @@ -2192,7 +2297,7 @@ string-width@^1.0.1, string-width@^1.0.2: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -string-width@^2.0.0: +string-width@^2.0.0, string-width@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" dependencies: @@ -2231,9 +2336,9 @@ strip-bom@^2.0.0: dependencies: is-utf8 "^0.2.0" -strip-json-comments@~1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91" +strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" supports-color@^2.0.0: version "2.0.0" @@ -2245,13 +2350,19 @@ supports-color@^3.1.2: dependencies: has-flag "^1.0.0" +supports-color@^4.0.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.2.1.tgz#65a4bb2631e90e02420dba5554c375a4754bb836" + dependencies: + has-flag "^2.0.0" + symbol-tree@^3.2.1: version "3.2.2" resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" -table@^3.7.8: - version "3.8.3" - resolved "https://registry.yarnpkg.com/table/-/table-3.8.3.tgz#2bbc542f0fda9861a755d3947fefd8b3f513855f" +table@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/table/-/table-4.0.1.tgz#a8116c133fac2c61f4a420ab6cdf5c4d61f0e435" dependencies: ajv "^4.7.0" ajv-keywords "^1.0.0" @@ -2282,11 +2393,17 @@ through@^2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" +tmp@^0.0.31: + version "0.0.31" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.31.tgz#8f38ab9438e17315e5dbd8b3657e8bfb277ae4a7" + dependencies: + os-tmpdir "~1.0.1" + tmpl@1.0.x: version "1.0.4" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" -to-fast-properties@^1.0.1: +to-fast-properties@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" @@ -2341,12 +2458,6 @@ uglify-to-browserify@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" -user-home@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/user-home/-/user-home-2.0.0.tgz#9c70bfd8169bc1dcbf48604e0f04b8b49cde9e9f" - dependencies: - os-homedir "^1.0.0" - util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" @@ -2385,8 +2496,8 @@ webidl-conversions@^3.0.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" webidl-conversions@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.1.tgz#8015a17ab83e7e1b311638486ace81da6ce206a0" + version "4.0.2" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" whatwg-encoding@^1.0.1: version "1.0.1" @@ -2405,7 +2516,7 @@ which-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" -which@^1.2.12: +which@^1.2.12, which@^1.2.9: version "1.3.0" resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" dependencies: @@ -2428,8 +2539,8 @@ wordwrap@~1.0.0: resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" worker-farm@^1.3.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.4.1.tgz#a438bc993a7a7d133bcb6547c95eca7cff4897d8" + version "1.5.0" + resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.5.0.tgz#adfdf0cd40581465ed0a1f648f9735722afd5c8d" dependencies: errno "^0.1.4" xtend "^4.0.1" @@ -2455,7 +2566,7 @@ xml-name-validator@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-2.0.1.tgz#4d8b8f1eccd3419aa362061becef515e1e559635" -xtend@^4.0.0, xtend@^4.0.1: +xtend@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" @@ -2463,6 +2574,10 @@ y18n@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" +yallist@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + yargs-parser@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" From 3761c827b68bce766f0f2fcce385d6c9a8a58f0a Mon Sep 17 00:00:00 2001 From: Pawel Galazka Date: Sun, 20 Aug 2017 18:09:17 +1000 Subject: [PATCH 04/41] Upgrade chalk --- package.json | 2 +- yarn.lock | 26 +++++++++++++------------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/package.json b/package.json index 376715b..c19ed8f 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ }, "homepage": "https://github.com/pawelgalazka/runjs#readme", "dependencies": { - "chalk": "1.1.3", + "chalk": "2.1.0", "get-parameter-names": "0.3.0" }, "devDependencies": { diff --git a/yarn.lock b/yarn.lock index ef5a0e4..0788217 100644 --- a/yarn.lock +++ b/yarn.lock @@ -399,7 +399,15 @@ center-align@^0.1.1: align-text "^0.1.3" lazy-cache "^1.0.3" -chalk@1.1.3, chalk@^1.1.1, chalk@^1.1.3: +chalk@2.1.0, chalk@^2.0.0, chalk@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.1.0.tgz#ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e" + dependencies: + ansi-styles "^3.1.0" + escape-string-regexp "^1.0.5" + supports-color "^4.0.0" + +chalk@^1.1.1, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" dependencies: @@ -409,14 +417,6 @@ chalk@1.1.3, chalk@^1.1.1, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0, chalk@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.1.0.tgz#ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e" - dependencies: - ansi-styles "^3.1.0" - escape-string-regexp "^1.0.5" - supports-color "^4.0.0" - ci-info@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.0.0.tgz#dc5285f2b4e251821683681c381c3388f46ec534" @@ -648,7 +648,7 @@ eslint-module-utils@^2.1.1: debug "^2.6.8" pkg-dir "^1.0.0" -eslint-plugin-import@^2.7.0: +eslint-plugin-import@2.7.0: version "2.7.0" resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.7.0.tgz#21de33380b9efb55f5ef6d2e210ec0e07e7fa69f" dependencies: @@ -663,7 +663,7 @@ eslint-plugin-import@^2.7.0: minimatch "^3.0.3" read-pkg-up "^2.0.0" -eslint-plugin-node@^5.1.1: +eslint-plugin-node@5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-5.1.1.tgz#a7ed956e780c22aef6afd1116005acd82f26eac6" dependencies: @@ -676,7 +676,7 @@ eslint-plugin-promise@3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-3.5.0.tgz#78fbb6ffe047201627569e85a6c5373af2a68fca" -eslint-plugin-standard@^3.0.1: +eslint-plugin-standard@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-3.0.1.tgz#34d0c915b45edc6f010393c7eef3823b08565cf2" @@ -923,7 +923,7 @@ get-caller-file@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" -get-parameter-names@0.3.0: +get-parameter-names@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/get-parameter-names/-/get-parameter-names-0.3.0.tgz#2d2237cd592e6c5b859ab2efdab435f008e5bb97" From a9dc055ee4547ebfff9735cf83a4a796a05fe8f0 Mon Sep 17 00:00:00 2001 From: Pawel Galazka Date: Sun, 20 Aug 2017 18:12:01 +1000 Subject: [PATCH 05/41] Update babel and typescript sandbox yarn.lock files --- test/babel-sandbox/yarn.lock | 36 ++++++++++++++++++++++++++++++- test/typescript-sandbox/yarn.lock | 4 ++-- 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/test/babel-sandbox/yarn.lock b/test/babel-sandbox/yarn.lock index f6fd729..07be5e4 100644 --- a/test/babel-sandbox/yarn.lock +++ b/test/babel-sandbox/yarn.lock @@ -10,6 +10,12 @@ ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" +ansi-styles@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" + dependencies: + color-convert "^1.9.0" + babel-code-frame@^6.16.0, babel-code-frame@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4" @@ -473,6 +479,24 @@ chalk@1.1.3, chalk@^1.1.0: strip-ansi "^3.0.0" supports-color "^2.0.0" +chalk@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.1.0.tgz#ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e" + dependencies: + ansi-styles "^3.1.0" + escape-string-regexp "^1.0.5" + supports-color "^4.0.0" + +color-convert@^1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.0.tgz#1accf97dd739b983bf994d56fec8f95853641b7a" + dependencies: + color-name "^1.1.1" + +color-name@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" @@ -497,7 +521,7 @@ detect-indent@^4.0.0: dependencies: repeating "^2.0.0" -escape-string-regexp@^1.0.2: +escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" @@ -519,6 +543,10 @@ has-ansi@^2.0.0: dependencies: ansi-regex "^2.0.0" +has-flag@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" + home-or-tmp@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-1.0.0.tgz#4b9f1e40800c3e50c6c27f781676afcce71f3985" @@ -678,6 +706,12 @@ supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" +supports-color@^4.0.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.2.1.tgz#65a4bb2631e90e02420dba5554c375a4754bb836" + dependencies: + has-flag "^2.0.0" + to-fast-properties@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" diff --git a/test/typescript-sandbox/yarn.lock b/test/typescript-sandbox/yarn.lock index c2dd934..6be1d85 100644 --- a/test/typescript-sandbox/yarn.lock +++ b/test/typescript-sandbox/yarn.lock @@ -30,7 +30,7 @@ chalk@1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0: +chalk@2.1.0, chalk@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.1.0.tgz#ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e" dependencies: @@ -89,7 +89,7 @@ mkdirp@^0.5.1: minimist "0.0.8" "runjs@file:../../": - version "4.0.0-beta.1" + version "4.0.1" dependencies: chalk "1.1.3" get-parameter-names "0.3.0" From 5b9b3902829c6a514cb4b2450086053efc0e318a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Fri, 25 Aug 2017 19:23:00 +1000 Subject: [PATCH 06/41] Test coverage checks --- .gitignore | 1 + package.json | 14 ++++++++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 80416bb..e66d1cd 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ node_modules *.swp .DS_Store npm-debug.log +/coverage diff --git a/package.json b/package.json index c19ed8f..1318fa0 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,7 @@ "scripts": { "lint": "eslint lib/ bin/ test/*.test.js", "test": "yarn run test:fast && yarn run test:e2e", - "test:fast": "yarn run lint && jest", + "test:fast": "yarn run lint && jest --coverage", "test:e2e": "bash ./test/e2e.test.sh", "clean": "rm -rf node_modules && yarn run clean:sandbox", "clean:sandbox": "rm -rf test/babel-sandbox/node_modules && rm -rf test/typescript-sandbox/node_modules" @@ -52,6 +52,16 @@ ] }, "jest": { - "testEnvironment": "node" + "testEnvironment": "node", + "collectCoverageFrom": [ + "lib/**/*.js", + "bin/**/*.js" + ], + "coverageReporters": ["text"], + "coverageThreshold": { + "global": { + "lines": 70 + } + } } } From 428895334cc8550a9ab1059479fb3d4cbfd0fa40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Mon, 4 Sep 2017 18:44:19 +1000 Subject: [PATCH 07/41] Move src files to src --- {lib => src}/common.js | 0 {lib => src}/index.js | 0 {lib => src}/script.js | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename {lib => src}/common.js (100%) rename {lib => src}/index.js (100%) rename {lib => src}/script.js (100%) diff --git a/lib/common.js b/src/common.js similarity index 100% rename from lib/common.js rename to src/common.js diff --git a/lib/index.js b/src/index.js similarity index 100% rename from lib/index.js rename to src/index.js diff --git a/lib/script.js b/src/script.js similarity index 100% rename from lib/script.js rename to src/script.js From 9b84ff861a215ac25b056df61e693f01cf464390 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Mon, 4 Sep 2017 19:24:44 +1000 Subject: [PATCH 08/41] Flow setup --- .flowconfig | 9 ++ .gitignore | 1 + package.json | 30 ++++- yarn.lock | 332 ++++++++++++++++++++++++++++++++++++++++++++++++--- 4 files changed, 349 insertions(+), 23 deletions(-) create mode 100644 .flowconfig diff --git a/.flowconfig b/.flowconfig new file mode 100644 index 0000000..363b337 --- /dev/null +++ b/.flowconfig @@ -0,0 +1,9 @@ +[ignore] + +[include] + +[libs] + +[lints] + +[options] diff --git a/.gitignore b/.gitignore index e66d1cd..cc9089c 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ node_modules .DS_Store npm-debug.log /coverage +/lib diff --git a/package.json b/package.json index 1318fa0..945a18a 100644 --- a/package.json +++ b/package.json @@ -13,9 +13,13 @@ "run": "bin/run.js" }, "scripts": { - "lint": "eslint lib/ bin/ test/*.test.js", - "test": "yarn run test:fast && yarn run test:e2e", - "test:fast": "yarn run lint && jest --coverage", + "lint": "eslint src/ bin/ test/*.test.js", + "flow": "flow", + "build": "babel src/ --out-dir lib/", + "test": "yarn run lint && yarn run test:coverage && yarn run build && yarn run test:e2e", + "test:coverage": "jest --coverage", + "test:unit": "jest", + "test:watch": "jest --watch", "test:e2e": "bash ./test/e2e.test.sh", "clean": "rm -rf node_modules && yarn run clean:sandbox", "clean:sandbox": "rm -rf test/babel-sandbox/node_modules && rm -rf test/typescript-sandbox/node_modules" @@ -38,15 +42,29 @@ "get-parameter-names": "0.3.0" }, "devDependencies": { + "babel-cli": "^6.26.0", + "babel-eslint": "7.2.3", + "babel-preset-flow": "^6.23.0", "eslint": "4.5.0", "eslint-config-standard": "10.2.1", + "eslint-plugin-flowtype": "2.35.1", "eslint-plugin-import": "2.7.0", "eslint-plugin-node": "5.1.1", "eslint-plugin-promise": "3.5.0", "eslint-plugin-standard": "3.0.1", + "flow-bin": "0.54.0", "jest": "20.0.4" }, + "babel": { + "presets": [ + "flow" + ] + }, "eslintConfig": { + "parser": "babel-eslint", + "plugins": [ + "flowtype" + ], "extends": [ "eslint-config-standard" ] @@ -54,10 +72,12 @@ "jest": { "testEnvironment": "node", "collectCoverageFrom": [ - "lib/**/*.js", + "src/**/*.js", "bin/**/*.js" ], - "coverageReporters": ["text"], + "coverageReporters": [ + "text" + ], "coverageThreshold": { "global": { "lines": 70 diff --git a/yarn.lock b/yarn.lock index 0788217..f4094b6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6,6 +6,10 @@ abab@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.3.tgz#b81de5f7274ec4e756d797cd834f303642724e5d" +abbrev@1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" + acorn-globals@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-3.1.0.tgz#fd8270f71fbb4996b004fa880ee5d46573a731bf" @@ -101,6 +105,17 @@ append-transform@^0.4.0: dependencies: default-require-extensions "^1.0.0" +aproba@^1.0.3: + version "1.1.2" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.2.tgz#45c6629094de4e96f693ef7eab74ae079c240fc1" + +are-we-there-yet@~1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" + dependencies: + delegates "^1.0.0" + readable-stream "^2.0.6" + argparse@^1.0.7: version "1.0.9" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" @@ -151,6 +166,10 @@ assert-plus@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" +async-each@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" + async@^1.4.0: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" @@ -173,6 +192,27 @@ aws4@^1.2.1: version "1.6.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" +babel-cli@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-cli/-/babel-cli-6.26.0.tgz#502ab54874d7db88ad00b887a06383ce03d002f1" + dependencies: + babel-core "^6.26.0" + babel-polyfill "^6.26.0" + babel-register "^6.26.0" + babel-runtime "^6.26.0" + commander "^2.11.0" + convert-source-map "^1.5.0" + fs-readdir-recursive "^1.0.0" + glob "^7.1.2" + lodash "^4.17.4" + output-file-sync "^1.1.2" + path-is-absolute "^1.0.1" + slash "^1.0.0" + source-map "^0.5.6" + v8flags "^2.1.1" + optionalDependencies: + chokidar "^1.6.1" + babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" @@ -205,6 +245,15 @@ babel-core@^6.0.0, babel-core@^6.26.0: slash "^1.0.0" source-map "^0.5.6" +babel-eslint@7.2.3: + version "7.2.3" + resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-7.2.3.tgz#b2fe2d80126470f5c19442dc757253a897710827" + dependencies: + babel-code-frame "^6.22.0" + babel-traverse "^6.23.1" + babel-types "^6.23.0" + babylon "^6.17.0" + babel-generator@^6.18.0, babel-generator@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5" @@ -251,6 +300,31 @@ babel-plugin-jest-hoist@^20.0.3: version "20.0.3" resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-20.0.3.tgz#afedc853bd3f8dc3548ea671fbe69d03cc2c1767" +babel-plugin-syntax-flow@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d" + +babel-plugin-transform-flow-strip-types@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz#84cb672935d43714fdc32bce84568d87441cf7cf" + dependencies: + babel-plugin-syntax-flow "^6.18.0" + babel-runtime "^6.22.0" + +babel-polyfill@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.26.0.tgz#379937abc67d7895970adc621f284cd966cf2153" + dependencies: + babel-runtime "^6.26.0" + core-js "^2.5.0" + regenerator-runtime "^0.10.5" + +babel-preset-flow@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-preset-flow/-/babel-preset-flow-6.23.0.tgz#e71218887085ae9a24b5be4169affb599816c49d" + dependencies: + babel-plugin-transform-flow-strip-types "^6.22.0" + babel-preset-jest@^20.0.3: version "20.0.3" resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-20.0.3.tgz#cbacaadecb5d689ca1e1de1360ebfc66862c178a" @@ -286,7 +360,7 @@ babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: babylon "^6.18.0" lodash "^4.17.4" -babel-traverse@^6.18.0, babel-traverse@^6.26.0: +babel-traverse@^6.18.0, babel-traverse@^6.23.1, babel-traverse@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" dependencies: @@ -300,7 +374,7 @@ babel-traverse@^6.18.0, babel-traverse@^6.26.0: invariant "^2.2.2" lodash "^4.17.4" -babel-types@^6.18.0, babel-types@^6.26.0: +babel-types@^6.18.0, babel-types@^6.23.0, babel-types@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" dependencies: @@ -309,7 +383,7 @@ babel-types@^6.18.0, babel-types@^6.26.0: lodash "^4.17.4" to-fast-properties "^1.0.3" -babylon@^6.17.4, babylon@^6.18.0: +babylon@^6.17.0, babylon@^6.17.4, babylon@^6.18.0: version "6.18.0" resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" @@ -323,6 +397,16 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" +binary-extensions@^1.0.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.10.0.tgz#9aeb9a6c5e88638aad171e167f5900abe24835d0" + +block-stream@*: + version "0.0.9" + resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" + dependencies: + inherits "~2.0.0" + boom@2.x.x: version "2.10.1" resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" @@ -417,6 +501,21 @@ chalk@^1.1.1, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" +chokidar@^1.6.1: + version "1.7.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" + dependencies: + anymatch "^1.3.0" + async-each "^1.0.0" + glob-parent "^2.0.0" + inherits "^2.0.1" + is-binary-path "^1.0.0" + is-glob "^2.0.0" + path-is-absolute "^1.0.0" + readdirp "^2.0.0" + optionalDependencies: + fsevents "^1.0.0" + ci-info@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.0.0.tgz#dc5285f2b4e251821683681c381c3388f46ec534" @@ -475,6 +574,10 @@ combined-stream@^1.0.5, combined-stream@~1.0.5: dependencies: delayed-stream "~1.0.0" +commander@^2.11.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" + concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" @@ -487,6 +590,10 @@ concat-stream@^1.6.0: readable-stream "^2.2.2" typedarray "^0.0.6" +console-control-strings@^1.0.0, console-control-strings@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + contains-path@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" @@ -537,7 +644,7 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" -debug@^2.6.3, debug@^2.6.8: +debug@^2.2.0, debug@^2.6.3, debug@^2.6.8: version "2.6.8" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" dependencies: @@ -547,6 +654,10 @@ decamelize@^1.0.0, decamelize@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" +deep-extend@~0.4.0: + version "0.4.2" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" + deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" @@ -573,6 +684,10 @@ delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + detect-indent@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" @@ -648,6 +763,12 @@ eslint-module-utils@^2.1.1: debug "^2.6.8" pkg-dir "^1.0.0" +eslint-plugin-flowtype@2.35.1: + version "2.35.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-flowtype/-/eslint-plugin-flowtype-2.35.1.tgz#9ad98181b467a3645fbd2a8d430393cc17a4ea63" + dependencies: + lodash "^4.15.0" + eslint-plugin-import@2.7.0: version "2.7.0" resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.7.0.tgz#21de33380b9efb55f5ef6d2e210ec0e07e7fa69f" @@ -885,6 +1006,10 @@ flat-cache@^1.2.1: graceful-fs "^4.1.2" write "^0.2.1" +flow-bin@0.54.0: + version "0.54.0" + resolved "https://registry.yarnpkg.com/flow-bin/-/flow-bin-0.54.0.tgz#f2fb0478e9e99702b623c9ed84079a39903bba77" + for-in@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" @@ -907,10 +1032,38 @@ form-data@~2.1.1: combined-stream "^1.0.5" mime-types "^2.1.12" +fs-readdir-recursive@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.0.0.tgz#8cd1745c8b4f8a29c8caec392476921ba195f560" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" +fsevents@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.2.tgz#3282b713fb3ad80ede0e9fcf4611b5aa6fc033f4" + dependencies: + nan "^2.3.0" + node-pre-gyp "^0.6.36" + +fstream-ignore@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" + dependencies: + fstream "^1.0.0" + inherits "2" + minimatch "^3.0.0" + +fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: + version "1.0.11" + resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" + dependencies: + graceful-fs "^4.1.2" + inherits "~2.0.0" + mkdirp ">=0.5 0" + rimraf "2" + function-bind@^1.0.2: version "1.1.0" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771" @@ -919,11 +1072,24 @@ functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" +gauge@~2.7.3: + version "2.7.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + dependencies: + 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" + get-caller-file@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" -get-parameter-names@^0.3.0: +get-parameter-names@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/get-parameter-names/-/get-parameter-names-0.3.0.tgz#2d2237cd592e6c5b859ab2efdab435f008e5bb97" @@ -972,7 +1138,7 @@ globby@^5.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" -graceful-fs@^4.1.11, graceful-fs@^4.1.2: +graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.4: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" @@ -1015,6 +1181,10 @@ has-flag@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" +has-unicode@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + has@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" @@ -1082,10 +1252,14 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.3, inherits@~2.0.3: +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" +ini@~1.3.0: + version "1.3.4" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" + inquirer@^3.0.6: version "3.2.2" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.2.2.tgz#c2aaede1507cc54d826818737742d621bef2e823" @@ -1119,6 +1293,12 @@ is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" +is-binary-path@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" + dependencies: + binary-extensions "^1.0.0" + is-buffer@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.5.tgz#1f3b26ef613b214b88cbca23cc6c01d87961eecc" @@ -1666,7 +1846,7 @@ lodash.cond@^4.3.0: version "4.5.2" resolved "https://registry.yarnpkg.com/lodash.cond/-/lodash.cond-4.5.2.tgz#f471a1da486be60f6ab955d17115523dd1d255d5" -lodash@^4.0.0, lodash@^4.14.0, lodash@^4.17.4, lodash@^4.3.0: +lodash@^4.0.0, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.4, lodash@^4.3.0: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" @@ -1729,7 +1909,7 @@ mimic-fn@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" -minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: +minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" dependencies: @@ -1739,11 +1919,11 @@ minimist@0.0.8, minimist@~0.0.1: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" -minimist@^1.1.1: +minimist@^1.1.1, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" -mkdirp@^0.5.1: +"mkdirp@>=0.5 0", mkdirp@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: @@ -1757,6 +1937,10 @@ mute-stream@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" +nan@^2.3.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.7.0.tgz#d95bf721ec877e08db276ed3fc6eb78f9083ad46" + natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -1774,6 +1958,27 @@ node-notifier@^5.0.2: shellwords "^0.1.0" which "^1.2.12" +node-pre-gyp@^0.6.36: + version "0.6.36" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.36.tgz#db604112cb74e0d477554e9b505b17abddfab786" + dependencies: + mkdirp "^0.5.1" + nopt "^4.0.1" + npmlog "^4.0.2" + rc "^1.1.7" + request "^2.81.0" + rimraf "^2.6.1" + semver "^5.3.0" + tar "^2.2.1" + tar-pack "^3.4.0" + +nopt@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" + dependencies: + abbrev "1" + osenv "^0.1.4" + normalize-package-data@^2.3.2: version "2.4.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" @@ -1789,6 +1994,15 @@ normalize-path@^2.0.0, normalize-path@^2.0.1: dependencies: remove-trailing-separator "^1.0.1" +npmlog@^4.0.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" + dependencies: + 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@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" @@ -1812,7 +2026,7 @@ object.omit@^2.0.0: for-own "^0.1.4" is-extendable "^0.1.1" -once@^1.3.0, once@^1.4.0: +once@^1.3.0, once@^1.3.3, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" dependencies: @@ -1852,10 +2066,25 @@ os-locale@^1.4.0: dependencies: lcid "^1.0.0" -os-tmpdir@^1.0.1, os-tmpdir@~1.0.1: +os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" +osenv@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.0" + +output-file-sync@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/output-file-sync/-/output-file-sync-1.1.2.tgz#d0a33eefe61a205facb90092e826598d5245ce76" + dependencies: + graceful-fs "^4.1.4" + mkdirp "^0.5.1" + object-assign "^4.1.0" + p-limit@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc" @@ -2003,6 +2232,15 @@ randomatic@^1.1.3: is-number "^3.0.0" kind-of "^4.0.0" +rc@^1.1.7: + version "1.2.1" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95" + dependencies: + deep-extend "~0.4.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + read-pkg-up@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" @@ -2033,7 +2271,7 @@ read-pkg@^2.0.0: normalize-package-data "^2.3.2" path-type "^2.0.0" -readable-stream@^2.2.2: +readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.2.2: version "2.3.3" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" dependencies: @@ -2045,6 +2283,19 @@ readable-stream@^2.2.2: string_decoder "~1.0.3" util-deprecate "~1.0.1" +readdirp@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78" + dependencies: + graceful-fs "^4.1.2" + minimatch "^3.0.2" + readable-stream "^2.0.2" + set-immediate-shim "^1.0.1" + +regenerator-runtime@^0.10.5: + version "0.10.5" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658" + regenerator-runtime@^0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz#7e54fe5b5ccd5d6624ea6255c3473be090b802e1" @@ -2074,7 +2325,7 @@ repeating@^2.0.0: dependencies: is-finite "^1.0.0" -request@^2.79.0: +request@^2.79.0, request@^2.81.0: version "2.81.0" resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" dependencies: @@ -2143,7 +2394,7 @@ right-align@^0.1.1: dependencies: align-text "^0.1.1" -rimraf@^2.2.8, rimraf@^2.6.1: +rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d" dependencies: @@ -2193,10 +2444,14 @@ semver@5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" -set-blocking@^2.0.0: +set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" +set-immediate-shim@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" + shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" @@ -2211,7 +2466,7 @@ shellwords@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" -signal-exit@^3.0.2: +signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" @@ -2371,6 +2626,27 @@ table@^4.0.1: slice-ansi "0.0.4" string-width "^2.0.0" +tar-pack@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.0.tgz#23be2d7f671a8339376cbdb0b8fe3fdebf317984" + dependencies: + debug "^2.2.0" + fstream "^1.0.10" + fstream-ignore "^1.0.5" + once "^1.3.3" + readable-stream "^2.1.4" + rimraf "^2.5.1" + tar "^2.2.1" + uid-number "^0.0.6" + +tar@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" + dependencies: + block-stream "*" + fstream "^1.0.2" + inherits "2" + test-exclude@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.1.1.tgz#4d84964b0966b0087ecc334a2ce002d3d9341e26" @@ -2458,6 +2734,14 @@ uglify-to-browserify@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" +uid-number@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" + +user-home@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190" + util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" @@ -2466,6 +2750,12 @@ uuid@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" +v8flags@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.1.1.tgz#aab1a1fa30d45f88dd321148875ac02c0b55e5b4" + dependencies: + user-home "^1.1.1" + validate-npm-package-license@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" @@ -2522,6 +2812,12 @@ which@^1.2.12, which@^1.2.9: dependencies: isexe "^2.0.0" +wide-align@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" + dependencies: + string-width "^1.0.2" + window-size@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" From b0a8db412dacbf7883a0aacfd676a1cd01e30b4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Mon, 4 Sep 2017 19:26:03 +1000 Subject: [PATCH 09/41] Updating require paths in tests --- test/index.test.js | 4 ++-- test/script.test.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/test/index.test.js b/test/index.test.js index a0c4333..226f1d0 100644 --- a/test/index.test.js +++ b/test/index.test.js @@ -1,6 +1,6 @@ /* eslint-env jest */ -const api = require('../lib/index') -const { RunJSError } = require('../lib/common') +const api = require('../src/index') +const { RunJSError } = require('../src/common') process.env.RUNJS_TEST = 'runjs test' diff --git a/test/script.test.js b/test/script.test.js index 54039f1..9893de0 100644 --- a/test/script.test.js +++ b/test/script.test.js @@ -1,5 +1,5 @@ /* eslint-env jest */ -const script = require('../lib/script') +const script = require('../src/script') describe('script', () => { let logger From daeb2829238b926204dbbf125816427a3f119a48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Mon, 4 Sep 2017 19:26:31 +1000 Subject: [PATCH 10/41] Declare basic types for index --- src/index.js | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/index.js b/src/index.js index 383a020..3c59487 100644 --- a/src/index.js +++ b/src/index.js @@ -1,12 +1,13 @@ -const childProcess = require('child_process') +// @flow +const { execSync, spawn } = require('child_process') const path = require('path') const { RunJSError, logger } = require('./common') const loggerAlias = logger -function runSync (command, options) { +function runSync (command: string, options: any) : ?string { try { - const buffer = childProcess.execSync(command, options) + const buffer = execSync(command, options) if (buffer) { return buffer.toString() } @@ -16,9 +17,9 @@ function runSync (command, options) { } } -function runAsync (command, options) { +function runAsync (command: string, options: any): Promise { return new Promise((resolve, reject) => { - const asyncProcess = childProcess.spawn(command, options) + const asyncProcess = spawn(command, options) let output = null asyncProcess.on('error', (error) => { @@ -48,7 +49,7 @@ function runAsync (command, options) { }) } -function run (command, options = {}, logger = loggerAlias) { +function run (command: string, options: any = {}, logger = loggerAlias) { const binPath = path.resolve('./node_modules/.bin') // Pick relevant option keys and set default values @@ -75,7 +76,7 @@ function run (command, options = {}, logger = loggerAlias) { return runSync(command, options) } -function option (thisObj, name) { +function option (thisObj: any, name: string) { return (thisObj && thisObj.options && thisObj.options[name]) || null } From c0edd3fc070d05aacd0a40e3dda67da5083d8eb2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Mon, 4 Sep 2017 19:27:59 +1000 Subject: [PATCH 11/41] Include flow check inside npm test script --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 945a18a..1e9d801 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ "lint": "eslint src/ bin/ test/*.test.js", "flow": "flow", "build": "babel src/ --out-dir lib/", - "test": "yarn run lint && yarn run test:coverage && yarn run build && yarn run test:e2e", + "test": "yarn run lint && yarn run flow -- check && yarn run test:coverage && yarn run build && yarn run test:e2e", "test:coverage": "jest --coverage", "test:unit": "jest", "test:watch": "jest --watch", From b37dcf6be966379d89289b78ae6a6b2e2707905a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Mon, 4 Sep 2017 20:17:01 +1000 Subject: [PATCH 12/41] Set flowconfig --- .flowconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/.flowconfig b/.flowconfig index 363b337..d2c2552 100644 --- a/.flowconfig +++ b/.flowconfig @@ -7,3 +7,4 @@ [lints] [options] +module.ignore_non_literal_requires=true From ef71aab275c6a8821afa78b3010a3d6d1bacbdbc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Mon, 4 Sep 2017 20:17:26 +1000 Subject: [PATCH 13/41] Fix most of flow errors --- src/common.js | 13 +++++++------ src/index.js | 28 +++++++++++++++++++++------- src/script.js | 15 ++++++++------- 3 files changed, 36 insertions(+), 20 deletions(-) diff --git a/src/common.js b/src/common.js index 389dd27..e778df5 100644 --- a/src/common.js +++ b/src/common.js @@ -1,7 +1,8 @@ +// @flow const chalk = require('chalk') // Needed to use ES5 inheritance, because of issues with Error subclassing for Babel -function RunJSError (message) { +function RunJSError (message: string) { this.name = 'RunJSError' this.message = message && message.split('\n')[0] // assign only first line } @@ -9,19 +10,19 @@ RunJSError.prototype = Object.create(Error.prototype) RunJSError.prototype.constructor = RunJSError const logger = { - debug: (...args) => { + debug: (...args: Array) => { console.log(chalk.blue(...args)) }, - info: (...args) => { + info: (...args: Array) => { console.log(chalk.bold(...args)) }, - log: (...args) => { + log: (...args: Array) => { console.log(...args) }, - warning: (...args) => { + warning: (...args: Array) => { console.warn(chalk.yellow(...args)) }, - error: (...args) => { + error: (...args: Array) => { console.error(chalk.red(...args)) } } diff --git a/src/index.js b/src/index.js index 3c59487..cba751c 100644 --- a/src/index.js +++ b/src/index.js @@ -5,9 +5,21 @@ const { RunJSError, logger } = require('./common') const loggerAlias = logger -function runSync (command: string, options: any) : ?string { +type Options = { + cwd?: string, + async?: boolean, + stdio?: string | Array, + env?: Object, + timeout?: number +} + +function runSync (command: string, options: Options) : ?string { try { - const buffer = execSync(command, options) + const buffer = execSync(command, { + cwd: options.cwd, + stdio: options.stdio, + env: options.cwd + }) if (buffer) { return buffer.toString() } @@ -17,10 +29,10 @@ function runSync (command: string, options: any) : ?string { } } -function runAsync (command: string, options: any): Promise { +function runAsync (command: string, options: Options): Promise { return new Promise((resolve, reject) => { const asyncProcess = spawn(command, options) - let output = null + let output : ?string = null asyncProcess.on('error', (error) => { reject(new Error(`Failed to start command: ${command}; ${error}`)) @@ -35,7 +47,7 @@ function runAsync (command: string, options: any): Promise { }) if (options.stdio === 'pipe') { - asyncProcess.stdout.on('data', (buffer) => { + asyncProcess.stdout.on('data', (buffer: Buffer) => { output = buffer.toString() }) } @@ -49,7 +61,7 @@ function runAsync (command: string, options: any): Promise { }) } -function run (command: string, options: any = {}, logger = loggerAlias) { +function run (command: string, options: Options = {}, logger = loggerAlias) { const binPath = path.resolve('./node_modules/.bin') // Pick relevant option keys and set default values @@ -63,7 +75,9 @@ function run (command: string, options: any = {}, logger = loggerAlias) { } // Include in PATH node_modules bin path - options.env.PATH = [binPath, options.env.PATH || process.env.PATH].join(path.delimiter) + if (typeof options.env !== 'undefined') { + options.env.PATH = [binPath, options.env.PATH || process.env.PATH].join(path.delimiter) + } logger.info(command) diff --git a/src/script.js b/src/script.js index 6855058..ebaa2dc 100644 --- a/src/script.js +++ b/src/script.js @@ -1,3 +1,4 @@ +// @flow const path = require('path') const fs = require('fs') const { RunJSError, logger } = require('./common') @@ -5,16 +6,16 @@ const getParamNames = require('get-parameter-names') const DEFAULT_RUNFILE_PATH = './runfile.js' -function requirer (filePath) { +function requirer (filePath: string): Object { return require(path.resolve(filePath)) } -function hasAccess (filePath) { +function hasAccess (filePath: string): void { return fs.accessSync(path.resolve(filePath)) } -function getConfig (filePath) { - let config +function getConfig (filePath: string): Object { + let config: Object try { config = requirer(filePath).runjs || {} } catch (error) { @@ -23,7 +24,7 @@ function getConfig (filePath) { return config } -function load (config, logger, requirer, access) { +function load (config: Object, logger, requirer: (string) => any, access: (string) => void) { const runfilePath = config['runfile'] || DEFAULT_RUNFILE_PATH // Load requires if given in config if (Array.isArray(config['requires'])) { @@ -74,7 +75,7 @@ function parseArgs (args) { } } -function describe (obj, logger, namespace) { +function describe (obj: Object, logger, namespace: ?string) { if (!namespace) { logger.debug('Available tasks:\n') } @@ -118,7 +119,7 @@ function help (task, logger) { logger.log(' ') } -function call (obj, args, logger, depth = 0) { +function call (obj: Object, args: Array, logger, depth: number = 0) { const taskName = args[0] if (typeof obj[taskName] === 'function') { From c54152065b74e87695fb3afe49c7f19a40e3910e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Mon, 4 Sep 2017 20:29:18 +1000 Subject: [PATCH 14/41] Flow errors fixes --- src/index.js | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/index.js b/src/index.js index cba751c..c79ff32 100644 --- a/src/index.js +++ b/src/index.js @@ -15,11 +15,7 @@ type Options = { function runSync (command: string, options: Options) : ?string { try { - const buffer = execSync(command, { - cwd: options.cwd, - stdio: options.stdio, - env: options.cwd - }) + const buffer = execSync(command, options) if (buffer) { return buffer.toString() } @@ -74,9 +70,11 @@ function run (command: string, options: Options = {}, logger = loggerAlias) { shell: true } + const env = options.env + // Include in PATH node_modules bin path - if (typeof options.env !== 'undefined') { - options.env.PATH = [binPath, options.env.PATH || process.env.PATH].join(path.delimiter) + if (env) { + env.PATH = [binPath, env.PATH || process.env.PATH].join(path.delimiter) } logger.info(command) @@ -90,7 +88,7 @@ function run (command: string, options: Options = {}, logger = loggerAlias) { return runSync(command, options) } -function option (thisObj: any, name: string) { +function option (thisObj: ?Object, name: string): mixed { return (thisObj && thisObj.options && thisObj.options[name]) || null } From 74fb1cb80069700d21871f5aa1be34cd8c4f66b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Mon, 4 Sep 2017 20:44:16 +1000 Subject: [PATCH 15/41] Fixing flow errors part 2 --- src/index.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/index.js b/src/index.js index c79ff32..7773dcd 100644 --- a/src/index.js +++ b/src/index.js @@ -13,7 +13,7 @@ type Options = { timeout?: number } -function runSync (command: string, options: Options) : ?string { +function runSync (command: string, options: Object) : ?string { try { const buffer = execSync(command, options) if (buffer) { @@ -25,7 +25,7 @@ function runSync (command: string, options: Options) : ?string { } } -function runAsync (command: string, options: Options): Promise { +function runAsync (command: string, options: Object): Promise { return new Promise((resolve, reject) => { const asyncProcess = spawn(command, options) let output : ?string = null From 3687c47ce2cc1284de74e754f44b044d7f9fe505 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Mon, 4 Sep 2017 20:53:53 +1000 Subject: [PATCH 16/41] Refactor typings --- src/index.js | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/src/index.js b/src/index.js index 7773dcd..63683ba 100644 --- a/src/index.js +++ b/src/index.js @@ -13,9 +13,15 @@ type Options = { timeout?: number } -function runSync (command: string, options: Object) : ?string { +function runSync (command: string, options: Options) : ?string { try { - const buffer = execSync(command, options) + const nextOptions = { + cwd: options.cwd, + env: options.env, + stdio: options.stdio, + timeout: options.timeout + } + const buffer = execSync(command, nextOptions) if (buffer) { return buffer.toString() } @@ -25,9 +31,14 @@ function runSync (command: string, options: Object) : ?string { } } -function runAsync (command: string, options: Object): Promise { +function runAsync (command: string, options: Options): Promise { return new Promise((resolve, reject) => { - const asyncProcess = spawn(command, options) + const nextOptions = { + cwd: options.cwd, + env: options.env, + stdio: options.stdio + } + const asyncProcess = spawn(command, nextOptions) let output : ?string = null asyncProcess.on('error', (error) => { From 9d358f00d4be52da1ac693c41e70e9ee60693f75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Mon, 4 Sep 2017 21:02:44 +1000 Subject: [PATCH 17/41] Fixing tests --- src/index.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/index.js b/src/index.js index 63683ba..8f48c2e 100644 --- a/src/index.js +++ b/src/index.js @@ -10,7 +10,8 @@ type Options = { async?: boolean, stdio?: string | Array, env?: Object, - timeout?: number + timeout?: number, + shell?: boolean } function runSync (command: string, options: Options) : ?string { @@ -36,7 +37,8 @@ function runAsync (command: string, options: Options): Promise { const nextOptions = { cwd: options.cwd, env: options.env, - stdio: options.stdio + stdio: options.stdio, + shell: options.shell } const asyncProcess = spawn(command, nextOptions) let output : ?string = null From 00cf13bc6b37bbdc162c72800d3ed05f82d56869 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Mon, 4 Sep 2017 21:11:20 +1000 Subject: [PATCH 18/41] Create Logger class --- src/common.js | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/common.js b/src/common.js index e778df5..1945faa 100644 --- a/src/common.js +++ b/src/common.js @@ -9,24 +9,26 @@ function RunJSError (message: string) { RunJSError.prototype = Object.create(Error.prototype) RunJSError.prototype.constructor = RunJSError -const logger = { - debug: (...args: Array) => { +class Logger { + debug (...args: Array) { console.log(chalk.blue(...args)) - }, - info: (...args: Array) => { + } + info (...args: Array) { console.log(chalk.bold(...args)) - }, - log: (...args: Array) => { + } + log (...args: Array) { console.log(...args) - }, - warning: (...args: Array) => { + } + warning (...args: Array) { console.warn(chalk.yellow(...args)) - }, - error: (...args: Array) => { + } + error (...args: Array) { console.error(chalk.red(...args)) } } +const logger = new Logger() + module.exports = { RunJSError, logger From e4e664dceebd2c4944c861524335665d8b3f55d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Mon, 4 Sep 2017 21:26:33 +1000 Subject: [PATCH 19/41] Improving types declarations --- src/common.js | 3 ++- src/script.js | 12 ++++++------ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/common.js b/src/common.js index 1945faa..ae3e433 100644 --- a/src/common.js +++ b/src/common.js @@ -31,5 +31,6 @@ const logger = new Logger() module.exports = { RunJSError, - logger + logger, + Logger } diff --git a/src/script.js b/src/script.js index ebaa2dc..823831b 100644 --- a/src/script.js +++ b/src/script.js @@ -1,7 +1,7 @@ // @flow const path = require('path') const fs = require('fs') -const { RunJSError, logger } = require('./common') +const { RunJSError, logger, Logger } = require('./common') const getParamNames = require('get-parameter-names') const DEFAULT_RUNFILE_PATH = './runfile.js' @@ -24,7 +24,7 @@ function getConfig (filePath: string): Object { return config } -function load (config: Object, logger, requirer: (string) => any, access: (string) => void) { +function load (config: Object, logger: Logger, requirer: (string) => Object, access: (string) => void) { const runfilePath = config['runfile'] || DEFAULT_RUNFILE_PATH // Load requires if given in config if (Array.isArray(config['requires'])) { @@ -50,7 +50,7 @@ function load (config: Object, logger, requirer: (string) => any, access: (strin return runfile } -function parseArgs (args) { +function parseArgs (args: Array) { const options = {} const nextArgs = args.filter(arg => { const doubleDashMatch = arg.match(/^--([\w-.]+)=([\w-.]*)$/) || arg.match(/^--([\w-.]+)$/) @@ -75,7 +75,7 @@ function parseArgs (args) { } } -function describe (obj: Object, logger, namespace: ?string) { +function describe (obj: Object, logger: Logger, namespace: ?string) { if (!namespace) { logger.debug('Available tasks:\n') } @@ -104,7 +104,7 @@ function describe (obj: Object, logger, namespace: ?string) { }) } -function help (task, logger) { +function help (task: Function, logger: Logger) { logger.log(' ') logger.info('ARGUMENTS') const params = getParamNames(task) @@ -119,7 +119,7 @@ function help (task, logger) { logger.log(' ') } -function call (obj: Object, args: Array, logger, depth: number = 0) { +function call (obj: Object, args: Array, logger: Logger, depth: number = 0) { const taskName = args[0] if (typeof obj[taskName] === 'function') { From 3b5012c165bbec3e21b0a9dcab2a852972c8dee7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Mon, 4 Sep 2017 21:31:43 +1000 Subject: [PATCH 20/41] Declaring Config type --- src/script.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/script.js b/src/script.js index 823831b..bb08e91 100644 --- a/src/script.js +++ b/src/script.js @@ -6,6 +6,11 @@ const getParamNames = require('get-parameter-names') const DEFAULT_RUNFILE_PATH = './runfile.js' +type Config = { + runfile?: string, + requires?: Array +} + function requirer (filePath: string): Object { return require(path.resolve(filePath)) } @@ -14,7 +19,7 @@ function hasAccess (filePath: string): void { return fs.accessSync(path.resolve(filePath)) } -function getConfig (filePath: string): Object { +function getConfig (filePath: string): Config { let config: Object try { config = requirer(filePath).runjs || {} @@ -24,7 +29,7 @@ function getConfig (filePath: string): Object { return config } -function load (config: Object, logger: Logger, requirer: (string) => Object, access: (string) => void) { +function load (config: Config, logger: Logger, requirer: (string) => Object, access: (string) => void) { const runfilePath = config['runfile'] || DEFAULT_RUNFILE_PATH // Load requires if given in config if (Array.isArray(config['requires'])) { From 43d478c05aa432f8d914377ca813ba0a4d40f902 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Tue, 5 Sep 2017 21:20:03 +1000 Subject: [PATCH 21/41] Adding options helper --- README.md | 28 ++++++++++++++++++++++++++++ src/index.js | 10 +++++++++- test/index.test.js | 21 +++++++++++++++++++++ 3 files changed, 58 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 77a2ce5..91ca8d0 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,7 @@ Minimalistic building tool - [Why runjs ?](#why-runjs-) - [API](#api) - [run](#runcmd-options) + - [options](#optionsthis-name) - [option](#optionthis-name) - [Transpilers](#transpilers) - [Babel](#babel) @@ -165,8 +166,35 @@ to the terminal, but `run` function will resolve (async) / return (sync) `null`. +#### options(this) + +A helper which returns an object with options which were given through dash params of command +line script. + +Example: + +```bash +$ run lint --fix +``` + +```js +export function lint (path = '.') { + options(this).fix ? run(`eslint ${path} --fix`) : run(`eslint ${path}`) +} +``` + +Implementation of it is really simple: + +```js +function options (thisObj) { + return (thisObj && thisObj.options) || {} +} +``` + #### option(this, name) +> This helper is deprecated, use `options` instead + A helper which returns value for an option if given through dash param of command line script. diff --git a/src/index.js b/src/index.js index 8f48c2e..496ddeb 100644 --- a/src/index.js +++ b/src/index.js @@ -101,11 +101,19 @@ function run (command: string, options: Options = {}, logger = loggerAlias) { return runSync(command, options) } +/** + * @deprecated + */ function option (thisObj: ?Object, name: string): mixed { return (thisObj && thisObj.options && thisObj.options[name]) || null } +function options (thisObj: ?Object): Object { + return (thisObj && thisObj.options) || {} +} + module.exports = { run, - option + option, + options } diff --git a/test/index.test.js b/test/index.test.js index 226f1d0..d24a8d7 100644 --- a/test/index.test.js +++ b/test/index.test.js @@ -109,4 +109,25 @@ describe('api', () => { expect(api.option({}, 'ghost')).toBe(null) }) }) + + describe('options()', () => { + let thisStub + + beforeEach(() => { + thisStub = { + options: { + test: 'abcdef' + } + } + }) + + it('returns options object', () => { + expect(api.options(thisStub)).toEqual(thisStub.options) + }) + + it('returns empty object if options not found', () => { + expect(api.options(null)).toEqual({}) + expect(api.options({})).toEqual({}) + }) + }) }) From cfc4043a43a4d1232b16c221bebb114fb7df1f3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Tue, 5 Sep 2017 21:35:19 +1000 Subject: [PATCH 22/41] Improving type declarations --- src/index.js | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/index.js b/src/index.js index 496ddeb..8ffe79b 100644 --- a/src/index.js +++ b/src/index.js @@ -10,8 +10,7 @@ type Options = { async?: boolean, stdio?: string | Array, env?: Object, - timeout?: number, - shell?: boolean + timeout?: number } function runSync (command: string, options: Options) : ?string { @@ -22,7 +21,7 @@ function runSync (command: string, options: Options) : ?string { stdio: options.stdio, timeout: options.timeout } - const buffer = execSync(command, nextOptions) + const buffer: string | Buffer = execSync(command, nextOptions) if (buffer) { return buffer.toString() } @@ -38,7 +37,7 @@ function runAsync (command: string, options: Options): Promise { cwd: options.cwd, env: options.env, stdio: options.stdio, - shell: options.shell + shell: true } const asyncProcess = spawn(command, nextOptions) let output : ?string = null @@ -79,8 +78,7 @@ function run (command: string, options: Options = {}, logger = loggerAlias) { cwd: options.cwd, async: !!options.async, stdio: options.stdio || 'inherit', - timeout: options.timeout, - shell: true + timeout: options.timeout } const env = options.env From a3eee6e5b2eade89ce00876edba67dc80e49f9a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Tue, 5 Sep 2017 21:46:33 +1000 Subject: [PATCH 23/41] Improving type declarations --- src/index.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/index.js b/src/index.js index 8ffe79b..43f5d2e 100644 --- a/src/index.js +++ b/src/index.js @@ -25,7 +25,7 @@ function runSync (command: string, options: Options) : ?string { if (buffer) { return buffer.toString() } - return buffer + return null } catch (error) { throw new RunJSError(error.message) } @@ -42,11 +42,11 @@ function runAsync (command: string, options: Options): Promise { const asyncProcess = spawn(command, nextOptions) let output : ?string = null - asyncProcess.on('error', (error) => { - reject(new Error(`Failed to start command: ${command}; ${error}`)) + asyncProcess.on('error', (error: Error) => { + reject(new Error(`Failed to start command: ${command}; ${error.toString()}`)) }) - asyncProcess.on('close', (exitCode) => { + asyncProcess.on('close', (exitCode: number) => { if (exitCode === 0) { resolve(output) } else { @@ -69,11 +69,11 @@ function runAsync (command: string, options: Options): Promise { }) } -function run (command: string, options: Options = {}, logger = loggerAlias) { +function run (command: string, options: Options = {}, logger = loggerAlias): Promise | ?string { const binPath = path.resolve('./node_modules/.bin') // Pick relevant option keys and set default values - options = { + const nextOptions: Options = { env: options.env || process.env, cwd: options.cwd, async: !!options.async, @@ -92,11 +92,11 @@ function run (command: string, options: Options = {}, logger = loggerAlias) { // Handle async call if (options.async) { - return runAsync(command, options) + return runAsync(command, nextOptions) } // Handle sync call by default - return runSync(command, options) + return runSync(command, nextOptions) } /** From 34891e98a4a6883756f5cb340f14ca8ce281e870 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Wed, 6 Sep 2017 08:27:12 +1000 Subject: [PATCH 24/41] Docs: describe stdio option --- README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 91ca8d0..cf289d8 100644 --- a/README.md +++ b/README.md @@ -161,10 +161,14 @@ run('http-server .', {async: true, stdio: 'pipe'}).then((output) => { ``` For `stdio: 'pipe'` outputs are returned but not forwarded to the parent process thus -not printed out to the terminal. For `stdio: 'inherit'` (default) outputs are passed +not printed out to the terminal. + +For `stdio: 'inherit'` (default) outputs are passed to the terminal, but `run` function will resolve (async) / return (sync) `null`. +For `stdio: 'ignore'` nothing will be returned or printed + #### options(this) From 3e1f851d06c25c2aca99c6e797ae84f3a340d43e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Wed, 6 Sep 2017 17:45:46 +1000 Subject: [PATCH 25/41] Better tests for logging testing --- test/script.test.js | 109 ++++++++++++++++++++++++++++++-------------- 1 file changed, 74 insertions(+), 35 deletions(-) diff --git a/test/script.test.js b/test/script.test.js index 9893de0..8d84e14 100644 --- a/test/script.test.js +++ b/test/script.test.js @@ -2,15 +2,26 @@ const script = require('../src/script') describe('script', () => { - let logger + let logger, mockLogger beforeEach(() => { + mockLogger = jest.fn() logger = { - debug: jest.fn(), - info: jest.fn(), - log: jest.fn(), - warning: jest.fn(), - error: jest.fn() + debug: (...args) => { + mockLogger('debug', ...args) + }, + info: (...args) => { + mockLogger('info', ...args) + }, + log: (...args) => { + mockLogger('log', ...args) + }, + warning: (...args) => { + mockLogger('warning', ...args) + }, + error: (...args) => { + mockLogger('error', ...args) + } } }) @@ -107,23 +118,28 @@ describe('script', () => { it('should log list of methods available in the object', () => { script.describe(obj, logger) - expect(logger.debug).toHaveBeenCalledTimes(1) - expect(logger.info).toHaveBeenCalledTimes(4) - expect(logger.debug).toHaveBeenCalledWith('Available tasks:\n') - expect(logger.info).toHaveBeenCalledWith('a', '') - expect(logger.info).toHaveBeenCalledWith('b', '') + expect(mockLogger.mock.calls).toEqual([ + ['debug', 'Available tasks:\n'], + ['info', 'a', ''], + ['info', ' '], + ['info', 'b', ''], + ['info', ' '] + ]) }) it('should log list of methods with description for each one if provided', () => { obj.a.help = 'Description for method a' obj.b.help = 'Description for method b' script.describe(obj, logger) - expect(logger.debug).toHaveBeenCalledWith('Available tasks:\n') - expect(logger.info).toHaveBeenCalledWith('a', '') - expect(logger.log).toHaveBeenCalledWith('Description for method a') - expect(logger.info).toHaveBeenCalledWith('b', '') - expect(logger.log).toHaveBeenCalledWith('Description for method b') - expect(logger.info).toHaveBeenCalledTimes(4) + expect(mockLogger.mock.calls).toEqual([ + ['debug', 'Available tasks:\n'], + ['info', 'a', ''], + ['log', 'Description for method a'], + ['info', ' '], + ['info', 'b', ''], + ['log', 'Description for method b'], + ['info', ' '] + ]) }) it('should log list of name spaced / nested methods', () => { @@ -139,22 +155,32 @@ describe('script', () => { obj.c.e.f.help = 'Description for method f' script.describe(obj, logger) - expect(logger.debug).toHaveBeenCalledWith('Available tasks:\n') - expect(logger.info).toHaveBeenCalledWith('a', '') - expect(logger.info).toHaveBeenCalledWith('b', '') - expect(logger.info).toHaveBeenCalledWith('c:d', '') - expect(logger.info).toHaveBeenCalledWith('c:e:f', '') - expect(logger.log).toHaveBeenCalledWith('Description for method f') - expect(logger.info).toHaveBeenCalledWith('c:e:g', '') - expect(logger.info).toHaveBeenCalledTimes(10) + expect(mockLogger.mock.calls).toEqual([ + ['debug', 'Available tasks:\n'], + ['info', 'a', ''], + ['info', ' '], + ['info', 'b', ''], + ['info', ' '], + ['info', 'c:d', ''], + ['info', ' '], + ['info', 'c:e:f', ''], + ['log', 'Description for method f'], + ['info', ' '], + ['info', 'c:e:g', ''], + ['info', ' '] + ]) }) it('should log list of methods with available arguments', () => { obj.b = (arg1, arg2) => {} script.describe(obj, logger) - expect(logger.debug).toHaveBeenCalledWith('Available tasks:\n') - expect(logger.info).toHaveBeenCalledWith('a', '') - expect(logger.info).toHaveBeenCalledWith('b', '[arg1 arg2]') + expect(mockLogger.mock.calls).toEqual([ + ['debug', 'Available tasks:\n'], + ['info', 'a', ''], + ['info', ' '], + ['info', 'b', '[arg1 arg2]'], + ['info', ' '] + ]) }) }) @@ -259,16 +285,29 @@ describe('script', () => { obj.b.c = (arg1, arg2) => {} obj.b.c.help = 'Test description' script.call(obj, ['b:c', '--help'], logger) - expect(logger.info.mock.calls).toEqual([['ARGUMENTS'], ['DESCRIPTION']]) - expect(logger.log.mock.calls).toEqual([[' '], ['[arg1 arg2]'], [' '], ['Test description'], [' ']]) - - logger.info.mockClear() - logger.log.mockClear() + expect(mockLogger.mock.calls).toEqual([ + ['log', ' '], + ['info', 'ARGUMENTS'], + ['log', '[arg1 arg2]'], + ['log', ' '], + ['info', 'DESCRIPTION'], + ['log', 'Test description'], + ['log', ' '] + ]) + + mockLogger.mockClear() obj.b.c = () => {} script.call(obj, ['b:c', '--help'], logger) - expect(logger.info.mock.calls).toEqual([['ARGUMENTS'], ['DESCRIPTION']]) - expect(logger.log.mock.calls).toEqual([[' '], ['None'], [' '], ['None'], [' ']]) + expect(mockLogger.mock.calls).toEqual([ + ['log', ' '], + ['info', 'ARGUMENTS'], + ['log', 'None'], + ['log', ' '], + ['info', 'DESCRIPTION'], + ['log', 'None'], + ['log', ' '] + ]) }) }) }) From 9765b038fa9bf02c6517bf3bc8e8686a877141cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Wed, 6 Sep 2017 17:46:06 +1000 Subject: [PATCH 26/41] Add to npmignore src directory --- .npmignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.npmignore b/.npmignore index 7de7f21..e9078eb 100644 --- a/.npmignore +++ b/.npmignore @@ -2,3 +2,4 @@ .travis.yml node_modules /test +/src From 0beef347e3b117cb64359184aa543749cccb855d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Wed, 6 Sep 2017 21:47:20 +1000 Subject: [PATCH 27/41] Print only first line of description for all methods list --- src/script.js | 2 +- test/script.test.js | 43 +++++++++++++++++++++++++++++-------------- 2 files changed, 30 insertions(+), 15 deletions(-) diff --git a/src/script.js b/src/script.js index bb08e91..fd10820 100644 --- a/src/script.js +++ b/src/script.js @@ -100,7 +100,7 @@ function describe (obj: Object, logger: Logger, namespace: ?string) { const paramsDoc = funcParams.length ? `[${funcParams.join(' ')}]` : '' logger.info(nextNamespace, paramsDoc) if (help) { - logger.log(help) + logger.log(help.split('\n')[0]) } logger.info(' ') } else if (typeof value === 'object') { diff --git a/test/script.test.js b/test/script.test.js index 8d84e14..286b141 100644 --- a/test/script.test.js +++ b/test/script.test.js @@ -116,7 +116,7 @@ describe('script', () => { } }) - it('should log list of methods available in the object', () => { + it('should log list of methods', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ ['debug', 'Available tasks:\n'], @@ -127,7 +127,19 @@ describe('script', () => { ]) }) - it('should log list of methods with description for each one if provided', () => { + it('should log list of methods with available arguments', () => { + obj.b = (arg1, arg2) => {} + script.describe(obj, logger) + expect(mockLogger.mock.calls).toEqual([ + ['debug', 'Available tasks:\n'], + ['info', 'a', ''], + ['info', ' '], + ['info', 'b', '[arg1 arg2]'], + ['info', ' '] + ]) + }) + + it('should log method descriptions', () => { obj.a.help = 'Description for method a' obj.b.help = 'Description for method b' script.describe(obj, logger) @@ -142,6 +154,21 @@ describe('script', () => { ]) }) + it('should log only first line of method descriptions', () => { + obj.a.help = 'Description for method a\nsecond line\nthird line' + obj.b.help = 'Description for method b' + script.describe(obj, logger) + expect(mockLogger.mock.calls).toEqual([ + ['debug', 'Available tasks:\n'], + ['info', 'a', ''], + ['log', 'Description for method a'], + ['info', ' '], + ['info', 'b', ''], + ['log', 'Description for method b'], + ['info', ' '] + ]) + }) + it('should log list of name spaced / nested methods', () => { obj.c = { d: () => {}, @@ -170,18 +197,6 @@ describe('script', () => { ['info', ' '] ]) }) - - it('should log list of methods with available arguments', () => { - obj.b = (arg1, arg2) => {} - script.describe(obj, logger) - expect(mockLogger.mock.calls).toEqual([ - ['debug', 'Available tasks:\n'], - ['info', 'a', ''], - ['info', ' '], - ['info', 'b', '[arg1 arg2]'], - ['info', ' '] - ]) - }) }) describe('call()', () => { From fcfc58d7d75b3d4689744cdd5444d8ac2b5ac7c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Wed, 6 Sep 2017 22:06:41 +1000 Subject: [PATCH 28/41] Improve methods lists docs --- src/script.js | 18 +++++++++++++----- test/script.test.js | 45 ++++++++++++++------------------------------- 2 files changed, 27 insertions(+), 36 deletions(-) diff --git a/src/script.js b/src/script.js index fd10820..cdd2ec2 100644 --- a/src/script.js +++ b/src/script.js @@ -91,18 +91,26 @@ function describe (obj: Object, logger: Logger, namespace: ?string) { const help = value.help if (typeof value === 'function') { - let funcParams + // Add task name + let funcParams, logArgs = [nextNamespace] + + // Add task params try { funcParams = getParamNames(value) } catch (error) { funcParams = [] } - const paramsDoc = funcParams.length ? `[${funcParams.join(' ')}]` : '' - logger.info(nextNamespace, paramsDoc) + if (Array.isArray(funcParams) && funcParams.length) { + logArgs.push(`[${funcParams.join(' ')}]`) + } + + // Add description if (help) { - logger.log(help.split('\n')[0]) + logArgs.push('-', help.split('\n')[0]) } - logger.info(' ') + + // Log + logger.log(...logArgs) } else if (typeof value === 'object') { describe(value, logger, nextNamespace) } diff --git a/test/script.test.js b/test/script.test.js index 286b141..40d9114 100644 --- a/test/script.test.js +++ b/test/script.test.js @@ -120,10 +120,8 @@ describe('script', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ ['debug', 'Available tasks:\n'], - ['info', 'a', ''], - ['info', ' '], - ['info', 'b', ''], - ['info', ' '] + ['log', 'a'], + ['log', 'b'] ]) }) @@ -132,25 +130,20 @@ describe('script', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ ['debug', 'Available tasks:\n'], - ['info', 'a', ''], - ['info', ' '], - ['info', 'b', '[arg1 arg2]'], - ['info', ' '] + ['log', 'a'], + ['log', 'b', '[arg1 arg2]'] ]) }) it('should log method descriptions', () => { + obj.b = (arg1, arg2) => {} obj.a.help = 'Description for method a' obj.b.help = 'Description for method b' script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ ['debug', 'Available tasks:\n'], - ['info', 'a', ''], - ['log', 'Description for method a'], - ['info', ' '], - ['info', 'b', ''], - ['log', 'Description for method b'], - ['info', ' '] + ['log', 'a', '-', 'Description for method a'], + ['log', 'b', '[arg1 arg2]', '-', 'Description for method b'] ]) }) @@ -160,12 +153,8 @@ describe('script', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ ['debug', 'Available tasks:\n'], - ['info', 'a', ''], - ['log', 'Description for method a'], - ['info', ' '], - ['info', 'b', ''], - ['log', 'Description for method b'], - ['info', ' '] + ['log', 'a', '-', 'Description for method a'], + ['log', 'b', '-', 'Description for method b'] ]) }) @@ -184,17 +173,11 @@ describe('script', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ ['debug', 'Available tasks:\n'], - ['info', 'a', ''], - ['info', ' '], - ['info', 'b', ''], - ['info', ' '], - ['info', 'c:d', ''], - ['info', ' '], - ['info', 'c:e:f', ''], - ['log', 'Description for method f'], - ['info', ' '], - ['info', 'c:e:g', ''], - ['info', ' '] + ['log', 'a'], + ['log', 'b'], + ['log', 'c:d'], + ['log', 'c:e:f', '-', 'Description for method f'], + ['log', 'c:e:g'] ]) }) }) From afe0cdc1cecb0086d074630ae75ce60557879b21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Wed, 6 Sep 2017 22:17:10 +1000 Subject: [PATCH 29/41] Reform logger interface --- src/common.js | 5 +---- src/index.js | 2 +- src/script.js | 6 +++--- test/index.test.js | 11 +++++------ test/script.test.js | 25 +++++++++++-------------- 5 files changed, 21 insertions(+), 28 deletions(-) diff --git a/src/common.js b/src/common.js index ae3e433..3260075 100644 --- a/src/common.js +++ b/src/common.js @@ -10,10 +10,7 @@ RunJSError.prototype = Object.create(Error.prototype) RunJSError.prototype.constructor = RunJSError class Logger { - debug (...args: Array) { - console.log(chalk.blue(...args)) - } - info (...args: Array) { + title (...args: Array) { console.log(chalk.bold(...args)) } log (...args: Array) { diff --git a/src/index.js b/src/index.js index 43f5d2e..2056fe8 100644 --- a/src/index.js +++ b/src/index.js @@ -88,7 +88,7 @@ function run (command: string, options: Options = {}, logger = loggerAlias): Pro env.PATH = [binPath, env.PATH || process.env.PATH].join(path.delimiter) } - logger.info(command) + logger.title(command) // Handle async call if (options.async) { diff --git a/src/script.js b/src/script.js index cdd2ec2..b26ae7d 100644 --- a/src/script.js +++ b/src/script.js @@ -82,7 +82,7 @@ function parseArgs (args: Array) { function describe (obj: Object, logger: Logger, namespace: ?string) { if (!namespace) { - logger.debug('Available tasks:\n') + logger.log('Available tasks:\n') } Object.keys(obj).forEach((key) => { @@ -119,7 +119,7 @@ function describe (obj: Object, logger: Logger, namespace: ?string) { function help (task: Function, logger: Logger) { logger.log(' ') - logger.info('ARGUMENTS') + logger.title('ARGUMENTS') const params = getParamNames(task) if (params.length) { logger.log(`[${params.join(' ')}]`) @@ -127,7 +127,7 @@ function help (task: Function, logger: Logger) { logger.log('None') } logger.log(' ') - logger.info('DESCRIPTION') + logger.title('DESCRIPTION') logger.log(task.help || 'None') logger.log(' ') } diff --git a/test/index.test.js b/test/index.test.js index d24a8d7..0d146e5 100644 --- a/test/index.test.js +++ b/test/index.test.js @@ -9,8 +9,7 @@ describe('api', () => { beforeEach(() => { logger = { - debug: jest.fn(), - info: jest.fn(), + title: jest.fn(), log: jest.fn(), warning: jest.fn(), error: jest.fn() @@ -23,7 +22,7 @@ describe('api', () => { it('should execute basic shell commands', () => { const output = api.run('echo "echo test"', {stdio: 'pipe'}, logger) expect(output).toEqual('echo test\n') - expect(logger.info).toHaveBeenCalledWith('echo "echo test"') + expect(logger.title).toHaveBeenCalledWith('echo "echo test"') }) it('should throw an error if command fails', () => { @@ -42,7 +41,7 @@ describe('api', () => { it('should execute basic shell commands', () => { const output = api.run('echo "echo test"', {}, logger) expect(output).toEqual(null) - expect(logger.info).toHaveBeenCalledWith('echo "echo test"') + expect(logger.title).toHaveBeenCalledWith('echo "echo test"') }) }) }) @@ -52,7 +51,7 @@ describe('api', () => { it('should execute basic shell commands', (done) => { api.run('echo "echo test"', {async: true, stdio: 'pipe'}, logger).then((output) => { expect(output).toEqual('echo test\n') - expect(logger.info).toHaveBeenCalledWith('echo "echo test"') + expect(logger.title).toHaveBeenCalledWith('echo "echo test"') done() }) }) @@ -76,7 +75,7 @@ describe('api', () => { it('should execute basic shell commands', (done) => { api.run('echo "echo test"', {async: true}, logger).then((output) => { expect(output).toEqual(null) - expect(logger.info).toHaveBeenCalledWith('echo "echo test"') + expect(logger.title).toHaveBeenCalledWith('echo "echo test"') done() }) }) diff --git a/test/script.test.js b/test/script.test.js index 40d9114..091d789 100644 --- a/test/script.test.js +++ b/test/script.test.js @@ -7,11 +7,8 @@ describe('script', () => { beforeEach(() => { mockLogger = jest.fn() logger = { - debug: (...args) => { - mockLogger('debug', ...args) - }, - info: (...args) => { - mockLogger('info', ...args) + title: (...args) => { + mockLogger('title', ...args) }, log: (...args) => { mockLogger('log', ...args) @@ -119,7 +116,7 @@ describe('script', () => { it('should log list of methods', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['debug', 'Available tasks:\n'], + ['log', 'Available tasks:\n'], ['log', 'a'], ['log', 'b'] ]) @@ -129,7 +126,7 @@ describe('script', () => { obj.b = (arg1, arg2) => {} script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['debug', 'Available tasks:\n'], + ['log', 'Available tasks:\n'], ['log', 'a'], ['log', 'b', '[arg1 arg2]'] ]) @@ -141,7 +138,7 @@ describe('script', () => { obj.b.help = 'Description for method b' script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['debug', 'Available tasks:\n'], + ['log', 'Available tasks:\n'], ['log', 'a', '-', 'Description for method a'], ['log', 'b', '[arg1 arg2]', '-', 'Description for method b'] ]) @@ -152,7 +149,7 @@ describe('script', () => { obj.b.help = 'Description for method b' script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['debug', 'Available tasks:\n'], + ['log', 'Available tasks:\n'], ['log', 'a', '-', 'Description for method a'], ['log', 'b', '-', 'Description for method b'] ]) @@ -172,7 +169,7 @@ describe('script', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['debug', 'Available tasks:\n'], + ['log', 'Available tasks:\n'], ['log', 'a'], ['log', 'b'], ['log', 'c:d'], @@ -285,10 +282,10 @@ describe('script', () => { script.call(obj, ['b:c', '--help'], logger) expect(mockLogger.mock.calls).toEqual([ ['log', ' '], - ['info', 'ARGUMENTS'], + ['title', 'ARGUMENTS'], ['log', '[arg1 arg2]'], ['log', ' '], - ['info', 'DESCRIPTION'], + ['title', 'DESCRIPTION'], ['log', 'Test description'], ['log', ' '] ]) @@ -299,10 +296,10 @@ describe('script', () => { script.call(obj, ['b:c', '--help'], logger) expect(mockLogger.mock.calls).toEqual([ ['log', ' '], - ['info', 'ARGUMENTS'], + ['title', 'ARGUMENTS'], ['log', 'None'], ['log', ' '], - ['info', 'DESCRIPTION'], + ['title', 'DESCRIPTION'], ['log', 'None'], ['log', ' '] ]) From 516ae9e68a858627f825d03d707853a52bf41b52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Wed, 6 Sep 2017 22:20:38 +1000 Subject: [PATCH 30/41] api: Improve types --- src/index.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/index.js b/src/index.js index 2056fe8..6d6cd4a 100644 --- a/src/index.js +++ b/src/index.js @@ -1,9 +1,9 @@ // @flow const { execSync, spawn } = require('child_process') const path = require('path') -const { RunJSError, logger } = require('./common') +const { RunJSError, logger, Logger } = require('./common') -const loggerAlias = logger +const loggerAlias: Logger = logger type Options = { cwd?: string, @@ -69,7 +69,7 @@ function runAsync (command: string, options: Options): Promise { }) } -function run (command: string, options: Options = {}, logger = loggerAlias): Promise | ?string { +function run (command: string, options: Options = {}, logger: Logger = loggerAlias): Promise | ?string { const binPath = path.resolve('./node_modules/.bin') // Pick relevant option keys and set default values From 7578e7c3138e18b5d213b000849242b018780971 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Wed, 6 Sep 2017 22:30:50 +1000 Subject: [PATCH 31/41] Commands docs: using chalk directly --- src/script.js | 5 +++-- test/script.test.js | 37 +++++++++++++++++++------------------ 2 files changed, 22 insertions(+), 20 deletions(-) diff --git a/src/script.js b/src/script.js index b26ae7d..9f21d20 100644 --- a/src/script.js +++ b/src/script.js @@ -1,6 +1,7 @@ // @flow const path = require('path') const fs = require('fs') +const chalk = require('chalk') const { RunJSError, logger, Logger } = require('./common') const getParamNames = require('get-parameter-names') @@ -82,7 +83,7 @@ function parseArgs (args: Array) { function describe (obj: Object, logger: Logger, namespace: ?string) { if (!namespace) { - logger.log('Available tasks:\n') + logger.log(chalk.dim('Available tasks:\n')) } Object.keys(obj).forEach((key) => { @@ -92,7 +93,7 @@ function describe (obj: Object, logger: Logger, namespace: ?string) { if (typeof value === 'function') { // Add task name - let funcParams, logArgs = [nextNamespace] + let funcParams, logArgs = [chalk.bold(nextNamespace)] // Add task params try { diff --git a/test/script.test.js b/test/script.test.js index 091d789..66a4563 100644 --- a/test/script.test.js +++ b/test/script.test.js @@ -1,4 +1,5 @@ /* eslint-env jest */ +const chalk = require('chalk') const script = require('../src/script') describe('script', () => { @@ -116,9 +117,9 @@ describe('script', () => { it('should log list of methods', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', 'Available tasks:\n'], - ['log', 'a'], - ['log', 'b'] + ['log', chalk.dim('Available tasks:\n')], + ['log', chalk.bold('a')], + ['log', chalk.bold('b')] ]) }) @@ -126,9 +127,9 @@ describe('script', () => { obj.b = (arg1, arg2) => {} script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', 'Available tasks:\n'], - ['log', 'a'], - ['log', 'b', '[arg1 arg2]'] + ['log', chalk.dim('Available tasks:\n')], + ['log', chalk.bold('a')], + ['log', chalk.bold('b'), '[arg1 arg2]'] ]) }) @@ -138,9 +139,9 @@ describe('script', () => { obj.b.help = 'Description for method b' script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', 'Available tasks:\n'], - ['log', 'a', '-', 'Description for method a'], - ['log', 'b', '[arg1 arg2]', '-', 'Description for method b'] + ['log', chalk.dim('Available tasks:\n')], + ['log', chalk.bold('a'), '-', 'Description for method a'], + ['log', chalk.bold('b'), '[arg1 arg2]', '-', 'Description for method b'] ]) }) @@ -149,9 +150,9 @@ describe('script', () => { obj.b.help = 'Description for method b' script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', 'Available tasks:\n'], - ['log', 'a', '-', 'Description for method a'], - ['log', 'b', '-', 'Description for method b'] + ['log', chalk.dim('Available tasks:\n')], + ['log', chalk.bold('a'), '-', 'Description for method a'], + ['log', chalk.bold('b'), '-', 'Description for method b'] ]) }) @@ -169,12 +170,12 @@ describe('script', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', 'Available tasks:\n'], - ['log', 'a'], - ['log', 'b'], - ['log', 'c:d'], - ['log', 'c:e:f', '-', 'Description for method f'], - ['log', 'c:e:g'] + ['log', chalk.dim('Available tasks:\n')], + ['log', chalk.bold('a')], + ['log', chalk.bold('b')], + ['log', chalk.bold('c:d')], + ['log', chalk.bold('c:e:f'), '-', 'Description for method f'], + ['log', chalk.bold('c:e:g')] ]) }) }) From fa35098649c9d67695605183dd1f85a81f5c9c44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Wed, 6 Sep 2017 22:49:14 +1000 Subject: [PATCH 32/41] Styling Available tasks title --- src/script.js | 2 +- test/script.test.js | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/script.js b/src/script.js index 9f21d20..9b1ba6f 100644 --- a/src/script.js +++ b/src/script.js @@ -83,7 +83,7 @@ function parseArgs (args: Array) { function describe (obj: Object, logger: Logger, namespace: ?string) { if (!namespace) { - logger.log(chalk.dim('Available tasks:\n')) + logger.log(chalk.yellow('\nAvailable tasks:')) } Object.keys(obj).forEach((key) => { diff --git a/test/script.test.js b/test/script.test.js index 66a4563..35da6ba 100644 --- a/test/script.test.js +++ b/test/script.test.js @@ -117,7 +117,7 @@ describe('script', () => { it('should log list of methods', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', chalk.dim('Available tasks:\n')], + ['log', chalk.yellow('\nAvailable tasks:')], ['log', chalk.bold('a')], ['log', chalk.bold('b')] ]) @@ -127,7 +127,7 @@ describe('script', () => { obj.b = (arg1, arg2) => {} script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', chalk.dim('Available tasks:\n')], + ['log', chalk.yellow('\nAvailable tasks:')], ['log', chalk.bold('a')], ['log', chalk.bold('b'), '[arg1 arg2]'] ]) @@ -139,7 +139,7 @@ describe('script', () => { obj.b.help = 'Description for method b' script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', chalk.dim('Available tasks:\n')], + ['log', chalk.yellow('\nAvailable tasks:')], ['log', chalk.bold('a'), '-', 'Description for method a'], ['log', chalk.bold('b'), '[arg1 arg2]', '-', 'Description for method b'] ]) @@ -150,7 +150,7 @@ describe('script', () => { obj.b.help = 'Description for method b' script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', chalk.dim('Available tasks:\n')], + ['log', chalk.yellow('\nAvailable tasks:')], ['log', chalk.bold('a'), '-', 'Description for method a'], ['log', chalk.bold('b'), '-', 'Description for method b'] ]) @@ -170,7 +170,7 @@ describe('script', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', chalk.dim('Available tasks:\n')], + ['log', chalk.yellow('\nAvailable tasks:')], ['log', chalk.bold('a')], ['log', chalk.bold('b')], ['log', chalk.bold('c:d')], From da7f08d47e0ccdf0ec157d741c75190a59816cec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Wed, 6 Sep 2017 22:50:03 +1000 Subject: [PATCH 33/41] Fix linting error --- src/script.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/script.js b/src/script.js index 9b1ba6f..e33ce24 100644 --- a/src/script.js +++ b/src/script.js @@ -93,7 +93,8 @@ function describe (obj: Object, logger: Logger, namespace: ?string) { if (typeof value === 'function') { // Add task name - let funcParams, logArgs = [chalk.bold(nextNamespace)] + let funcParams + let logArgs = [chalk.bold(nextNamespace)] // Add task params try { From 1da6523b0528370367d249615679cedfee14d282 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Wed, 6 Sep 2017 22:53:12 +1000 Subject: [PATCH 34/41] Improve runfile in babel sandbox --- test/babel-sandbox/runfile.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/test/babel-sandbox/runfile.js b/test/babel-sandbox/runfile.js index 611bf81..fe79d1c 100644 --- a/test/babel-sandbox/runfile.js +++ b/test/babel-sandbox/runfile.js @@ -47,7 +47,7 @@ export const n1 = { console.log('Nested task nr 1 executed!') }, - 'nested2:echo': () => { + 'nested2:echo': (arg1, arg2) => { console.log('Nested task nr 2 executed!') }, @@ -57,7 +57,6 @@ export const n1 = { } } - echo.help = 'Simple echo task' n1.nested1.help = 'Description of nested task nr 1' -n1['nested2:echo'].help = 'Description of nested task nr 2' +n1['nested2:echo'].help = 'Description of nested task nr 2\nsecond line' From 6e5750e08dcbfe0b3c10dd3c07fc65a48f19c19b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Thu, 7 Sep 2017 18:56:40 +1000 Subject: [PATCH 35/41] Improve format of printed methods list --- package.json | 3 ++- src/script.js | 4 +++- test/script.test.js | 12 ++++++------ yarn.lock | 4 ++++ 4 files changed, 15 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index 1e9d801..454555f 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,8 @@ "homepage": "https://github.com/pawelgalazka/runjs#readme", "dependencies": { "chalk": "2.1.0", - "get-parameter-names": "0.3.0" + "get-parameter-names": "0.3.0", + "lodash.padend": "4.6.1" }, "devDependencies": { "babel-cli": "^6.26.0", diff --git a/src/script.js b/src/script.js index e33ce24..65a0403 100644 --- a/src/script.js +++ b/src/script.js @@ -2,6 +2,7 @@ const path = require('path') const fs = require('fs') const chalk = require('chalk') +const padEnd = require('lodash.padend') const { RunJSError, logger, Logger } = require('./common') const getParamNames = require('get-parameter-names') @@ -103,11 +104,12 @@ function describe (obj: Object, logger: Logger, namespace: ?string) { funcParams = [] } if (Array.isArray(funcParams) && funcParams.length) { - logArgs.push(`[${funcParams.join(' ')}]`) + logArgs[0] += ` [${funcParams.join(' ')}]` } // Add description if (help) { + logArgs[0] = padEnd(logArgs[0], 40) // format logArgs.push('-', help.split('\n')[0]) } diff --git a/test/script.test.js b/test/script.test.js index 35da6ba..e8ffcc0 100644 --- a/test/script.test.js +++ b/test/script.test.js @@ -129,7 +129,7 @@ describe('script', () => { expect(mockLogger.mock.calls).toEqual([ ['log', chalk.yellow('\nAvailable tasks:')], ['log', chalk.bold('a')], - ['log', chalk.bold('b'), '[arg1 arg2]'] + ['log', chalk.bold('b') + ' [arg1 arg2]'] ]) }) @@ -140,8 +140,8 @@ describe('script', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ ['log', chalk.yellow('\nAvailable tasks:')], - ['log', chalk.bold('a'), '-', 'Description for method a'], - ['log', chalk.bold('b'), '[arg1 arg2]', '-', 'Description for method b'] + ['log', chalk.bold('a') + ' ', '-', 'Description for method a'], + ['log', chalk.bold('b') + ' [arg1 arg2] ', '-', 'Description for method b'] ]) }) @@ -151,8 +151,8 @@ describe('script', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ ['log', chalk.yellow('\nAvailable tasks:')], - ['log', chalk.bold('a'), '-', 'Description for method a'], - ['log', chalk.bold('b'), '-', 'Description for method b'] + ['log', chalk.bold('a') + ' ', '-', 'Description for method a'], + ['log', chalk.bold('b') + ' ', '-', 'Description for method b'] ]) }) @@ -174,7 +174,7 @@ describe('script', () => { ['log', chalk.bold('a')], ['log', chalk.bold('b')], ['log', chalk.bold('c:d')], - ['log', chalk.bold('c:e:f'), '-', 'Description for method f'], + ['log', chalk.bold('c:e:f') + ' ', '-', 'Description for method f'], ['log', chalk.bold('c:e:g')] ]) }) diff --git a/yarn.lock b/yarn.lock index f4094b6..2952967 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1846,6 +1846,10 @@ lodash.cond@^4.3.0: version "4.5.2" resolved "https://registry.yarnpkg.com/lodash.cond/-/lodash.cond-4.5.2.tgz#f471a1da486be60f6ab955d17115523dd1d255d5" +lodash.padend@^4.6.1: + version "4.6.1" + resolved "https://registry.yarnpkg.com/lodash.padend/-/lodash.padend-4.6.1.tgz#53ccba047d06e158d311f45da625f4e49e6f166e" + lodash@^4.0.0, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.4, lodash@^4.3.0: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" From 7f9ceedd9be483735f8318632ff87d5d43d40299 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Thu, 7 Sep 2017 19:02:56 +1000 Subject: [PATCH 36/41] Improve terminal messages colors --- src/script.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/script.js b/src/script.js index 65a0403..d3f124e 100644 --- a/src/script.js +++ b/src/script.js @@ -36,13 +36,13 @@ function load (config: Config, logger: Logger, requirer: (string) => Object, acc // Load requires if given in config if (Array.isArray(config['requires'])) { config['requires'].forEach(modulePath => { - logger.log(`Requiring ${modulePath}...`) + logger.log(chalk.gray(`Requiring ${modulePath}...`)) requirer(modulePath) }) } // Process runfile - logger.log(`Processing ${runfilePath}...`) + logger.log(chalk.gray(`Processing ${runfilePath}...`)) try { access(runfilePath) From f04ae88ea2debe9c89ae1d8dca83957b0035cf05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Thu, 7 Sep 2017 19:08:36 +1000 Subject: [PATCH 37/41] Method lists print: remove blank line --- src/script.js | 2 +- test/script.test.js | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/script.js b/src/script.js index d3f124e..6eec75c 100644 --- a/src/script.js +++ b/src/script.js @@ -84,7 +84,7 @@ function parseArgs (args: Array) { function describe (obj: Object, logger: Logger, namespace: ?string) { if (!namespace) { - logger.log(chalk.yellow('\nAvailable tasks:')) + logger.log(chalk.yellow('Available tasks:')) } Object.keys(obj).forEach((key) => { diff --git a/test/script.test.js b/test/script.test.js index e8ffcc0..017092c 100644 --- a/test/script.test.js +++ b/test/script.test.js @@ -117,7 +117,7 @@ describe('script', () => { it('should log list of methods', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', chalk.yellow('\nAvailable tasks:')], + ['log', chalk.yellow('Available tasks:')], ['log', chalk.bold('a')], ['log', chalk.bold('b')] ]) @@ -127,7 +127,7 @@ describe('script', () => { obj.b = (arg1, arg2) => {} script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', chalk.yellow('\nAvailable tasks:')], + ['log', chalk.yellow('Available tasks:')], ['log', chalk.bold('a')], ['log', chalk.bold('b') + ' [arg1 arg2]'] ]) @@ -139,7 +139,7 @@ describe('script', () => { obj.b.help = 'Description for method b' script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', chalk.yellow('\nAvailable tasks:')], + ['log', chalk.yellow('Available tasks:')], ['log', chalk.bold('a') + ' ', '-', 'Description for method a'], ['log', chalk.bold('b') + ' [arg1 arg2] ', '-', 'Description for method b'] ]) @@ -150,7 +150,7 @@ describe('script', () => { obj.b.help = 'Description for method b' script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', chalk.yellow('\nAvailable tasks:')], + ['log', chalk.yellow('Available tasks:')], ['log', chalk.bold('a') + ' ', '-', 'Description for method a'], ['log', chalk.bold('b') + ' ', '-', 'Description for method b'] ]) @@ -170,7 +170,7 @@ describe('script', () => { script.describe(obj, logger) expect(mockLogger.mock.calls).toEqual([ - ['log', chalk.yellow('\nAvailable tasks:')], + ['log', chalk.yellow('Available tasks:')], ['log', chalk.bold('a')], ['log', chalk.bold('b')], ['log', chalk.bold('c:d')], From acf1af7f6743fab2d9ab61cda1afeed5c443de7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Thu, 7 Sep 2017 22:10:41 +1000 Subject: [PATCH 38/41] Update docs for methods list look --- README.md | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/README.md b/README.md index cf289d8..92e2ecf 100644 --- a/README.md +++ b/README.md @@ -423,7 +423,6 @@ without any arguments: Processing runfile.js... Available tasks: - echo testapi @@ -444,9 +443,7 @@ buildjs.help = 'Compile JavaScript files' Processing runfile.js... Available tasks: - - buildjs [arg1 arg2] - Compile JavaScript files + buildjs [arg1 arg2] - Compile JavaScript files When running task with `--help` option, only help for that task will be displayed: From 7ecfde0150c9a6482b13c44a7b1e41aca7679bd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Sat, 16 Sep 2017 09:56:07 +1000 Subject: [PATCH 39/41] Updating yarn lock file --- package.json | 4 +- yarn.lock | 271 +++++++++++++++++++++++++++++++++++---------------- 2 files changed, 187 insertions(+), 88 deletions(-) diff --git a/package.json b/package.json index 454555f..a5ba8e6 100644 --- a/package.json +++ b/package.json @@ -43,9 +43,9 @@ "lodash.padend": "4.6.1" }, "devDependencies": { - "babel-cli": "^6.26.0", + "babel-cli": "6.26.0", "babel-eslint": "7.2.3", - "babel-preset-flow": "^6.23.0", + "babel-preset-flow": "6.23.0", "eslint": "4.5.0", "eslint-config-standard": "10.2.1", "eslint-plugin-flowtype": "2.35.1", diff --git a/yarn.lock b/yarn.lock index 2952967..de1b3e7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -31,8 +31,8 @@ acorn@^4.0.4: resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787" acorn@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.1.1.tgz#53fe161111f912ab999ee887a90a0bc52822fd75" + version "5.1.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.1.2.tgz#911cb53e036807cf0fa778dc5d370fbd864246d7" ajv-keywords@^1.0.0: version "1.5.1" @@ -192,7 +192,7 @@ aws4@^1.2.1: version "1.6.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" -babel-cli@^6.26.0: +babel-cli@6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-cli/-/babel-cli-6.26.0.tgz#502ab54874d7db88ad00b887a06383ce03d002f1" dependencies: @@ -319,7 +319,7 @@ babel-polyfill@^6.26.0: core-js "^2.5.0" regenerator-runtime "^0.10.5" -babel-preset-flow@^6.23.0: +babel-preset-flow@6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-preset-flow/-/babel-preset-flow-6.23.0.tgz#e71218887085ae9a24b5be4169affb599816c49d" dependencies: @@ -383,7 +383,7 @@ babel-types@^6.18.0, babel-types@^6.23.0, babel-types@^6.26.0: lodash "^4.17.4" to-fast-properties "^1.0.3" -babylon@^6.17.0, babylon@^6.17.4, babylon@^6.18.0: +babylon@^6.17.0, babylon@^6.18.0: version "6.18.0" resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" @@ -517,8 +517,8 @@ chokidar@^1.6.1: fsevents "^1.0.0" ci-info@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.0.0.tgz#dc5285f2b4e251821683681c381c3388f46ec534" + version "1.1.1" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.1.1.tgz#47b44df118c48d2597b56d342e7e25791060171a" circular-json@^0.3.1: version "0.3.3" @@ -531,8 +531,8 @@ cli-cursor@^2.1.0: restore-cursor "^2.0.0" cli-width@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.1.0.tgz#b234ca209b29ef66fc518d9b98d5847b00edf00a" + version "2.2.0" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" cliui@^2.1.0: version "2.1.0" @@ -607,8 +607,8 @@ convert-source-map@^1.4.0, convert-source-map@^1.5.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" core-js@^2.4.0, core-js@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.0.tgz#569c050918be6486b3837552028ae0466b717086" + version "2.5.1" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.1.tgz#ae6874dc66937789b80754ff5428df66819ca50b" core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" @@ -654,6 +654,10 @@ decamelize@^1.0.0, decamelize@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" +deep-equal@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" + deep-extend@~0.4.0: version "0.4.2" resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" @@ -668,6 +672,17 @@ default-require-extensions@^1.0.0: dependencies: strip-bom "^2.0.0" +define-properties@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" + dependencies: + foreach "^2.0.5" + object-keys "^1.0.8" + +defined@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" + del@^2.0.2: version "2.2.2" resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" @@ -695,8 +710,8 @@ detect-indent@^4.0.0: repeating "^2.0.0" diff@^3.2.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.0.tgz#056695150d7aa93237ca7e378ac3b1682b7963b9" + version "3.3.1" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75" doctrine@1.5.0: version "1.5.0" @@ -730,20 +745,38 @@ error-ex@^1.2.0: dependencies: is-arrayish "^0.2.1" +es-abstract@^1.5.0: + version "1.8.2" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.8.2.tgz#25103263dc4decbda60e0c737ca32313518027ee" + dependencies: + es-to-primitive "^1.1.1" + function-bind "^1.1.1" + has "^1.0.1" + is-callable "^1.1.3" + is-regex "^1.0.4" + +es-to-primitive@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" + dependencies: + is-callable "^1.1.1" + is-date-object "^1.0.1" + is-symbol "^1.0.1" + escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" escodegen@^1.6.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.8.1.tgz#5a5b53af4693110bebb0867aa3430dd3b70a1018" + version "1.9.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.9.0.tgz#9811a2f265dc1cd3894420ee3717064b632b8852" dependencies: - esprima "^2.7.1" - estraverse "^1.9.1" + esprima "^3.1.3" + estraverse "^4.2.0" esutils "^2.0.2" optionator "^0.8.1" optionalDependencies: - source-map "~0.2.0" + source-map "~0.5.6" eslint-config-standard@10.2.1: version "10.2.1" @@ -851,15 +884,15 @@ eslint@4.5.0: text-table "~0.2.0" espree@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.0.tgz#98358625bdd055861ea27e2867ea729faf463d8d" + version "3.5.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.1.tgz#0c988b8ab46db53100a1954ae4ba995ddd27d87e" dependencies: acorn "^5.1.1" acorn-jsx "^3.0.0" -esprima@^2.7.1: - version "2.7.3" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" +esprima@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" esprima@^4.0.0: version "4.0.0" @@ -878,10 +911,6 @@ esrecurse@^4.1.0: estraverse "^4.1.0" object-assign "^4.0.1" -estraverse@^1.9.1: - version "1.9.3" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.9.3.tgz#af67f2dc922582415950926091a4005d29c9bb44" - estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" @@ -891,8 +920,8 @@ esutils@^2.0.2: resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" exec-sh@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.0.tgz#14f75de3f20d286ef933099b2ce50a90359cef10" + version "0.2.1" + resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.1.tgz#163b98a6e89e6b65b47c2a28d215bc1f63989c38" dependencies: merge "^1.1.3" @@ -1010,6 +1039,12 @@ flow-bin@0.54.0: version "0.54.0" resolved "https://registry.yarnpkg.com/flow-bin/-/flow-bin-0.54.0.tgz#f2fb0478e9e99702b623c9ed84079a39903bba77" +for-each@~0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.2.tgz#2c40450b9348e97f281322593ba96704b9abd4d4" + dependencies: + is-function "~1.0.0" + for-in@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" @@ -1020,6 +1055,10 @@ for-own@^0.1.4: dependencies: for-in "^1.0.1" +foreach@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" + forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" @@ -1064,9 +1103,9 @@ fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: mkdirp ">=0.5 0" rimraf "2" -function-bind@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771" +function-bind@^1.0.2, function-bind@^1.1.1, function-bind@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" functional-red-black-tree@^1.0.1: version "1.0.1" @@ -1112,7 +1151,7 @@ glob-parent@^2.0.0: dependencies: is-glob "^2.0.0" -glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2: +glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@~7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" dependencies: @@ -1185,7 +1224,7 @@ has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" -has@^1.0.1: +has@^1.0.1, has@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" dependencies: @@ -1234,12 +1273,12 @@ iconv-lite@0.4.13: resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.13.tgz#1f88aba4ab0b1508e8312acc39345f36e992e2f2" iconv-lite@^0.4.17: - version "0.4.18" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.18.tgz#23d8656b16aae6742ac29732ea8f0336a4789cf2" + version "0.4.19" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" ignore@^3.3.3: - version "3.3.3" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.3.tgz#432352e57accd87ab3110e82d3fea0e47812156d" + version "3.3.5" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.5.tgz#c4e715455f6073a8d7e5dae72d2fc9d71663dba6" imurmurhash@^0.1.4: version "0.1.4" @@ -1261,8 +1300,8 @@ ini@~1.3.0: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" inquirer@^3.0.6: - version "3.2.2" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.2.2.tgz#c2aaede1507cc54d826818737742d621bef2e823" + version "3.2.3" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.2.3.tgz#1c7b1731cf77b934ec47d22c9ac5aa8fe7fbe095" dependencies: ansi-escapes "^2.0.0" chalk "^2.0.0" @@ -1309,12 +1348,20 @@ is-builtin-module@^1.0.0: dependencies: builtin-modules "^1.0.0" +is-callable@^1.1.1, is-callable@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" + is-ci@^1.0.10: version "1.0.10" resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.0.10.tgz#f739336b2632365061a9d48270cd56ae3369318e" dependencies: ci-info "^1.0.0" +is-date-object@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" + is-dotfile@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" @@ -1349,6 +1396,10 @@ is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" +is-function@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.1.tgz#12cfb98b65b57dd3d193a3121f5f6e2f437602b5" + is-glob@^2.0.0, is-glob@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" @@ -1395,12 +1446,22 @@ is-promise@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" +is-regex@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" + dependencies: + has "^1.0.1" + is-resolvable@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.0.tgz#8df57c61ea2e3c501408d100fb013cf8d6e0cc62" dependencies: tryit "^1.0.1" +is-symbol@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" + is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" @@ -1428,17 +1489,17 @@ isstream@~0.1.2: resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" istanbul-api@^1.1.1: - version "1.1.11" - resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.1.11.tgz#fcc0b461e2b3bda71e305155138238768257d9de" + version "1.1.14" + resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.1.14.tgz#25bc5701f7c680c0ffff913de46e3619a3a6e680" dependencies: async "^2.1.4" fileset "^2.0.2" istanbul-lib-coverage "^1.1.1" istanbul-lib-hook "^1.0.7" - istanbul-lib-instrument "^1.7.4" + istanbul-lib-instrument "^1.8.0" istanbul-lib-report "^1.1.1" istanbul-lib-source-maps "^1.2.1" - istanbul-reports "^1.1.1" + istanbul-reports "^1.1.2" js-yaml "^3.7.0" mkdirp "^0.5.1" once "^1.4.0" @@ -1453,15 +1514,15 @@ istanbul-lib-hook@^1.0.7: dependencies: append-transform "^0.4.0" -istanbul-lib-instrument@^1.4.2, istanbul-lib-instrument@^1.7.2, istanbul-lib-instrument@^1.7.4: - version "1.7.4" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.7.4.tgz#e9fd920e4767f3d19edc765e2d6b3f5ccbd0eea8" +istanbul-lib-instrument@^1.4.2, istanbul-lib-instrument@^1.7.2, istanbul-lib-instrument@^1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.8.0.tgz#66f6c9421cc9ec4704f76f2db084ba9078a2b532" dependencies: babel-generator "^6.18.0" babel-template "^6.16.0" babel-traverse "^6.18.0" babel-types "^6.18.0" - babylon "^6.17.4" + babylon "^6.18.0" istanbul-lib-coverage "^1.1.1" semver "^5.3.0" @@ -1484,9 +1545,9 @@ istanbul-lib-source-maps@^1.1.0, istanbul-lib-source-maps@^1.2.1: rimraf "^2.6.1" source-map "^0.5.3" -istanbul-reports@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.1.1.tgz#042be5c89e175bc3f86523caab29c014e77fee4e" +istanbul-reports@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.1.2.tgz#0fb2e3f6aa9922bd3ce45d05d8ab4d5e8e07bd4f" dependencies: handlebars "^4.0.3" @@ -1706,8 +1767,8 @@ js-tokens@^3.0.0, js-tokens@^3.0.2: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" js-yaml@^3.7.0, js-yaml@^3.9.1: - version "3.9.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.9.1.tgz#08775cebdfdd359209f0d2acd383c8f86a6904a0" + version "3.10.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.10.0.tgz#2e78441646bd4682e963f22b6e92823c309c62dc" dependencies: argparse "^1.0.7" esprima "^4.0.0" @@ -1846,7 +1907,7 @@ lodash.cond@^4.3.0: version "4.5.2" resolved "https://registry.yarnpkg.com/lodash.cond/-/lodash.cond-4.5.2.tgz#f471a1da486be60f6ab955d17115523dd1d255d5" -lodash.padend@^4.6.1: +lodash.padend@4.6.1: version "4.6.1" resolved "https://registry.yarnpkg.com/lodash.padend/-/lodash.padend-4.6.1.tgz#53ccba047d06e158d311f45da625f4e49e6f166e" @@ -1899,15 +1960,15 @@ micromatch@^2.1.5, micromatch@^2.3.11: parse-glob "^3.0.4" regex-cache "^0.4.2" -mime-db@~1.29.0: - version "1.29.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.29.0.tgz#48d26d235589651704ac5916ca06001914266878" +mime-db@~1.30.0: + version "1.30.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" mime-types@^2.1.12, mime-types@~2.1.7: - version "2.1.16" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.16.tgz#2b858a52e5ecd516db897ac2be87487830698e23" + version "2.1.17" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" dependencies: - mime-db "~1.29.0" + mime-db "~1.30.0" mimic-fn@^1.0.0: version "1.1.0" @@ -1919,14 +1980,18 @@ minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: dependencies: brace-expansion "^1.1.7" -minimist@0.0.8, minimist@~0.0.1: +minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" -minimist@^1.1.1, minimist@^1.2.0: +minimist@^1.1.1, minimist@^1.2.0, minimist@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" +minimist@~0.0.1: + version "0.0.10" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" + "mkdirp@>=0.5 0", mkdirp@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" @@ -1963,8 +2028,8 @@ node-notifier@^5.0.2: which "^1.2.12" node-pre-gyp@^0.6.36: - version "0.6.36" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.36.tgz#db604112cb74e0d477554e9b505b17abddfab786" + version "0.6.37" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.37.tgz#3c872b236b2e266e4140578fe1ee88f693323a05" dependencies: mkdirp "^0.5.1" nopt "^4.0.1" @@ -1973,6 +2038,7 @@ node-pre-gyp@^0.6.36: request "^2.81.0" rimraf "^2.6.1" semver "^5.3.0" + tape "^4.6.3" tar "^2.2.1" tar-pack "^3.4.0" @@ -2023,6 +2089,14 @@ object-assign@^4.0.1, object-assign@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" +object-inspect@~1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.3.0.tgz#5b1eb8e6742e2ee83342a637034d844928ba2f6d" + +object-keys@^1.0.8: + version "1.0.11" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" + object.omit@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" @@ -2100,8 +2174,8 @@ p-locate@^2.0.0: p-limit "^1.1.0" p-map@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.1.1.tgz#05f5e4ae97a068371bc2a5cc86bfbdbc19c4ae7a" + version "1.2.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" parse-glob@^3.0.4: version "3.0.4" @@ -2305,11 +2379,10 @@ regenerator-runtime@^0.11.0: resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz#7e54fe5b5ccd5d6624ea6255c3473be090b802e1" regex-cache@^0.4.2: - version "0.4.3" - resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.3.tgz#9b1a6c35d4d0dfcef5711ae651e8e9d3d7114145" + version "0.4.4" + resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" dependencies: is-equal-shallow "^0.1.3" - is-primitive "^2.0.0" remove-trailing-separator@^1.0.1: version "1.1.0" @@ -2379,7 +2452,7 @@ resolve@1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" -resolve@^1.2.0, resolve@^1.3.2, resolve@^1.3.3: +resolve@^1.2.0, resolve@^1.3.2, resolve@^1.3.3, resolve@~1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.4.0.tgz#a75be01c53da25d934a98ebd0e4c4a7312f92a86" dependencies: @@ -2392,6 +2465,12 @@ restore-cursor@^2.0.0: onetime "^2.0.0" signal-exit "^3.0.2" +resumer@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/resumer/-/resumer-0.0.0.tgz#f1e8f461e4064ba39e82af3cdc2a8c893d076759" + dependencies: + through "~2.3.4" + right-align@^0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" @@ -2399,8 +2478,8 @@ right-align@^0.1.1: align-text "^0.1.1" rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d" + version "2.6.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" dependencies: glob "^7.0.5" @@ -2489,8 +2568,8 @@ sntp@1.x.x: hoek "2.x.x" source-map-support@^0.4.15: - version "0.4.16" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.16.tgz#16fecf98212467d017d586a2af68d628b9421cd8" + version "0.4.18" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" dependencies: source-map "^0.5.6" @@ -2500,15 +2579,9 @@ source-map@^0.4.4: dependencies: amdefine ">=0.0.4" -source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1: - version "0.5.6" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" - -source-map@~0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.2.0.tgz#dab73fbcfc2ba819b4de03bd6f6eaa48164b3f9d" - dependencies: - amdefine ">=0.0.4" +source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1, source-map@~0.5.6: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" spdx-correct@~1.0.0: version "1.0.2" @@ -2563,6 +2636,14 @@ string-width@^2.0.0, string-width@^2.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" +string.prototype.trim@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.1.2.tgz#d04de2c89e137f4d7d206f086b5ed2fae6be8cea" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.5.0" + function-bind "^1.0.2" + string_decoder@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" @@ -2610,8 +2691,8 @@ supports-color@^3.1.2: has-flag "^1.0.0" supports-color@^4.0.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.2.1.tgz#65a4bb2631e90e02420dba5554c375a4754bb836" + version "4.4.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e" dependencies: has-flag "^2.0.0" @@ -2630,6 +2711,24 @@ table@^4.0.1: slice-ansi "0.0.4" string-width "^2.0.0" +tape@^4.6.3: + version "4.8.0" + resolved "https://registry.yarnpkg.com/tape/-/tape-4.8.0.tgz#f6a9fec41cc50a1de50fa33603ab580991f6068e" + dependencies: + deep-equal "~1.0.1" + defined "~1.0.0" + for-each "~0.3.2" + function-bind "~1.1.0" + glob "~7.1.2" + has "~1.0.1" + inherits "~2.0.3" + minimist "~1.2.0" + object-inspect "~1.3.0" + resolve "~1.4.0" + resumer "~0.0.0" + string.prototype.trim "~1.1.2" + through "~2.3.8" + tar-pack@^3.4.0: version "3.4.0" resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.0.tgz#23be2d7f671a8339376cbdb0b8fe3fdebf317984" @@ -2669,7 +2768,7 @@ throat@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/throat/-/throat-3.2.0.tgz#50cb0670edbc40237b9e347d7e1f88e4620af836" -through@^2.3.6: +through@^2.3.6, through@~2.3.4, through@~2.3.8: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" From 3e8e8084caef7e8f10cfcdddba428b8f8c495ab7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Sat, 16 Sep 2017 10:04:23 +1000 Subject: [PATCH 40/41] Update yarn lock files for sandboxes --- test/babel-sandbox/yarn.lock | 7 ++++++- test/typescript-sandbox/yarn.lock | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/test/babel-sandbox/yarn.lock b/test/babel-sandbox/yarn.lock index 07be5e4..8b34411 100644 --- a/test/babel-sandbox/yarn.lock +++ b/test/babel-sandbox/yarn.lock @@ -582,6 +582,10 @@ json5@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/json5/-/json5-0.4.0.tgz#054352e4c4c80c86c0923877d449de176a732c8d" +lodash.padend@4.6.1: + version "4.6.1" + resolved "https://registry.yarnpkg.com/lodash.padend/-/lodash.padend-4.6.1.tgz#53ccba047d06e158d311f45da625f4e49e6f166e" + lodash@^4.2.0: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" @@ -675,8 +679,9 @@ repeating@^2.0.0: "runjs@file:../../": version "4.0.1" dependencies: - chalk "1.1.3" + chalk "2.1.0" get-parameter-names "0.3.0" + lodash.padend "4.6.1" shebang-regex@^1.0.0: version "1.0.0" diff --git a/test/typescript-sandbox/yarn.lock b/test/typescript-sandbox/yarn.lock index 6be1d85..cc7878b 100644 --- a/test/typescript-sandbox/yarn.lock +++ b/test/typescript-sandbox/yarn.lock @@ -70,6 +70,10 @@ has-flag@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" +lodash.padend@4.6.1: + version "4.6.1" + resolved "https://registry.yarnpkg.com/lodash.padend/-/lodash.padend-4.6.1.tgz#53ccba047d06e158d311f45da625f4e49e6f166e" + make-error@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.0.tgz#52ad3a339ccf10ce62b4040b708fe707244b8b96" @@ -91,8 +95,9 @@ mkdirp@^0.5.1: "runjs@file:../../": version "4.0.1" dependencies: - chalk "1.1.3" + chalk "2.1.0" get-parameter-names "0.3.0" + lodash.padend "4.6.1" source-map-support@^0.4.0: version "0.4.15" From 50e0f1c8fa7685bbbd2cca672a1a28e3cd033537 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Ga=C5=82=C4=85zka?= Date: Sat, 16 Sep 2017 10:05:58 +1000 Subject: [PATCH 41/41] Versioning to 4.1.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index a5ba8e6..0bcfde1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "runjs", - "version": "4.0.1", + "version": "4.1.0", "description": "Minimalistic building tool", "keywords": [ "build",