From c8d4e28e2d6228b8bc75f628a626350f04bbd494 Mon Sep 17 00:00:00 2001 From: pooya parsa Date: Thu, 4 Apr 2019 21:52:53 +0430 Subject: [PATCH 01/30] chore: sync readme --- distributions/nuxt/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/distributions/nuxt/README.md b/distributions/nuxt/README.md index 6acacb9d7a..fa3c38bae6 100644 --- a/distributions/nuxt/README.md +++ b/distributions/nuxt/README.md @@ -100,10 +100,10 @@ Or you can start by using one of our starter templates: const { Nuxt, Builder } = require('nuxt') // Import and set nuxt.js options -let config = require('./nuxt.config.js') +const config = require('./nuxt.config.js') config.dev = (process.env.NODE_ENV !== 'production') -let nuxt = new Nuxt(config) +const nuxt = new Nuxt(config) // Start build process (only in development) if (config.dev) { @@ -117,7 +117,7 @@ Learn more: https://nuxtjs.org/api/nuxt ## Using nuxt.js as a middleware -You might want to use your own server with your configurations, your API and everything awesome your created with. That's why you can use nuxt.js as a middleware. It's recommended to use it at the end of your middleware since it will handle the rendering of your web application and won't call next(). +You might want to use your own server with your configurations, your API and everything awesome you have created with. That's why you can use nuxt.js as a middleware. It's recommended to use it at the end of your middleware since it will handle the rendering of your web application and won't call next(). ```js app.use(nuxt.render) From a9d2deb16aef4fd967b9614adb6b5bb68d34d2cd Mon Sep 17 00:00:00 2001 From: Pooya Parsa Date: Fri, 5 Apr 2019 18:45:58 +0430 Subject: [PATCH 02/30] fix: improve `router.base` handling (#5470) --- packages/config/src/options.js | 12 +++++++++++- packages/config/test/options.test.js | 7 +++++++ packages/server/src/listener.js | 5 +++-- packages/server/src/server.js | 3 ++- packages/server/test/listener.test.js | 18 ++++++++++-------- packages/server/test/server.test.js | 9 +++++++-- 6 files changed, 40 insertions(+), 14 deletions(-) diff --git a/packages/config/src/options.js b/packages/config/src/options.js index fb8d5dd85d..f985b4c94a 100644 --- a/packages/config/src/options.js +++ b/packages/config/src/options.js @@ -22,6 +22,7 @@ export function getNuxtConfig(_options) { if (options.loading === true) { delete options.loading } + if ( options.router && options.router.middleware && @@ -29,15 +30,19 @@ export function getNuxtConfig(_options) { ) { options.router.middleware = [options.router.middleware] } + if (options.router && typeof options.router.base === 'string') { options._routerBaseSpecified = true } + if (typeof options.transition === 'string') { options.transition = { name: options.transition } } + if (typeof options.layoutTransition === 'string') { options.layoutTransition = { name: options.layoutTransition } } + if (typeof options.extensions === 'string') { options.extensions = [options.extensions] } @@ -69,6 +74,11 @@ export function getNuxtConfig(_options) { defaultsDeep(options, nuxtConfig) + // Sanitize router.base + if (!/\/$/.test(options.router.base)) { + options.router.base += '/' + } + // Check srcDir and generate.dir existence const hasSrcDir = isNonEmptyString(options.srcDir) const hasGenerateDir = isNonEmptyString(options.generate.dir) @@ -221,7 +231,7 @@ export function getNuxtConfig(_options) { }) } - // vue config + // Vue config const vueConfig = options.vue.config if (vueConfig.silent === undefined) { diff --git a/packages/config/test/options.test.js b/packages/config/test/options.test.js index e744db32ea..87b458d818 100644 --- a/packages/config/test/options.test.js +++ b/packages/config/test/options.test.js @@ -227,3 +227,10 @@ describe('config: options', () => { }) }) }) + +describe('config: router', () => { + test('should sanitize router.base', () => { + const config = getNuxtConfig({ router: { base: '/foo' } }) + expect(config.router.base).toBe('/foo/') + }) +}) diff --git a/packages/server/src/listener.js b/packages/server/src/listener.js index 04f13a442f..dfbb0e549e 100644 --- a/packages/server/src/listener.js +++ b/packages/server/src/listener.js @@ -6,7 +6,7 @@ import consola from 'consola' import pify from 'pify' export default class Listener { - constructor({ port, host, socket, https, app, dev }) { + constructor({ port, host, socket, https, app, dev, baseURL }) { // Options this.port = port this.host = host @@ -14,6 +14,7 @@ export default class Listener { this.https = https this.app = app this.dev = dev + this.baseURL = baseURL // After listen this.listening = false @@ -46,7 +47,7 @@ export default class Listener { case '0.0.0.0': this.host = ip.address(); break } this.port = address.port - this.url = `http${this.https ? 's' : ''}://${this.host}:${this.port}` + this.url = `http${this.https ? 's' : ''}://${this.host}:${this.port}${this.baseURL}` return } this.url = `unix+http://${address}` diff --git a/packages/server/src/server.js b/packages/server/src/server.js index e937f00fb1..483aa091fc 100644 --- a/packages/server/src/server.js +++ b/packages/server/src/server.js @@ -239,7 +239,8 @@ export default class Server { socket: socket || this.options.server.socket, https: this.options.server.https, app: this.app, - dev: this.options.dev + dev: this.options.dev, + baseURL: this.options.router.base }) // Listen diff --git a/packages/server/test/listener.test.js b/packages/server/test/listener.test.js index e53624fd6d..f378421579 100644 --- a/packages/server/test/listener.test.js +++ b/packages/server/test/listener.test.js @@ -228,7 +228,8 @@ describe('server: listener', () => { test('should compute http url', () => { const options = { port: 3000, - host: 'localhost' + host: 'localhost', + baseURL: '/' } const listener = new Listener(options) listener.server = mockServer() @@ -240,7 +241,7 @@ describe('server: listener', () => { listener.computeURL() expect(listener.host).toEqual('localhost') expect(listener.port).toEqual(3000) - expect(listener.url).toEqual('http://localhost:3000') + expect(listener.url).toEqual('http://localhost:3000/') listener.server.address.mockReturnValueOnce({ address: '127.0.0.1', @@ -249,7 +250,7 @@ describe('server: listener', () => { listener.computeURL() expect(listener.host).toEqual('localhost') expect(listener.port).toEqual(3001) - expect(listener.url).toEqual('http://localhost:3001') + expect(listener.url).toEqual('http://localhost:3001/') ip.address.mockReturnValueOnce('192.168.0.1') listener.server.address.mockReturnValueOnce({ @@ -259,14 +260,15 @@ describe('server: listener', () => { listener.computeURL() expect(listener.host).toEqual('192.168.0.1') expect(listener.port).toEqual(3002) - expect(listener.url).toEqual('http://192.168.0.1:3002') + expect(listener.url).toEqual('http://192.168.0.1:3002/') }) test('should compute https url', () => { const options = { port: 3000, host: 'localhost', - https: true + https: true, + baseURL: '/' } const listener = new Listener(options) listener.server = mockServer() @@ -278,7 +280,7 @@ describe('server: listener', () => { listener.computeURL() expect(listener.host).toEqual('localhost') expect(listener.port).toEqual(3000) - expect(listener.url).toEqual('https://localhost:3000') + expect(listener.url).toEqual('https://localhost:3000/') listener.server.address.mockReturnValueOnce({ address: '127.0.0.1', @@ -287,7 +289,7 @@ describe('server: listener', () => { listener.computeURL() expect(listener.host).toEqual('localhost') expect(listener.port).toEqual(3001) - expect(listener.url).toEqual('https://localhost:3001') + expect(listener.url).toEqual('https://localhost:3001/') ip.address.mockReturnValueOnce('192.168.0.1') listener.server.address.mockReturnValueOnce({ @@ -297,7 +299,7 @@ describe('server: listener', () => { listener.computeURL() expect(listener.host).toEqual('192.168.0.1') expect(listener.port).toEqual(3002) - expect(listener.url).toEqual('https://192.168.0.1:3002') + expect(listener.url).toEqual('https://192.168.0.1:3002/') }) test('should compute unix socket url', () => { diff --git a/packages/server/test/server.test.js b/packages/server/test/server.test.js index 55e46e4579..ae0727c4bc 100644 --- a/packages/server/test/server.test.js +++ b/packages/server/test/server.test.js @@ -43,6 +43,9 @@ describe('server: server', () => { build: { publicPath: '__nuxt_test' }, + router: { + base: '/foo/' + }, render: { id: 'test-render', dist: { @@ -485,7 +488,8 @@ describe('server: server', () => { socket: '/var/nuxt/unix.socket', https: undefined, app: server.app, - dev: server.options.dev + dev: server.options.dev, + baseURL: '/foo/' }) expect(listener.listen).toBeCalledTimes(1) expect(server.listeners).toEqual([ listener ]) @@ -508,7 +512,8 @@ describe('server: server', () => { expect(Listener).toBeCalledWith({ ...nuxt.options.server, app: server.app, - dev: server.options.dev + dev: server.options.dev, + baseURL: '/foo/' }) }) From 7ec48c3af0c88a079442fa9ef47fb4120f1da220 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" Date: Sun, 7 Apr 2019 13:21:33 +0430 Subject: [PATCH 03/30] chore(deps): update dependency get-port to v5 (#5473) --- package.json | 2 +- yarn.lock | 15 +++++++++++---- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index fe5e85142d..480d8859e3 100644 --- a/package.json +++ b/package.json @@ -58,7 +58,7 @@ "finalhandler": "^1.1.1", "fork-ts-checker-webpack-plugin": "^1.0.1", "fs-extra": "^7.0.1", - "get-port": "^4.2.0", + "get-port": "^5.0.0", "glob": "^7.1.3", "is-wsl": "^1.1.0", "jest": "^24.7.1", diff --git a/yarn.lock b/yarn.lock index 9c5900d1cb..a8dea2d960 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5162,10 +5162,12 @@ get-port@^3.2.0: resolved "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz#dd7ce7de187c06c8bf353796ac71e099f0980ebc" integrity sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw= -get-port@^4.2.0: - version "4.2.0" - resolved "https://registry.npmjs.org/get-port/-/get-port-4.2.0.tgz#e37368b1e863b7629c43c5a323625f95cf24b119" - integrity sha512-/b3jarXkH8KJoOMQc3uVGHASwGLPq3gSFJ7tgJm2diza+bydJPTGOibin2steecKeOylE8oY2JERlVWkAJO6yw== +get-port@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/get-port/-/get-port-5.0.0.tgz#aa22b6b86fd926dd7884de3e23332c9f70c031a6" + integrity sha512-imzMU0FjsZqNa6BqOjbbW6w5BivHIuQKopjpPqcnx0AVHJQKCxK1O+Ab3OrVXhrekqfVMjwA9ZYu062R+KcIsQ== + dependencies: + type-fest "^0.3.0" get-stdin@^4.0.1: version "4.0.1" @@ -10799,6 +10801,11 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" +type-fest@^0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.3.0.tgz#1eb4a83c4ee233afd59d4db3faef44fecee0e9a2" + integrity sha512-fg3sfdDdJDtdHLUpeGsf/fLyG1aapk6zgFiYG5+MDUPybGrJemH4SLk5tP7hGRe8ntxjg0q5LYW53b6YpJIQ9Q== + type-is@~1.6.16: version "1.6.16" resolved "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" From 2ca08a6bf36bde92d8ab6c3084ea489d642576c3 Mon Sep 17 00:00:00 2001 From: pooya parsa Date: Sun, 7 Apr 2019 13:32:32 +0430 Subject: [PATCH 04/30] fix(server): don't call `getCspString` when `cspScriptSrcHashes` is unavailable (#5474) Co-Authored-By: Andreas Zoellner --- packages/server/src/middleware/nuxt.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/server/src/middleware/nuxt.js b/packages/server/src/middleware/nuxt.js index b430d3e946..8c3dbfc365 100644 --- a/packages/server/src/middleware/nuxt.js +++ b/packages/server/src/middleware/nuxt.js @@ -69,7 +69,7 @@ export default ({ options, nuxt, renderRoute, resources }) => async function nux } } - if (options.render.csp) { + if (options.render.csp && cspScriptSrcHashes) { const { allowedSources, policies } = options.render.csp const cspHeader = options.render.csp.reportOnly ? 'Content-Security-Policy-Report-Only' : 'Content-Security-Policy' From b13c2d946d26b150f3daaefa527dcd1a327db9b5 Mon Sep 17 00:00:00 2001 From: pooya parsa Date: Sun, 7 Apr 2019 13:34:37 +0430 Subject: [PATCH 05/30] core(renovate): ignore esm for now --- renovate.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/renovate.json b/renovate.json index bfdca19743..bffc35c30d 100644 --- a/renovate.json +++ b/renovate.json @@ -7,7 +7,8 @@ ], "ignoreDeps": [ "thread-loader", - "core-js" + "core-js", + "esm" ], "lockFileMaintenance": { "enabled": true From dc14200bbfdd6cef2b64cdb05b2df1cbdd80fb51 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" Date: Sun, 7 Apr 2019 13:47:04 +0430 Subject: [PATCH 06/30] chore(deps): update all non-major dependencies (#5465) --- package.json | 12 ++-- packages/cli/package.json | 2 +- packages/typescript/package.json | 2 +- packages/webpack/package.json | 2 +- yarn.lock | 100 +++++++++++++++++++------------ 5 files changed, 72 insertions(+), 46 deletions(-) diff --git a/package.json b/package.json index 480d8859e3..f7ec7fdb0a 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "babel-eslint": "^10.0.1", "babel-jest": "^24.7.1", "babel-plugin-dynamic-import-node": "^2.2.0", - "cheerio": "^1.0.0-rc.2", + "cheerio": "^1.0.0-rc.3", "codecov": "^3.3.0", "consola": "^2.5.8", "cross-env": "^5.2.0", @@ -71,20 +71,20 @@ "request": "^2.88.0", "request-promise-native": "^1.0.7", "rimraf": "^2.6.3", - "rollup": "^1.8.0", + "rollup": "^1.9.0", "rollup-plugin-alias": "^1.5.1", "rollup-plugin-babel": "^4.3.2", - "rollup-plugin-commonjs": "^9.3.3", + "rollup-plugin-commonjs": "^9.3.4", "rollup-plugin-json": "^4.0.0", "rollup-plugin-license": "^0.8.1", - "rollup-plugin-node-resolve": "^4.0.1", + "rollup-plugin-node-resolve": "^4.2.1", "rollup-plugin-replace": "^2.1.1", "sort-package-json": "^1.22.1", - "ts-jest": "^24.0.1", + "ts-jest": "^24.0.2", "ts-loader": "^5.3.3", "ts-node": "^8.0.3", "tslint": "^5.15.0", - "typescript": "^3.4.1", + "typescript": "^3.4.2", "vue-jest": "^4.0.0-beta.2", "vue-property-decorator": "^8.1.0" } diff --git a/packages/cli/package.json b/packages/cli/package.json index 427b642fd6..8ac60b989c 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -14,7 +14,7 @@ "dependencies": { "@nuxt/config": "2.6.1", "@nuxt/utils": "2.6.1", - "boxen": "^3.0.0", + "boxen": "^3.1.0", "chalk": "^2.4.2", "consola": "^2.5.8", "esm": "3.2.20", diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 3744bf29b7..48fb7027a9 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -25,7 +25,7 @@ "fork-ts-checker-webpack-plugin": "^1.0.1", "fs-extra": "^7.0.1", "ts-loader": "^5.3.3", - "typescript": "^3.4.1" + "typescript": "^3.4.2" }, "publishConfig": { "access": "public" diff --git a/packages/webpack/package.json b/packages/webpack/package.json index fdff0b17a5..22c279935b 100644 --- a/packages/webpack/package.json +++ b/packages/webpack/package.json @@ -44,7 +44,7 @@ "url-loader": "^1.1.2", "vue-loader": "^15.7.0", "webpack": "^4.29.6", - "webpack-bundle-analyzer": "^3.1.0", + "webpack-bundle-analyzer": "^3.2.0", "webpack-dev-middleware": "^3.6.2", "webpack-hot-middleware": "^2.24.3", "webpack-node-externals": "^1.7.2", diff --git a/yarn.lock b/yarn.lock index a8dea2d960..8f37acda84 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1780,7 +1780,7 @@ resolved "https://registry.npmjs.org/@types/mime/-/mime-2.0.1.tgz#dc488842312a7f075149312905b5e3c0b054c79d" integrity sha512-FwI9gX75FgVBJ7ywgnq/P7tw+/o1GUbtP0KzbtusLigAOgIgNISRK0ZPl4qertvXSIE8YbsVJueQ90cDt9YYyw== -"@types/node@*", "@types/node@^11.11.6": +"@types/node@*": version "11.12.2" resolved "https://registry.npmjs.org/@types/node/-/node-11.12.2.tgz#d7f302e74b10e9801d52852137f652d9ee235da8" integrity sha512-c82MtnqWB/CqqK7/zit74Ob8H1dBdV7bK+BcErwtXbe0+nUGkgzq5NTDmRW/pAv2lFtmeNmW95b0zK2hxpeklg== @@ -1812,6 +1812,13 @@ resolved "https://registry.npmjs.org/@types/relateurl/-/relateurl-0.2.28.tgz#6bda7db8653fa62643f5ee69e9f69c11a392e3a6" integrity sha1-a9p9uGU/piZD9e5p6facEaOS46Y= +"@types/resolve@0.0.8": + version "0.0.8" + resolved "https://registry.npmjs.org/@types/resolve/-/resolve-0.0.8.tgz#f26074d238e02659e323ce1a13d041eee280e194" + integrity sha512-auApPaJf3NPfe18hSoJkp8EbZzer2ISk7o8mCC3M9he/a04+gbMF97NkpD2S8riMGvm4BMRI59/SZQSaLTKpsQ== + dependencies: + "@types/node" "*" + "@types/serve-static@*", "@types/serve-static@^1.13.2": version "1.13.2" resolved "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.2.tgz#f5ac4d7a6420a99a6a45af4719f4dcd8cd907a48" @@ -2686,17 +2693,18 @@ boolbase@^1.0.0, boolbase@~1.0.0: resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= -boxen@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/boxen/-/boxen-3.0.0.tgz#2e229f603c9c1da9d2966b7e9a5681eb692eca23" - integrity sha512-6BI51DCC62Ylgv78Kfn+MHkyPwSlhulks+b+wz7bK1vsTFgbSEy/E1DOxx1wjf/0YdkrfPUMh9NoaW419M7csQ== +boxen@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/boxen/-/boxen-3.1.0.tgz#0eced0ffde565c3d68cb7ba0bbae51d8c2eed95c" + integrity sha512-WiP53arM6cU2STTBYQ2we3viJkDqkthMYaTFnmXPZ/v3S4h43H5MHWpw5d85SgmHiYO/Y+2PoyXO8nTEURXNJA== dependencies: ansi-align "^3.0.0" - camelcase "^5.0.0" + camelcase "^5.3.1" chalk "^2.4.2" - cli-boxes "^2.0.0" + cli-boxes "^2.1.0" string-width "^3.0.0" term-size "^1.2.0" + type-fest "^0.3.0" widest-line "^2.0.0" brace-expansion@^1.1.7: @@ -3005,6 +3013,11 @@ camelcase@^5.0.0, camelcase@^5.2.0: resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.2.0.tgz#e7522abda5ed94cc0489e1b8466610e88404cf45" integrity sha512-IXFsBS2pC+X0j0N/GE7Dm7j3bsEBp+oTpb7F50dwEVX7rf3IgwO9XatnegTsDtniKCUtEJH4fSU6Asw7uoVLfQ== +camelcase@^5.3.1: + version "5.3.1" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + caniuse-api@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" @@ -3079,6 +3092,18 @@ cheerio@^1.0.0-rc.2: lodash "^4.15.0" parse5 "^3.0.1" +cheerio@^1.0.0-rc.3: + version "1.0.0-rc.3" + resolved "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.3.tgz#094636d425b2e9c0f4eb91a46c05630c9a1a8bf6" + integrity sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA== + dependencies: + css-select "~1.2.0" + dom-serializer "~0.1.1" + entities "~1.1.1" + htmlparser2 "^3.9.1" + lodash "^4.15.0" + parse5 "^3.0.1" + chokidar@*, chokidar@^2.0.2, chokidar@^2.0.4, chokidar@^2.1.5: version "2.1.5" resolved "https://registry.npmjs.org/chokidar/-/chokidar-2.1.5.tgz#0ae8434d962281a5f56c72869e79cb6d9d86ad4d" @@ -3145,10 +3170,10 @@ clean-css@4.2.x, clean-css@^4.2.1: dependencies: source-map "~0.6.0" -cli-boxes@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.0.0.tgz#de5eb5ce7462833133e85f5710fabb38377e9333" - integrity sha512-P46J1Wf3BVD0E5plybtf6g/NtHYAUlOIt7w3ou/Ova/p7dJPdukPV4yp+BF8dpmnnk45XlMzn+x9kfzyucKzrg== +cli-boxes@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.1.0.tgz#e77b63d111cfd7be927bc417b794c798f81027a0" + integrity sha512-V9gkudTUk+iZGUYvI6qNwD9XbEc0mJiQEjYT5/+RLhN/3GgSTjIAsltAIA+idbCEAdAQw//uaXRHBp+CETPjuA== cli-cursor@^2.1.0: version "2.1.0" @@ -4152,7 +4177,7 @@ dom-event-types@^1.0.0: resolved "https://registry.npmjs.org/dom-event-types/-/dom-event-types-1.0.0.tgz#5830a0a29e1bf837fe50a70cd80a597232813cae" integrity sha512-2G2Vwi2zXTHBGqXHsJ4+ak/iP0N8Ar+G8a7LiD2oup5o4sQWytwqqrZu/O6hIMV0KMID2PL69OhpshLO0n7UJQ== -dom-serializer@0, dom-serializer@~0.1.0: +dom-serializer@0, dom-serializer@~0.1.0, dom-serializer@~0.1.1: version "0.1.1" resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0" integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA== @@ -9644,10 +9669,10 @@ rollup-plugin-babel@^4.3.2: "@babel/helper-module-imports" "^7.0.0" rollup-pluginutils "^2.3.0" -rollup-plugin-commonjs@^9.3.3: - version "9.3.3" - resolved "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-9.3.3.tgz#763415c1c52e0504ef854f794a7e7053002a5a85" - integrity sha512-p/zVsRv/Vp67CRuDjtpF7LTlRze+CZFSwdDJFUtWfk4Pd6HLypZHRm/XuxmsBKUJ8cjgDSgE0bVymAn2kg5mvg== +rollup-plugin-commonjs@^9.3.4: + version "9.3.4" + resolved "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-9.3.4.tgz#2b3dddbbbded83d45c36ff101cdd29e924fd23bc" + integrity sha512-DTZOvRoiVIHHLFBCL4pFxOaJt8pagxsVldEXBOn6wl3/V21wVaj17HFfyzTsQUuou3sZL3lEJZVWKPFblJfI6w== dependencies: estree-walker "^0.6.0" magic-string "^0.25.2" @@ -9672,11 +9697,12 @@ rollup-plugin-license@^0.8.1: mkdirp "0.5.1" moment "2.23.0" -rollup-plugin-node-resolve@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-4.0.1.tgz#f95765d174e5daeef9ea6268566141f53aa9d422" - integrity sha512-fSS7YDuCe0gYqKsr5OvxMloeZYUSgN43Ypi1WeRZzQcWtHgFayV5tUSPYpxuaioIIWaBXl6NrVk0T2/sKwueLg== +rollup-plugin-node-resolve@^4.2.1: + version "4.2.1" + resolved "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-4.2.1.tgz#a949f3082c9839ca586d0e893425d1f83ed01fcf" + integrity sha512-zf2dcKBSv9KSnNbAPDYzwLpeI4Lc4bOsNlaRsq3ud80zquxWdu9iYA0ZgmHxFjBkbt8uHzXCGC4FkkejtngKng== dependencies: + "@types/resolve" "0.0.8" builtin-modules "^3.0.0" is-module "^1.0.0" resolve "^1.10.0" @@ -9705,13 +9731,13 @@ rollup-pluginutils@^2.6.0: estree-walker "^0.6.0" micromatch "^3.1.10" -rollup@^1.8.0: - version "1.8.0" - resolved "https://registry.npmjs.org/rollup/-/rollup-1.8.0.tgz#e3ce8b708ad4325166717f74f244f691595d35e2" - integrity sha512-dKxL6ihUZ9YrVySKf/LBz5joW2sqwWkiuki34279Ppr2cL+O6Za6Ujovk+rtTX0AFCIsH1rs6y8LYKdZZ/7C5A== +rollup@^1.9.0: + version "1.9.0" + resolved "https://registry.npmjs.org/rollup/-/rollup-1.9.0.tgz#65f7db8d312a07d4e9702316025f91df56ce9f9c" + integrity sha512-cNZx9MLpKFMSaObdVFeu8nXw8gfw6yjuxWjt5mRCJcBZrAJ0NHAYwemKjayvYvhLaNNkf3+kS2DKRKS5J6NRVg== dependencies: "@types/estree" "0.0.39" - "@types/node" "^11.11.6" + "@types/node" "^11.13.0" acorn "^6.1.1" rsvp@^4.8.4: @@ -10709,10 +10735,10 @@ ts-jest@^23.10.5: semver "^5.5" yargs-parser "10.x" -ts-jest@^24.0.1: - version "24.0.1" - resolved "https://registry.npmjs.org/ts-jest/-/ts-jest-24.0.1.tgz#77258061cc354c3fa8616b8ac03baa0f8580f854" - integrity sha512-mgNZmYPuGBNgYpUzchI7vdSr6zATQI0TrSyzREnXHuPCvlW8T1DQ/fdscgx4ivS5vAMUGUaoxGdWIVHC5I8imw== +ts-jest@^24.0.2: + version "24.0.2" + resolved "https://registry.npmjs.org/ts-jest/-/ts-jest-24.0.2.tgz#8dde6cece97c31c03e80e474c749753ffd27194d" + integrity sha512-h6ZCZiA1EQgjczxq+uGLXQlNgeg02WWJBbeT8j6nyIBRQdglqbvzDoHahTEIiS6Eor6x8mK6PfZ7brQ9Q6tzHw== dependencies: bs-logger "0.x" buffer-from "1.x" @@ -10819,10 +10845,10 @@ typedarray@^0.0.6: resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= -typescript@^3.4.1: - version "3.4.1" - resolved "https://registry.npmjs.org/typescript/-/typescript-3.4.1.tgz#b6691be11a881ffa9a05765a205cb7383f3b63c6" - integrity sha512-3NSMb2VzDQm8oBTLH6Nj55VVtUEpe/rgkIzMir0qVoLyjDZlnMBva0U6vDiV3IH+sl/Yu6oP5QwsAQtHPmDd2Q== +typescript@^3.4.2: + version "3.4.2" + resolved "https://registry.npmjs.org/typescript/-/typescript-3.4.2.tgz#9ed4e6475d906f589200193be056f5913caed481" + integrity sha512-Og2Vn6Mk7JAuWA1hQdDQN/Ekm/SchX80VzLhjKN9ETYrIepBFAd8PkOdOTK2nKt0FCkmMZKBJvQ1dV1gIxPu/A== ua-parser-js@^0.7.19: version "0.7.19" @@ -11253,10 +11279,10 @@ webidl-conversions@^4.0.2: resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== -webpack-bundle-analyzer@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.1.0.tgz#2f19cbb87bb6d4f3cb4e59cb67c837bd9436e89d" - integrity sha512-nyDyWEs7C6DZlgvu1pR1zzJfIWSiGPbtaByZr8q+Fd2xp70FuM/8ngCJzj3Er1TYRLSFmp1F1OInbEm4DZH8NA== +webpack-bundle-analyzer@^3.2.0: + version "3.2.0" + resolved "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.2.0.tgz#0630d298e88511d036d7c823705d7b852593d5c4" + integrity sha512-F6bwrg5TBb9HsHZCltH1L5F091ELQ+/i67MEH7jWkYRvVp53eONNneGaIXSdOQUiXUyd3RnkITWRfWvSVQGnZQ== dependencies: acorn "^6.0.7" acorn-walk "^6.1.1" From e88e998d70c2e195faa0b4273bbc28a85c49e078 Mon Sep 17 00:00:00 2001 From: Pooya Parsa Date: Sun, 7 Apr 2019 14:55:53 +0430 Subject: [PATCH 07/30] fix(cli): throw error with proper code for failed imports (#5478) --- packages/cli/src/imports.js | 21 +++++++++------------ packages/cli/test/unit/imports.test.js | 15 +++++---------- 2 files changed, 14 insertions(+), 22 deletions(-) diff --git a/packages/cli/src/imports.js b/packages/cli/src/imports.js index b68f1bc38c..22f1bee6ec 100644 --- a/packages/cli/src/imports.js +++ b/packages/cli/src/imports.js @@ -1,28 +1,25 @@ import path from 'path' -import consola from 'consola' const localNodeModules = path.resolve(process.cwd(), 'node_modules') // Prefer importing modules from local node_modules (for NPX and global bin) async function _import(modulePath) { - let m - for (const mp of [ path.resolve(localNodeModules, modulePath), modulePath ]) { + for (const mp of [ + path.resolve(localNodeModules, modulePath), + modulePath + ]) { try { - m = await import(mp) + return await import(mp) } catch (e) { if (e.code !== 'MODULE_NOT_FOUND') { throw e - } else if (mp === modulePath) { - consola.fatal( - `Module ${modulePath} not found.\n\n`, - `Please install missing dependency:\n\n`, - `Using npm: npm i ${modulePath}\n\n`, - `Using yarn: yarn add ${modulePath}` - ) } } } - return m + + const error = new Error(`Cannot import module '${modulePath}'`) + error.code = 'MODULE_NOT_FOUND' + throw error } export const builder = () => _import('@nuxt/builder') diff --git a/packages/cli/test/unit/imports.test.js b/packages/cli/test/unit/imports.test.js index 75f040f0c4..93e5e361b8 100644 --- a/packages/cli/test/unit/imports.test.js +++ b/packages/cli/test/unit/imports.test.js @@ -1,4 +1,3 @@ -import consola from 'consola' import { importModule } from '../../src/imports' describe('imports', () => { @@ -8,15 +7,11 @@ describe('imports', () => { test('should import core module', async () => { await expect(importModule('path')).resolves.toBeDefined() }) - test('should print error when module not found', async () => { - await expect(importModule('not-found-module')).resolves.toBeUndefined() - expect(consola.fatal).toHaveBeenCalled() - expect(consola.fatal).toHaveBeenCalledWith( - `Module not-found-module not found.\n\n`, - `Please install missing dependency:\n\n`, - `Using npm: npm i not-found-module\n\n`, - `Using yarn: yarn add not-found-module` - ) + test('should throw error with proper code when module not found', async () => { + await expect(importModule('not-found-module')).rejects.toMatchObject({ + message: `Cannot import module 'not-found-module'`, + code: 'MODULE_NOT_FOUND' + }) }) test('should throw error when error is not module not found', async () => { await expect(importModule('jest/README.md')).rejects.toThrow() From f1c8d493d992a04207819e19dca092d3c88531b3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" Date: Mon, 8 Apr 2019 13:32:42 +0100 Subject: [PATCH 08/30] chore(deps): lock file maintenance (#5485) --- yarn.lock | 382 +++++++++++++++++------------------------------------- 1 file changed, 119 insertions(+), 263 deletions(-) diff --git a/yarn.lock b/yarn.lock index 8f37acda84..de4f4360bb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9,27 +9,7 @@ dependencies: "@babel/highlight" "^7.0.0" -"@babel/core@^7.1.0": - version "7.4.0" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.4.0.tgz#248fd6874b7d755010bfe61f557461d4f446d9e9" - integrity sha512-Dzl7U0/T69DFOTwqz/FJdnOSWS57NpjNfCwMKHABr589Lg8uX1RrlBIJ7L5Dubt/xkLsx0xH5EBFzlBVes1ayA== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.4.0" - "@babel/helpers" "^7.4.0" - "@babel/parser" "^7.4.0" - "@babel/template" "^7.4.0" - "@babel/traverse" "^7.4.0" - "@babel/types" "^7.4.0" - convert-source-map "^1.1.0" - debug "^4.1.0" - json5 "^2.1.0" - lodash "^4.17.11" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/core@^7.4.3": +"@babel/core@^7.1.0", "@babel/core@^7.4.3": version "7.4.3" resolved "https://registry.npmjs.org/@babel/core/-/core-7.4.3.tgz#198d6d3af4567be3989550d97e068de94503074f" integrity sha512-oDpASqKFlbspQfzAE7yaeTmdljSH2ADIvBlb0RwbStltTuWa0+7CCI1fYVINNv9saHPa1W7oaKeuNuKj+RQCvA== @@ -85,9 +65,9 @@ "@babel/types" "^7.4.0" "@babel/helper-create-class-features-plugin@^7.4.0": - version "7.4.0" - resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.4.0.tgz#30fd090e059d021995c1762a5b76798fa0b51d82" - integrity sha512-2K8NohdOT7P6Vyp23QH4w2IleP8yG3UJsbRKwA4YP6H8fErcLkFuuEEqbF2/BYBKSNci/FWJiqm6R3VhM/QHgw== + version "7.4.3" + resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.4.3.tgz#5bbd279c6c3ac6a60266b89bbfe7f8021080a1ef" + integrity sha512-UMl3TSpX11PuODYdWGrUeW6zFkdYhDn7wRLrOuNVM6f9L+S9CzmDXYyrp3MTHcwWjnzur1f/Op8A7iYZWya2Yg== dependencies: "@babel/helper-function-name" "^7.1.0" "@babel/helper-member-expression-to-functions" "^7.0.0" @@ -150,19 +130,7 @@ dependencies: "@babel/types" "^7.0.0" -"@babel/helper-module-transforms@^7.1.0": - version "7.2.2" - resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.2.2.tgz#ab2f8e8d231409f8370c883d20c335190284b963" - integrity sha512-YRD7I6Wsv+IHuTPkAmAS4HhY0dkPobgLftHp0cRGZSdrRvmZY8rFvae/GVu3bD00qscuvK3WPHB3YdNpBXUqrA== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-simple-access" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - "@babel/template" "^7.2.2" - "@babel/types" "^7.2.2" - lodash "^4.17.10" - -"@babel/helper-module-transforms@^7.4.3": +"@babel/helper-module-transforms@^7.1.0", "@babel/helper-module-transforms@^7.4.3": version "7.4.3" resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.4.3.tgz#b1e357a1c49e58a47211a6853abb8e2aaefeb064" integrity sha512-H88T9IySZW25anu5uqyaC1DaQre7ofM+joZtAaO2F8NBdFfupH0SZ4gKjgSFVcvtx/aAirqA9L9Clio2heYbZA== @@ -186,14 +154,7 @@ resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" integrity sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA== -"@babel/helper-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.0.0.tgz#2c1718923b57f9bbe64705ffe5640ac64d9bdb27" - integrity sha512-TR0/N0NDCcUIUEbqV6dCO+LptmmSQFQ7q70lfcEB4URsjD0E1HzicrwUH+ap6BAQ2jhCX9Q4UqZy4wilujWlkg== - dependencies: - lodash "^4.17.10" - -"@babel/helper-regex@^7.4.3": +"@babel/helper-regex@^7.0.0", "@babel/helper-regex@^7.4.3": version "7.4.3" resolved "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.4.3.tgz#9d6e5428bfd638ab53b37ae4ec8caf0477495147" integrity sha512-hnoq5u96pLCfgjXuj8ZLX3QQ+6nAulS+zSgi6HulUwFbEruRAKwbGLU5OvXkE14L8XW6XsQEKsIDfgthKLRAyA== @@ -246,15 +207,6 @@ "@babel/traverse" "^7.1.0" "@babel/types" "^7.2.0" -"@babel/helpers@^7.4.0": - version "7.4.2" - resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.4.2.tgz#3bdfa46a552ca77ef5a0f8551be5f0845ae989be" - integrity sha512-gQR1eQeroDzFBikhrCccm5Gs2xBjZ57DNjGbqTaHo911IpmSxflOQWMAHPw/TXk8L3isv7s9lYzUkexOeTQUYg== - dependencies: - "@babel/template" "^7.4.0" - "@babel/traverse" "^7.4.0" - "@babel/types" "^7.4.0" - "@babel/helpers@^7.4.3": version "7.4.3" resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.4.3.tgz#7b1d354363494b31cb9a2417ae86af32b7853a3b" @@ -273,12 +225,7 @@ esutils "^2.0.2" js-tokens "^4.0.0" -"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.4.0": - version "7.4.2" - resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.4.2.tgz#b4521a400cb5a871eab3890787b4bc1326d38d91" - integrity sha512-9fJTDipQFvlfSVdD/JBtkiY0br9BtfvW2R8wo6CX/Ej2eMuV0gWPk1M67Mt3eggQvBqYW1FCEk8BN7WvGm/g5g== - -"@babel/parser@^7.4.3": +"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.4.0", "@babel/parser@^7.4.3": version "7.4.3" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.4.3.tgz#eb3ac80f64aa101c907d4ce5406360fe75b7895b" integrity sha512-gxpEUhTS1sGA63EGQGuA+WESPR/6tz6ng7tSHFCmaTJK/cGK8y37cBTspX+U2xCAue2IQVvF6Z0oigmjwD8YGQ== @@ -511,16 +458,7 @@ "@babel/helper-module-transforms" "^7.1.0" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-modules-commonjs@^7.2.0": - version "7.4.0" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.4.0.tgz#3b8ec61714d3b75d20c5ccfa157f2c2e087fd4ca" - integrity sha512-iWKAooAkipG7g1IY0eah7SumzfnIT3WNhT4uYB2kIsvHnNSB6MDYVa5qyICSwaTBDBY2c4SnJ3JtEa6ltJd6Jw== - dependencies: - "@babel/helper-module-transforms" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-simple-access" "^7.1.0" - -"@babel/plugin-transform-modules-commonjs@^7.4.3": +"@babel/plugin-transform-modules-commonjs@^7.2.0", "@babel/plugin-transform-modules-commonjs@^7.4.3": version "7.4.3" resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.4.3.tgz#3917f260463ac08f8896aa5bd54403f6e1fed165" integrity sha512-sMP4JqOTbMJMimqsSZwYWsMjppD+KRyDIUVW91pd7td0dZKAvPmhCaxhOzkzLParKwgQc7bdL9UNv+rpJB0HfA== @@ -723,22 +661,7 @@ "@babel/parser" "^7.4.0" "@babel/types" "^7.4.0" -"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.4.0": - version "7.4.0" - resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.0.tgz#14006967dd1d2b3494cdd650c686db9daf0ddada" - integrity sha512-/DtIHKfyg2bBKnIN+BItaIlEg5pjAnzHOIQe5w+rHAw/rg9g0V7T4rqPX8BJPfW11kt3koyjAnTNwCzb28Y1PA== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.4.0" - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.4.0" - "@babel/parser" "^7.4.0" - "@babel/types" "^7.4.0" - debug "^4.1.0" - globals "^11.1.0" - lodash "^4.17.11" - -"@babel/traverse@^7.4.3": +"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.4.0", "@babel/traverse@^7.4.3": version "7.4.3" resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.3.tgz#1a01f078fc575d589ff30c0f71bf3c3d9ccbad84" integrity sha512-HmA01qrtaCwwJWpSKpA948cBvU5BrmviAief/b3AVw936DtcdsTexlbyzNuDnthwhOQ37xshn7hvQaEQk7ISYQ== @@ -1630,11 +1553,12 @@ universal-user-agent "^2.0.1" "@octokit/rest@^16.16.0": - version "16.22.0" - resolved "https://registry.npmjs.org/@octokit/rest/-/rest-16.22.0.tgz#461770ae6f8b5a50a85f7d1b2752645c3e01ba6a" - integrity sha512-1PGUwDxLuG7AZsiKaIdxJr918jcZ1FtPX0kGqxoUlssn+fIzzlwQY623gnM8vY9c9jfASD+QUQmflHh3FwBthw== + version "16.23.2" + resolved "https://registry.npmjs.org/@octokit/rest/-/rest-16.23.2.tgz#975e84610427c4ab6c41bec77c24aed9b7563db4" + integrity sha512-ZxiZMaCuqBG/IsbgNRVfGwYsvBb5DjHuMGjJgOrinT+/b+1j1U7PiGyRkHDJdjTGA6N/PsMC2lP2ZybX9579iA== dependencies: "@octokit/request" "2.4.2" + atob-lite "^2.0.0" before-after-hook "^1.4.0" btoa-lite "^1.0.0" deprecation "^1.0.1" @@ -1780,12 +1704,7 @@ resolved "https://registry.npmjs.org/@types/mime/-/mime-2.0.1.tgz#dc488842312a7f075149312905b5e3c0b054c79d" integrity sha512-FwI9gX75FgVBJ7ywgnq/P7tw+/o1GUbtP0KzbtusLigAOgIgNISRK0ZPl4qertvXSIE8YbsVJueQ90cDt9YYyw== -"@types/node@*": - version "11.12.2" - resolved "https://registry.npmjs.org/@types/node/-/node-11.12.2.tgz#d7f302e74b10e9801d52852137f652d9ee235da8" - integrity sha512-c82MtnqWB/CqqK7/zit74Ob8H1dBdV7bK+BcErwtXbe0+nUGkgzq5NTDmRW/pAv2lFtmeNmW95b0zK2hxpeklg== - -"@types/node@^11.13.0": +"@types/node@*", "@types/node@^11.13.0": version "11.13.0" resolved "https://registry.npmjs.org/@types/node/-/node-11.13.0.tgz#b0df8d6ef9b5001b2be3a94d909ce3c29a80f9e1" integrity sha512-rx29MMkRdVmzunmiA4lzBYJNnXsW/PhG4kMBy2ATsYaDjGGR75dCFEVVROKpNwlVdcUX3xxlghKQOeDPBJobng== @@ -1877,18 +1796,7 @@ "@types/connect" "*" "@types/webpack" "*" -"@types/webpack@*": - version "4.4.26" - resolved "https://registry.npmjs.org/@types/webpack/-/webpack-4.4.26.tgz#b52f605351f2ed60e6ce24fa7df39ab7abd03470" - integrity sha512-vs8LjgEZUQTBxotXbMf8s4jgykozkqjv6P0JRi+1BLh0n7LQUkMXfvsoPb5U/dBL1ay5Lu0c46G6FRmAZBhAUA== - dependencies: - "@types/anymatch" "*" - "@types/node" "*" - "@types/tapable" "*" - "@types/uglify-js" "*" - source-map "^0.6.0" - -"@types/webpack@^4.4.27": +"@types/webpack@*", "@types/webpack@^4.4.27": version "4.4.27" resolved "https://registry.npmjs.org/@types/webpack/-/webpack-4.4.27.tgz#8bb9429185977a6b3b9e6e6132f561066aa7e7c2" integrity sha512-xSll/4UXnLQ0xjdAoTRIFxA6NPC2abJ8nHxRH6SqTymHrfGCc8er7qH0npwCP8q3VFoJh2Hjz1wH8oTjwx9/jQ== @@ -1900,9 +1808,9 @@ source-map "^0.6.0" "@types/yargs@^12.0.2", "@types/yargs@^12.0.9": - version "12.0.10" - resolved "https://registry.npmjs.org/@types/yargs/-/yargs-12.0.10.tgz#17a8ec65cd8e88f51b418ceb271af18d3137df67" - integrity sha512-WsVzTPshvCSbHThUduGGxbmnwcpkgSctHGHTqzWyFg4lYAuV5qXlyFPOsP3OWqCINfmg/8VXP+zJaa4OxEsBQQ== + version "12.0.11" + resolved "https://registry.npmjs.org/@types/yargs/-/yargs-12.0.11.tgz#a090d88e1f40a910e6443c95493c1c035c76ebdc" + integrity sha512-IsU1TD+8cQCyG76ZqxP0cVFnofvfzT8p/wO8ENT4jbN/KKN3grsHFgHNl/U+08s33ayX4LwI85cEhYXCOlOkMw== "@vue/babel-helper-vue-jsx-merge-props@^1.0.0-beta.3": version "1.0.0-beta.3" @@ -2493,18 +2401,23 @@ asynckit@^0.4.0: resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= +atob-lite@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/atob-lite/-/atob-lite-2.0.0.tgz#0fef5ad46f1bd7a8502c65727f0367d5ee43d696" + integrity sha1-D+9a1G8b16hQLGVyfwNn1e5D1pY= + atob@^2.1.1: version "2.1.2" resolved "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== autoprefixer@^9.4.9: - version "9.5.0" - resolved "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.5.0.tgz#7e51d0355c11596e6cf9a0afc9a44e86d1596c70" - integrity sha512-hMKcyHsZn5+qL6AUeP3c8OyuteZ4VaUlg+fWbyl8z7PqsKHF/Bf8/px3K6AT8aMzDkBo8Bc11245MM+itDBOxQ== + version "9.5.1" + resolved "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.5.1.tgz#243b1267b67e7e947f28919d786b50d3bb0fb357" + integrity sha512-KJSzkStUl3wP0D5sdMlP82Q52JLy5+atf2MHAre48+ckWkXgixmfHyWmA77wFDy6jTHU6mIgXv6hAQ2mf1PjJQ== dependencies: - browserslist "^4.4.2" - caniuse-lite "^1.0.30000947" + browserslist "^4.5.4" + caniuse-lite "^1.0.30000957" normalize-range "^0.1.2" num2fraction "^1.2.2" postcss "^7.0.14" @@ -2663,9 +2576,9 @@ block-stream@*: inherits "~2.0.0" bluebird@^3.1.1, bluebird@^3.5.1, bluebird@^3.5.3: - version "3.5.3" - resolved "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz#7d01c6f9616c9a51ab0f8c549a79dfe6ec33efa7" - integrity sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw== + version "3.5.4" + resolved "https://registry.npmjs.org/bluebird/-/bluebird-3.5.4.tgz#d6cc661595de30d5b3af5fcedd3c0b3ef6ec5714" + integrity sha512-FG+nFEZChJrbQ9tIccIfZJBz3J7mLrAhxakAbnrJWn8d7aKOC+LWifa0G+p4ZqKp4y13T7juYvdhq9NzKdsrjw== bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: version "4.11.8" @@ -2807,16 +2720,7 @@ browserify-zlib@^0.2.0: dependencies: pako "~1.0.5" -browserslist@^4.0.0, browserslist@^4.4.2, browserslist@^4.5.1: - version "4.5.3" - resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.5.3.tgz#969495c410314bc89f14e748505e58be968080f1" - integrity sha512-Tx/Jtrmh6vFg24AelzLwCaCq1IUJiMDM1x/LPzqbmbktF8Zo7F9ONUpOWsFK6TtdON95mSMaQUWqi0ilc8xM6g== - dependencies: - caniuse-lite "^1.0.30000955" - electron-to-chromium "^1.3.122" - node-releases "^1.1.12" - -browserslist@^4.5.2: +browserslist@^4.0.0, browserslist@^4.4.2, browserslist@^4.5.2, browserslist@^4.5.4: version "4.5.4" resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.5.4.tgz#166c4ecef3b51737a42436ea8002aeea466ea2c7" integrity sha512-rAjx494LMjqKnMPhFkuLmLp8JWEX0o8ADTGeAbOqaF+XCvYLreZrG5uVjnPBlAQ8REZK4pzXGvp0bWgrFtKaag== @@ -2869,9 +2773,9 @@ builtin-modules@^1.1.1: integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= builtin-modules@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.0.0.tgz#1e587d44b006620d90286cc7a9238bbc6129cab1" - integrity sha512-hMIeU4K2ilbXV6Uv93ZZ0Avg/M91RaKXucQ+4me2Do1txxBDyDZWCBa5bJSLqoNTRpXTLwEzIk1KmloenDDjhg== + version "3.1.0" + resolved "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.1.0.tgz#aad97c15131eb76b65b50ef208e7584cd76a7484" + integrity sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw== builtin-status-codes@^3.0.0: version "3.0.0" @@ -2969,9 +2873,9 @@ callsites@^2.0.0: integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= callsites@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/callsites/-/callsites-3.0.0.tgz#fb7eb569b72ad7a45812f93fd9430a3e410b3dd3" - integrity sha512-tWnkwu9YEq2uzlBDI4RcLn8jrFvF9AOi8PxDNU3hZZjJcjkcRAq3vCI+vZcg1SuxISDYe86k9VZFwAxDiJGoAw== + version "3.1.0" + resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== camel-case@3.0.x, camel-case@^3.0.0: version "3.0.0" @@ -3008,12 +2912,7 @@ camelcase@^4.1.0: resolved "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= -camelcase@^5.0.0, camelcase@^5.2.0: - version "5.2.0" - resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.2.0.tgz#e7522abda5ed94cc0489e1b8466610e88404cf45" - integrity sha512-IXFsBS2pC+X0j0N/GE7Dm7j3bsEBp+oTpb7F50dwEVX7rf3IgwO9XatnegTsDtniKCUtEJH4fSU6Asw7uoVLfQ== - -camelcase@^5.3.1: +camelcase@^5.0.0, camelcase@^5.2.0, camelcase@^5.3.1: version "5.3.1" resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== @@ -3028,12 +2927,7 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000939, caniuse-lite@^1.0.30000947, caniuse-lite@^1.0.30000955: - version "1.0.30000955" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000955.tgz#360fdb9a1e41d6dd996130411334e44a39e4446d" - integrity sha512-6AwmIKgqCYfDWWadRkAuZSHMQP4Mmy96xAXEdRBlN/luQhlRYOKgwOlZ9plpCOsVbBuqbTmGqDK3JUM/nlr8CA== - -caniuse-lite@^1.0.30000957: +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000939, caniuse-lite@^1.0.30000955, caniuse-lite@^1.0.30000957: version "1.0.30000957" resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000957.tgz#fb1026bf184d7d62c685205358c3b24b9e29f7b3" integrity sha512-8wxNrjAzyiHcLXN/iunskqQnJquQQ6VX8JHfW5kLgAPRSiSuKZiNfmIkP5j7jgyXqAQBSoXyJxfnbCFS0ThSiQ== @@ -3080,19 +2974,7 @@ check-types@^7.3.0: resolved "https://registry.npmjs.org/check-types/-/check-types-7.4.0.tgz#0378ec1b9616ec71f774931a3c6516fad8c152f4" integrity sha512-YbulWHdfP99UfZ73NcUDlNJhEIDgm9Doq9GhpyXbF+7Aegi3CVV7qqMCKTTqJxlvEvnQBp9IA+dxsGN6xK/nSg== -cheerio@^1.0.0-rc.2: - version "1.0.0-rc.2" - resolved "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.2.tgz#4b9f53a81b27e4d5dac31c0ffd0cfa03cc6830db" - integrity sha1-S59TqBsn5NXawxwP/Qz6A8xoMNs= - dependencies: - css-select "~1.2.0" - dom-serializer "~0.1.0" - entities "~1.1.1" - htmlparser2 "^3.9.1" - lodash "^4.15.0" - parse5 "^3.0.1" - -cheerio@^1.0.0-rc.3: +cheerio@^1.0.0-rc.2, cheerio@^1.0.0-rc.3: version "1.0.0-rc.3" resolved "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.3.tgz#094636d425b2e9c0f4eb91a46c05630c9a1a8bf6" integrity sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA== @@ -3300,7 +3182,12 @@ commander@2.17.x: resolved "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" integrity sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg== -commander@^2.12.1, commander@^2.18.0, commander@^2.19.0, commander@~2.19.0: +commander@^2.12.1, commander@^2.18.0, commander@^2.19.0: + version "2.20.0" + resolved "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" + integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== + +commander@~2.19.0: version "2.19.0" resolved "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a" integrity sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg== @@ -3548,24 +3435,24 @@ copy-descriptor@^0.1.0: integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= core-js-compat@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.0.0.tgz#cd9810b8000742535a4a43773866185e310bd4f7" - integrity sha512-W/Ppz34uUme3LmXWjMgFlYyGnbo1hd9JvA0LNQ4EmieqVjg2GPYbj3H6tcdP2QGPGWdRKUqZVbVKLNIFVs/HiA== + version "3.0.1" + resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.0.1.tgz#bff73ba31ca8687431b9c88f78d3362646fb76f0" + integrity sha512-2pC3e+Ht/1/gD7Sim/sqzvRplMiRnFQVlPpDVaHtY9l7zZP7knamr3VRD6NyGfHd84MrDC0tAM9ulNxYMW0T3g== dependencies: - browserslist "^4.5.1" - core-js "3.0.0" - core-js-pure "3.0.0" - semver "^5.6.0" + browserslist "^4.5.4" + core-js "3.0.1" + core-js-pure "3.0.1" + semver "^6.0.0" -core-js-pure@3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.0.0.tgz#a5679adb4875427c8c0488afc93e6f5b7125859b" - integrity sha512-yPiS3fQd842RZDgo/TAKGgS0f3p2nxssF1H65DIZvZv0Od5CygP8puHXn3IQiM/39VAvgCbdaMQpresrbGgt9g== +core-js-pure@3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.0.1.tgz#37358fb0d024e6b86d443d794f4e37e949098cbe" + integrity sha512-mSxeQ6IghKW3MoyF4cz19GJ1cMm7761ON+WObSyLfTu/Jn3x7w4NwNFnrZxgl4MTSvYYepVLNuRtlB4loMwJ5g== -core-js@3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/core-js/-/core-js-3.0.0.tgz#a8dbfa978d29bfc263bfb66c556d0ca924c28957" - integrity sha512-WBmxlgH2122EzEJ6GH8o9L/FeoUKxxxZ6q6VUxoTlsE4EvbTWKJb447eyVxTEuq0LpXjlq/kCB2qgBvsYRkLvQ== +core-js@3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/core-js/-/core-js-3.0.1.tgz#1343182634298f7f38622f95e73f54e48ddf4738" + integrity sha512-sco40rF+2KlE0ROMvydjkrVMMG1vYilP2ALoRXcYR4obqbYIuV3Bg+51GEDW+HF8n7NRA+iaA4qD0nD9lo9mew== core-js@^2.6.5: version "2.6.5" @@ -4177,7 +4064,7 @@ dom-event-types@^1.0.0: resolved "https://registry.npmjs.org/dom-event-types/-/dom-event-types-1.0.0.tgz#5830a0a29e1bf837fe50a70cd80a597232813cae" integrity sha512-2G2Vwi2zXTHBGqXHsJ4+ak/iP0N8Ar+G8a7LiD2oup5o4sQWytwqqrZu/O6hIMV0KMID2PL69OhpshLO0n7UJQ== -dom-serializer@0, dom-serializer@~0.1.0, dom-serializer@~0.1.1: +dom-serializer@0, dom-serializer@~0.1.1: version "0.1.1" resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0" integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA== @@ -4273,9 +4160,9 @@ ejs@^2.6.1: integrity sha512-0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ== electron-to-chromium@^1.3.122: - version "1.3.122" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.122.tgz#b32a0805f48557bd3c3b8104eadc7fa511b14a9a" - integrity sha512-3RKoIyCN4DhP2dsmleuFvpJAIDOseWH88wFYBzb22CSwoFDSWRc4UAMfrtc9h8nBdJjTNIN3rogChgOy6eFInw== + version "1.3.124" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.124.tgz#861fc0148748a11b3e5ccebdf8b795ff513fa11f" + integrity sha512-glecGr/kFdfeXUHOHAWvGcXrxNU+1wSO/t5B23tT1dtlvYB26GY8aHzZSWD7HqhqC800Lr+w/hQul6C5AF542w== elliptic@^6.0.0: version "6.4.1" @@ -4670,19 +4557,6 @@ exec-sh@^0.3.2: resolved "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.2.tgz#6738de2eb7c8e671d0366aea0b0db8c6f7d7391b" integrity sha512-9sLAvzhI5nc8TpuQUh4ahMdCrWT00wPWz7j47/emR5+2qEfoZP5zzUXvx+vdx+H6ohhnsYC31iX04QLYJK8zTg== -execa@^0.10.0: - version "0.10.0" - resolved "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz#ff456a8f53f90f8eccc71a96d11bdfc7f082cb50" - integrity sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw== - dependencies: - cross-spawn "^6.0.0" - get-stream "^3.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - execa@^0.7.0: version "0.7.0" resolved "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" @@ -5981,9 +5855,9 @@ is-fullwidth-code-point@^2.0.0: integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= is-generator-fn@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.0.0.tgz#038c31b774709641bda678b1f06a4e3227c10b3e" - integrity sha512-elzyIdM7iKoFHzcrndIqjYomImhxrFRnGP3galODoII4TB9gI7mZ+FnlLQmmjf27SxHS2gKEeyhX5/+YRS6H9g== + version "2.1.0" + resolved "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== is-glob@^3.1.0: version "3.1.0" @@ -6569,9 +6443,9 @@ js-tokens@^3.0.2: integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= js-yaml@^3.12.0, js-yaml@^3.13.0, js-yaml@^3.9.0: - version "3.13.0" - resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.0.tgz#38ee7178ac0eea2c97ff6d96fff4b18c7d8cf98e" - integrity sha512-pZZoSxcCYco+DIKBTimr67J6Hy+EYGZDY/HCWC+iAEA9h1ByhMXAIVUXMcMFpOCxQ/xjXmPI2MkDL5HRm5eFrQ== + version "3.13.1" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" + integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== dependencies: argparse "^1.0.7" esprima "^4.0.0" @@ -6758,9 +6632,9 @@ klaw-sync@^6.0.0: graceful-fs "^4.1.11" kleur@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/kleur/-/kleur-3.0.2.tgz#83c7ec858a41098b613d5998a7b653962b504f68" - integrity sha512-3h7B2WRT5LNXOtQiAaWonilegHcPSf9nLVXlSTci8lu1dZUuui61+EsPEZqSVxY7rXYmB2DVKMQILxaO5WL61Q== + version "3.0.3" + resolved "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== last-call-webpack-plugin@^3.0.0: version "3.0.0" @@ -7034,7 +6908,7 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" -macos-release@^2.0.0: +macos-release@^2.2.0: version "2.2.0" resolved "https://registry.npmjs.org/macos-release/-/macos-release-2.2.0.tgz#ab58d55dd4714f0a05ad4b0e90f4370fef5cdea8" integrity sha512-iV2IDxZaX8dIcM7fG6cI46uNmHUxHE4yN+Z8tKHAW1TBPMZDIKHf/3L+YnOuj/FK9il14UaVdHmiQ1tsi90ltA== @@ -7254,7 +7128,12 @@ miller-rabin@^4.0.0: bn.js "^4.0.0" brorand "^1.0.1" -"mime-db@>= 1.38.0 < 2", mime-db@~1.38.0: +"mime-db@>= 1.38.0 < 2": + version "1.39.0" + resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.39.0.tgz#f95a20275742f7d2ad0429acfe40f4233543780e" + integrity sha512-DTsrw/iWVvwHH+9Otxccdyy0Tgiil6TWK/xhfARJZF/QFhwOgZgOIvA2/VIGpM8U7Q8z5nDmdDWC6tuVMJNibw== + +mime-db@~1.38.0: version "1.38.0" resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz#1a2aab16da9eb167b49c6e4df2d9c68d63d8e2ad" integrity sha512-bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg== @@ -7272,9 +7151,9 @@ mime@1.4.1: integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== mime@^2.0.3, mime@^2.3.1: - version "2.4.0" - resolved "https://registry.npmjs.org/mime/-/mime-2.4.0.tgz#e051fd881358585f3279df333fe694da0bcffdd6" - integrity sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w== + version "2.4.2" + resolved "https://registry.npmjs.org/mime/-/mime-2.4.2.tgz#ce5229a5e99ffc313abac806b482c10e7ba6ac78" + integrity sha512-zJBfZDkwRu+j3Pdd2aHsR5GfH2jIWhmL1ZzBoc+X+3JEti2hbArWcyJ+1laC1D2/U/W1a/+Cegj0/OnEU2ybjg== mimic-fn@^1.0.0: version "1.2.0" @@ -7598,13 +7477,6 @@ node-pre-gyp@^0.10.0: semver "^5.3.0" tar "^4" -node-releases@^1.1.12: - version "1.1.12" - resolved "https://registry.npmjs.org/node-releases/-/node-releases-1.1.12.tgz#1d6baf544316b5422fcd35efe18708370a4e7637" - integrity sha512-Y+AQ1xdjcgaEzpL65PBEF3fnl1FNKnDh9Zm+AUQLIlyyqtSc4u93jyMN4zrjMzdwKQ10RTr3tgY1x7qpsfF/xg== - dependencies: - semver "^5.3.0" - node-releases@^1.1.13: version "1.1.13" resolved "https://registry.npmjs.org/node-releases/-/node-releases-1.1.13.tgz#8c03296b5ae60c08e2ff4f8f22ae45bd2f210083" @@ -7785,9 +7657,9 @@ object-copy@^0.1.0: kind-of "^3.0.3" object-keys@^1.0.11, object-keys@^1.0.12: - version "1.1.0" - resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.0.tgz#11bd22348dd2e096a045ab06f6c85bcc340fa032" - integrity sha512-6OO5X1+2tYkNyNEx6TsCxEqFfRWaqx6EtMiSbGrw8Ob8v9Ne+Hl8rBAgLBZn5wjEz3s/s6U1WXFUFOcxxAwUpg== + version "1.1.1" + resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== object-visit@^1.0.0: version "1.0.1" @@ -7915,11 +7787,11 @@ os-locale@^3.0.0: mem "^4.0.0" os-name@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/os-name/-/os-name-3.0.0.tgz#e1434dbfddb8e74b44c98b56797d951b7648a5d9" - integrity sha512-7c74tib2FsdFbQ3W+qj8Tyd1R3Z6tuVRNNxXjJcZ4NgjIEQU9N/prVMqcW29XZPXGACqaXN3jq58/6hoaoXH6g== + version "3.1.0" + resolved "https://registry.npmjs.org/os-name/-/os-name-3.1.0.tgz#dec19d966296e1cd62d701a5a66ee1ddeae70801" + integrity sha512-h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg== dependencies: - macos-release "^2.0.0" + macos-release "^2.2.0" windows-release "^3.1.0" os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: @@ -7953,9 +7825,9 @@ p-finally@^1.0.0: integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= p-is-promise@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.0.0.tgz#7554e3d572109a87e1f3f53f6a7d85d1b194f4c5" - integrity sha512-pzQPhYMCAgLAKPWD2jC3Se9fEfrD9npNos0y150EeqZll7akhEgGhTW/slB6lHku8AvYGiJ+YJ5hfHKePPgFWg== + version "2.1.0" + resolved "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" + integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== p-limit@^1.1.0: version "1.3.0" @@ -8398,12 +8270,12 @@ postcss-custom-media@^7.0.7: postcss "^7.0.14" postcss-custom-properties@^8.0.9: - version "8.0.9" - resolved "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-8.0.9.tgz#8943870528a6eae4c8e8d285b6ccc9fd1f97e69c" - integrity sha512-/Lbn5GP2JkKhgUO2elMs4NnbUJcvHX4AaF5nuJDaNkd2chYW1KA5qtOGGgdkBEWcXtKSQfHXzT7C6grEVyb13w== + version "8.0.10" + resolved "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-8.0.10.tgz#e8dc969e1e15c555f0b836b7f278ef47e3cdeaff" + integrity sha512-GDL0dyd7++goDR4SSasYdRNNvp4Gqy1XMzcCnTijiph7VB27XXpJ8bW/AI0i2VSBZ55TpdGhMr37kMSpRfYD0Q== dependencies: - postcss "^7.0.5" - postcss-values-parser "^2.0.0" + postcss "^7.0.14" + postcss-values-parser "^2.0.1" postcss-custom-selectors@^5.1.2: version "5.1.2" @@ -9361,9 +9233,9 @@ read@1, read@~1.0.1: util-deprecate "~1.0.1" readable-stream@^3.1.1: - version "3.2.0" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.2.0.tgz#de17f229864c120a9f56945756e4f32c4045245d" - integrity sha512-RV20kLjdmpZuTF1INEb9IA3L68Nmi+Ri7ppZqo78wj//Pn62fCoJyV9zalccNzDD/OuJpMG4f+pfMl8+L6QdGw== + version "3.3.0" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.3.0.tgz#cb8011aad002eb717bf040291feba8569c986fb9" + integrity sha512-EsI+s3k3XsW+fU8fQACLN59ky34AZ14LoeVZpYwmZvldCFo0r0gnelwF2TcMjLor/BTL5aDJVBMkss0dthToPw== dependencies: inherits "^2.0.3" string_decoder "^1.1.1" @@ -9715,15 +9587,7 @@ rollup-plugin-replace@^2.1.1: magic-string "^0.25.2" rollup-pluginutils "^2.4.1" -rollup-pluginutils@^2.3.0, rollup-pluginutils@^2.4.1, rollup-pluginutils@^2.5.0: - version "2.5.0" - resolved "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.5.0.tgz#23be0f05ac3972ea7b08fc7870cb91fde5b23a09" - integrity sha512-9Muh1H+XB5f5ONmKMayUoTYR1EZwHbwJJ9oZLrKT5yuTf/RLIQ5mYIGsrERquVucJmjmaAW0Y7+6Qo1Ep+5w3Q== - dependencies: - estree-walker "^0.6.0" - micromatch "^3.1.10" - -rollup-pluginutils@^2.6.0: +rollup-pluginutils@^2.3.0, rollup-pluginutils@^2.4.1, rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0: version "2.6.0" resolved "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.6.0.tgz#203706edd43dfafeaebc355d7351119402fc83ad" integrity sha512-aGQwspEF8oPKvg37u3p7h0cYNwmJR1sCBMZGZ5b9qy8HGtETknqjzcxrDRrcAnJNXN18lBH4Q9vZYth/p4n8jQ== @@ -10133,9 +9997,9 @@ spdx-expression-parse@^3.0.0: spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.3" - resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.3.tgz#81c0ce8f21474756148bbb5f3bfc0f36bf15d76e" - integrity sha512-uBIcIl3Ih6Phe3XHK1NqboJLdGfwr1UN3k6wSD1dZpmPsIkb8AGNbZYJ1fOBk834+Gxy8rpfDxrS6XLEMZMY2g== + version "3.0.4" + resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz#75ecd1a88de8c184ef015eafb51b5b48bfd11bb1" + integrity sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA== split-string@^3.0.1, split-string@^3.0.2: version "3.1.0" @@ -10434,9 +10298,9 @@ svg-tags@^1.0.0: integrity sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q= svgo@^1.0.0: - version "1.2.0" - resolved "https://registry.npmjs.org/svgo/-/svgo-1.2.0.tgz#305a8fc0f4f9710828c65039bb93d5793225ffc3" - integrity sha512-xBfxJxfk4UeVN8asec9jNxHiv3UAMv/ujwBWGYvQhhMb2u3YTGKkiybPcLFDLq7GLLWE9wa73e0/m8L5nTzQbw== + version "1.2.1" + resolved "https://registry.npmjs.org/svgo/-/svgo-1.2.1.tgz#3fedde75a4016193e1c2608b5fdef6f3e4a9fd99" + integrity sha512-Y1+LyT4/y1ms4/0yxPMSlvx6dIbgklE9w8CIOnfeoFGB74MEkq8inSfEr6NhocTaFbyYp0a1dvNgRKGRmEBlzA== dependencies: chalk "^2.4.1" coa "^2.0.2" @@ -10445,7 +10309,7 @@ svgo@^1.0.0: css-tree "1.0.0-alpha.28" css-url-regex "^1.1.0" csso "^3.5.1" - js-yaml "^3.12.0" + js-yaml "^3.13.0" mkdirp "~0.5.1" object.values "^1.1.0" sax "~1.2.4" @@ -10863,15 +10727,7 @@ uglify-js@3.4.x: commander "~2.19.0" source-map "~0.6.1" -uglify-js@^3.1.4: - version "3.5.2" - resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.2.tgz#dc0c7ac2da0a4b7d15e84266818ff30e82529474" - integrity sha512-imog1WIsi9Yb56yRt5TfYVxGmnWs3WSGU73ieSOlMVFwhJCA9W8fqFFMMj4kgDqiS/80LGdsYnWL7O9UcjEBlg== - dependencies: - commander "~2.19.0" - source-map "~0.6.1" - -uglify-js@^3.5.1: +uglify-js@^3.1.4, uglify-js@^3.5.1: version "3.5.3" resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.3.tgz#d490bb5347f23025f0c1bc0dee901d98e4d6b063" integrity sha512-rIQPT2UMDnk4jRX+w4WO84/pebU2jiLsjgIyrCktYgSvx28enOE3iYQMr+BD1rHiitWnDmpu0cY/LfIEpKcjcw== @@ -11440,11 +11296,11 @@ widest-line@^2.0.0: string-width "^2.1.1" windows-release@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/windows-release/-/windows-release-3.1.0.tgz#8d4a7e266cbf5a233f6c717dac19ce00af36e12e" - integrity sha512-hBb7m7acFgQPQc222uEQTmdcGLeBmQLNLFIh0rDk3CwFOBrfjefLzEfEfmpMq8Af/n/GnFf3eYf203FY1PmudA== + version "3.2.0" + resolved "https://registry.npmjs.org/windows-release/-/windows-release-3.2.0.tgz#8122dad5afc303d833422380680a79cdfa91785f" + integrity sha512-QTlz2hKLrdqukrsapKsINzqMgOUpQW268eJ0OaOpJN32h272waxR9fkB9VoWRtK7uKHG5EHJcTXQBD8XZVJkFA== dependencies: - execa "^0.10.0" + execa "^1.0.0" wordwrap@~0.0.2: version "0.0.3" @@ -11631,6 +11487,6 @@ yauzl@2.4.1: fd-slicer "~1.0.1" yn@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/yn/-/yn-3.0.0.tgz#0073c6b56e92aed652fbdfd62431f2d6b9a7a091" - integrity sha512-+Wo/p5VRfxUgBUGy2j/6KX2mj9AYJWOHuhMjMcbBFc3y54o9/4buK1ksBvuiK01C3kby8DH9lSmJdSxw+4G/2Q== + version "3.1.0" + resolved "https://registry.npmjs.org/yn/-/yn-3.1.0.tgz#fcbe2db63610361afcc5eb9e0ac91e976d046114" + integrity sha512-kKfnnYkbTfrAdd0xICNFw7Atm8nKpLcLv9AZGEt+kczL/WQVai4e2V6ZN8U/O+iI6WrNuJjNNOyu4zfhl9D3Hg== From 8b15af79e7ce3f2041272fce4294635e7b7d1f3f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" Date: Mon, 8 Apr 2019 14:55:57 +0100 Subject: [PATCH 09/30] chore(deps): update dependency vue-router to ^3.0.3 (#5488) --- distributions/nuxt-start/package.json | 2 +- packages/vue-app/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/distributions/nuxt-start/package.json b/distributions/nuxt-start/package.json index fe1ee60c4f..7ba0bcb7da 100644 --- a/distributions/nuxt-start/package.json +++ b/distributions/nuxt-start/package.json @@ -58,7 +58,7 @@ "vue": "^2.6.10", "vue-meta": "^1.6.0", "vue-no-ssr": "^1.1.1", - "vue-router": "^3.0.2", + "vue-router": "^3.0.3", "vuex": "^3.1.0" }, "engines": { diff --git a/packages/vue-app/package.json b/packages/vue-app/package.json index a7d24dfa31..b9b8a61e68 100644 --- a/packages/vue-app/package.json +++ b/packages/vue-app/package.json @@ -17,7 +17,7 @@ "vue": "^2.6.10", "vue-meta": "^1.6.0", "vue-no-ssr": "^1.1.1", - "vue-router": "^3.0.2", + "vue-router": "^3.0.3", "vue-template-compiler": "^2.6.10", "vuex": "^3.1.0" }, diff --git a/yarn.lock b/yarn.lock index de4f4360bb..c2ccbd0b7d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11041,10 +11041,10 @@ vue-property-decorator@^8.1.0: dependencies: vue-class-component "^7.0.1" -vue-router@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/vue-router/-/vue-router-3.0.2.tgz#dedc67afe6c4e2bc25682c8b1c2a8c0d7c7e56be" - integrity sha512-opKtsxjp9eOcFWdp6xLQPLmRGgfM932Tl56U9chYTnoWqKxQ8M20N7AkdEbM5beUh6wICoFGYugAX9vQjyJLFg== +vue-router@^3.0.3: + version "3.0.3" + resolved "https://registry.npmjs.org/vue-router/-/vue-router-3.0.3.tgz#370ca607475c45a1cfab2d9d2ac846feab1c534c" + integrity sha512-62rB6GjJuyklnLL+yKST469yCYj93SXEn8rpYjxgLwv0aH/Fd6OApD8Hgi9RlraZ1OOwv3jPQvZTtf1GixYW+g== vue-server-renderer@^2.6.10: version "2.6.10" From 87fcf556a47c6661269b3a4112444898f7820faa Mon Sep 17 00:00:00 2001 From: "Xin Du (Clark)" Date: Mon, 8 Apr 2019 18:43:57 +0100 Subject: [PATCH 10/30] fix(vue-renderer): use `modulepreload` for modern mode spa generate (#5489) --- packages/vue-renderer/src/spa-meta.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/vue-renderer/src/spa-meta.js b/packages/vue-renderer/src/spa-meta.js index 8fb72e91f0..a151da48a3 100644 --- a/packages/vue-renderer/src/spa-meta.js +++ b/packages/vue-renderer/src/spa-meta.js @@ -30,8 +30,9 @@ export default class SPAMetaRenderer { return vm.$meta().inject() } - async render({ url = '/', req = {} }) { - const cacheKey = `${req.modernMode ? 'modern:' : 'legacy:'}${url}` + async render({ url = '/', req = {}, _generate }) { + const modern = req.modernMode || (this.options.modern && _generate) + const cacheKey = `${modern ? 'modern:' : 'legacy:'}${url}` let meta = this.cache.get(cacheKey) if (meta) { @@ -75,7 +76,7 @@ export default class SPAMetaRenderer { meta.resourceHints = '' const { resources: { modernManifest, clientManifest } } = this.renderer.context - const manifest = req.modernMode ? modernManifest : clientManifest + const manifest = modern ? modernManifest : clientManifest const { shouldPreload, shouldPrefetch } = this.options.render.bundleRenderer @@ -90,7 +91,7 @@ export default class SPAMetaRenderer { meta.preloadFiles = manifest.initial .map(SPAMetaRenderer.normalizeFile) .filter(({ fileWithoutQuery, asType }) => shouldPreload(fileWithoutQuery, asType)) - .map(file => ({ ...file, modern: req.modernMode })) + .map(file => ({ ...file, modern })) meta.resourceHints += meta.preloadFiles .map(({ file, extension, fileWithoutQuery, asType, modern }) => { From cacfed51f54dacbe0b02f2b467e4fea9c7a90fc7 Mon Sep 17 00:00:00 2001 From: "Xin Du (Clark)" Date: Tue, 9 Apr 2019 11:08:10 +0100 Subject: [PATCH 11/30] chore: add pimlie into the core team (#5494) --- .all-contributorsrc | 10 ++++++++++ README.md | 5 ++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index e5a92c37bc..65e4c36209 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -120,6 +120,16 @@ "platform", "review" ] + }, + { + "login": "pimlie", + "name": "Pim", + "avatar_url": "https://avatars3.githubusercontent.com/u/1067403?v=4", + "profile": "https://github.com/pimlie", + "contributions": [ + "bug", + "code" + ] } ] } diff --git a/README.md b/README.md index fa3c38bae6..43b457df6f 100644 --- a/README.md +++ b/README.md @@ -181,9 +181,8 @@ Note: we recommend putting `.nuxt` in `.npmignore` or `.gitignore`. -| [
Sébastien Chopin](https://github.com/atinux)
[📝](#blog-Atinux "Blogposts") [🐛](https://github.com/Atinux/Nuxt.js/issues?q=author%3AAtinux "Bug reports") [💻](https://github.com/Atinux/Nuxt.js/commits?author=Atinux "Code") [🎨](#design-Atinux "Design") [📖](https://github.com/Atinux/Nuxt.js/commits?author=Atinux "Documentation") [💬](#question-Atinux "Answering Questions") [👀](#review-Atinux "Reviewed Pull Requests") [📢](#talk-Atinux "Talks") | [
Alexandre Chopin](https://github.com/alexchopin)
[🎨](#design-alexchopin "Design") [📖](https://github.com/Atinux/Nuxt.js/commits?author=alexchopin "Documentation") [📋](#eventOrganizing-alexchopin "Event Organizing") [📦](#platform-alexchopin "Packaging/porting to new platform") [💬](#question-alexchopin "Answering Questions") [📢](#talk-alexchopin "Talks") | [
Pooya Parsa](https://github.com/pi0)
[🐛](https://github.com/Atinux/Nuxt.js/issues?q=author%3Api0 "Bug reports") [💻](https://github.com/Atinux/Nuxt.js/commits?author=pi0 "Code") [🔌](#plugin-pi0 "Plugin/utility libraries") [💬](#question-pi0 "Answering Questions") [👀](#review-pi0 "Reviewed Pull Requests") [🔧](#tool-pi0 "Tools") | [
Clark Du](https://github.com/clarkdo)
[🐛](https://github.com/Atinux/Nuxt.js/issues?q=author%3Aclarkdo "Bug reports") [💻](https://github.com/Atinux/Nuxt.js/commits?author=clarkdo "Code") [💡](#example-clarkdo "Examples") [👀](#review-clarkdo "Reviewed Pull Requests") [⚠️](https://github.com/Atinux/Nuxt.js/commits?author=clarkdo "Tests") [🔧](#tool-clarkdo "Tools") | -| :---: | :---: | :---: | :---: | -| [
Alexander Lichter](https://github.com/manniL)
[💬](#question-manniL "Answering Questions") [🐛](https://github.com/Atinux/Nuxt.js/issues?q=author%3AmanniL "Bug reports") [💻](https://github.com/Atinux/Nuxt.js/commits?author=manniL "Code") [💡](#example-manniL "Examples") [👀](#review-manniL "Reviewed Pull Requests") [⚠️](https://github.com/Atinux/Nuxt.js/commits?author=manniL "Tests") | [
Jonas Galvez](https://github.com/galvez)
[💬](#question-galvez "Answering Questions") [🐛](https://github.com/Atinux/Nuxt.js/issues?q=author%3Agalvez "Bug reports") [💻](https://github.com/Atinux/Nuxt.js/commits?author=galvez "Code") [💡](#example-galvez "Examples") [👀](#review-galvez "Reviewed Pull Requests") [⚠️](https://github.com/Atinux/Nuxt.js/commits?author=galvez "Tests") | [
Dmitry Molotkov](https://github.com/aldarund)
[💬](#question-aldarund "Answering Questions") [🐛](https://github.com/Atinux/Nuxt.js/issues?q=author%3Aaldarund "Bug reports") [💻](https://github.com/Atinux/Nuxt.js/commits?author=aldarund "Code") [🤔](#ideas-aldarund "Ideas, Planning, & Feedback") [👀](#review-aldarund "Reviewed Pull Requests") | [
Kevin Marrec](https://github.com/kevinmarrec)
[💻](https://github.com/Atinux/Nuxt.js/commits?author=kevinmarrec "Code") [🤔](#ideas-kevinmarrec "Ideas, Planning, & Feedback") [📦](#platform-kevinmarrec "Packaging/porting to new platform") [👀](#review-kevinmarrec "Reviewed Pull Requests") | +
Sébastien Chopin
Sébastien Chopin

📝 🐛 💻 🎨 📖 💬 👀 📢
Alexandre Chopin
Alexandre Chopin

🎨 📖 📋 📦 💬 📢
Pooya Parsa
Pooya Parsa

🐛 💻 🔌 💬 👀 🔧
Clark Du
Clark Du

🐛 💻 💡 👀 ⚠️ 🔧
Alexander Lichter
Alexander Lichter

💬 🐛 💻 💡 👀 ⚠️
Jonas Galvez
Jonas Galvez

💬 🐛 💻 💡 👀 ⚠️
Dmitry Molotkov
Dmitry Molotkov

💬 🐛 💻 🤔 👀
Kevin Marrec
Kevin Marrec

💻 🤔 📦 👀
Pim
Pim

🐛 💻
+ ## Contributors From a59a79419f942b8fee4869da89f8354a536c1426 Mon Sep 17 00:00:00 2001 From: Clark Du Date: Tue, 9 Apr 2019 11:11:45 +0100 Subject: [PATCH 12/30] chore: add chinese translation for issue template --- .github/ISSUE_TEMPLATE.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md index faba7fff08..fbf73938cd 100644 --- a/.github/ISSUE_TEMPLATE.md +++ b/.github/ISSUE_TEMPLATE.md @@ -9,4 +9,15 @@ Please use the following link to create a new issue: - ❗️ All other issues - https://cmty.nuxtjs.org/ If your issue was not created using the app above, **it will be closed immediately**. + +🚨 注意事项 🚨 + +请务必使用下述链接来创建 issue: + +- 🚨 Bug 提交 - https://bug.nuxtjs.org/ +- 🙋 新功能提案 - https://feature.nuxtjs.org/ +- 🤔 寻求帮助 - https://otechie.com/nuxt +- ❗️ 其他问题 - https://cmty.nuxtjs.org/ + +如果 issue 不是通过上述链接进行创建, **该 issue 会被系统自动关闭** --> From 9831943a1f270069e05bbf1a472804b31ed4b007 Mon Sep 17 00:00:00 2001 From: "Xin Du (Clark)" Date: Tue, 9 Apr 2019 22:08:52 +0100 Subject: [PATCH 13/30] chore: update members in license and package.json (#5498) --- LICENSE | 5 ++++- distributions/nuxt-start/package.json | 3 +++ distributions/nuxt-ts/package.json | 3 +++ distributions/nuxt/package.json | 3 +++ 4 files changed, 13 insertions(+), 1 deletion(-) diff --git a/LICENSE b/LICENSE index 8bc64ce2c3..cb1a5dc1bc 100644 --- a/LICENSE +++ b/LICENSE @@ -1,12 +1,15 @@ MIT License -Copyright (c) 2016-2018 Nuxt.js Team +Copyright (c) 2016-2019 Nuxt.js Team - Sebastien Chopin ([@Atinux](https://github.com/Atinux)) - Alexandre Chopin ([@alexchopin](https://github.com/alexchopin)) - Pooya Parsa ([@pi0](https://github.com/pi0)) - Clark Du ([@clarkdo](https://github.com/clarkdo)) - Jonas Galvez ([@galvez](https://github.com/galvez)) - Alexander Lichter ([@manniL](https://github.com/manniL)) +- Dmitry Molotkov ([@aldarund](https://github.com/aldarund)) +- Kevin Marrec ([@kevinmarrec](https://github.com/kevinmarrec)) +- Pim ([@pimlie](https://github.com/pimlie)) - All the amazing contributors (https://github.com/nuxt/nuxt.js/graphs/contributors) Permission is hereby granted, free of charge, to any person obtaining a copy diff --git a/distributions/nuxt-start/package.json b/distributions/nuxt-start/package.json index 7ba0bcb7da..26ff584514 100644 --- a/distributions/nuxt-start/package.json +++ b/distributions/nuxt-start/package.json @@ -43,6 +43,9 @@ }, { "name": "Kevin Marrec (@kevinmarrec)" + }, + { + "name": "Pim (@pimlie)" } ], "files": [ diff --git a/distributions/nuxt-ts/package.json b/distributions/nuxt-ts/package.json index 4c46da26cf..491768f48e 100644 --- a/distributions/nuxt-ts/package.json +++ b/distributions/nuxt-ts/package.json @@ -46,6 +46,9 @@ }, { "name": "Kevin Marrec (@kevinmarrec)" + }, + { + "name": "Pim (@pimlie)" } ], "files": [ diff --git a/distributions/nuxt/package.json b/distributions/nuxt/package.json index 6e794ccf1b..98c7b68581 100644 --- a/distributions/nuxt/package.json +++ b/distributions/nuxt/package.json @@ -42,6 +42,9 @@ }, { "name": "Kevin Marrec (@kevinmarrec)" + }, + { + "name": "Pim (@pimlie)" } ], "files": [ From 596610dfb6489b7ce3a488fc0ca00ff8a5947004 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" Date: Wed, 10 Apr 2019 01:39:01 +0430 Subject: [PATCH 14/30] chore(deps): update all non-major dependencies (#5491) * add Chinese translation for issue template (#5495) * chore(deps): update all non-major dependencies --- package.json | 2 +- packages/typescript/package.json | 2 +- yarn.lock | 58 ++++++++++++++++++-------------- 3 files changed, 34 insertions(+), 28 deletions(-) diff --git a/package.json b/package.json index f7ec7fdb0a..493ff7af08 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ "jest": "^24.7.1", "jsdom": "^14.0.0", "klaw-sync": "^6.0.0", - "lerna": "^3.13.1", + "lerna": "^3.13.2", "lodash": "^4.17.11", "node-fetch": "^2.3.0", "puppeteer-core": "^1.14.0", diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 48fb7027a9..9f8c2dcbc2 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -13,7 +13,7 @@ "@types/etag": "^1.8.0", "@types/express": "^4.16.1", "@types/html-minifier": "^3.5.3", - "@types/node": "^11.13.0", + "@types/node": "^11.13.2", "@types/optimize-css-assets-webpack-plugin": "^1.3.4", "@types/serve-static": "^1.13.2", "@types/terser-webpack-plugin": "^1.2.1", diff --git a/yarn.lock b/yarn.lock index c2ccbd0b7d..e3a7e93723 100644 --- a/yarn.lock +++ b/yarn.lock @@ -897,16 +897,16 @@ read-package-tree "^5.1.6" semver "^5.5.0" -"@lerna/changed@3.13.1": - version "3.13.1" - resolved "https://registry.npmjs.org/@lerna/changed/-/changed-3.13.1.tgz#dc92476aad43c932fe741969bbd0bcf6146a4c52" - integrity sha512-BRXitEJGOkoudbxEewW7WhjkLxFD+tTk4PrYpHLyCBk63pNTWtQLRE6dc1hqwh4emwyGncoyW6RgXfLgMZgryw== +"@lerna/changed@3.13.2": + version "3.13.2" + resolved "https://registry.npmjs.org/@lerna/changed/-/changed-3.13.2.tgz#2eda47d3e6c20a0f84c379a9e6806e59eeeaad79" + integrity sha512-mcmkxUMR0J4ZyRyVUrdDJl4ZsdHDgdA1xQcbdB4LZvAE/E2lNlPcEfAfbfs08VnRiqvFOqcczbzBq10hvSFg4w== dependencies: "@lerna/collect-updates" "3.13.0" "@lerna/command" "3.13.1" "@lerna/listable" "3.13.0" "@lerna/output" "3.13.0" - "@lerna/version" "3.13.1" + "@lerna/version" "3.13.2" "@lerna/check-working-tree@3.13.0": version "3.13.0" @@ -1209,15 +1209,16 @@ signal-exit "^3.0.2" write-pkg "^3.1.0" -"@lerna/npm-publish@3.13.0": - version "3.13.0" - resolved "https://registry.npmjs.org/@lerna/npm-publish/-/npm-publish-3.13.0.tgz#5c74808376e778865ffdc5885fe83935e15e60c3" - integrity sha512-y4WO0XTaf9gNRkI7as6P2ItVDOxmYHwYto357fjybcnfXgMqEA94c3GJ++jU41j0A9vnmYC6/XxpTd9sVmH9tA== +"@lerna/npm-publish@3.13.2": + version "3.13.2" + resolved "https://registry.npmjs.org/@lerna/npm-publish/-/npm-publish-3.13.2.tgz#ad713ca6f91a852687d7d0e1bda7f9c66df21768" + integrity sha512-HMucPyEYZfom5tRJL4GsKBRi47yvSS2ynMXYxL3kO0ie+j9J7cb0Ir8NmaAMEd3uJWJVFCPuQarehyfTDZsSxg== dependencies: "@lerna/run-lifecycle" "3.13.0" figgy-pudding "^3.5.1" fs-extra "^7.0.0" libnpmpublish "^1.1.1" + npm-package-arg "^6.1.0" npmlog "^4.1.2" pify "^3.0.0" read-package-json "^2.0.13" @@ -1296,10 +1297,10 @@ inquirer "^6.2.0" npmlog "^4.1.2" -"@lerna/publish@3.13.1": - version "3.13.1" - resolved "https://registry.npmjs.org/@lerna/publish/-/publish-3.13.1.tgz#217e401dcb5824cdd6d36555a36303fb7520c514" - integrity sha512-KhCJ9UDx76HWCF03i5TD7z5lX+2yklHh5SyO8eDaLptgdLDQ0Z78lfGj3JhewHU2l46FztmqxL/ss0IkWHDL+g== +"@lerna/publish@3.13.2": + version "3.13.2" + resolved "https://registry.npmjs.org/@lerna/publish/-/publish-3.13.2.tgz#3afccceff5c06b3202d91baf917cd29ab4fb0163" + integrity sha512-L8iceC3Z2YJnlV3cGbfk47NSh1+iOo1tD65z+BU3IYLRpPnnSf8i6BORdKV8rECDj6kjLYvL7//2yxbHy7shhA== dependencies: "@lerna/batch-packages" "3.13.0" "@lerna/check-working-tree" "3.13.0" @@ -1310,7 +1311,7 @@ "@lerna/log-packed" "3.13.0" "@lerna/npm-conf" "3.13.0" "@lerna/npm-dist-tag" "3.13.0" - "@lerna/npm-publish" "3.13.0" + "@lerna/npm-publish" "3.13.2" "@lerna/output" "3.13.0" "@lerna/pack-directory" "3.13.1" "@lerna/prompt" "3.13.0" @@ -1318,7 +1319,7 @@ "@lerna/run-lifecycle" "3.13.0" "@lerna/run-parallel-batches" "3.13.0" "@lerna/validation-error" "3.13.0" - "@lerna/version" "3.13.1" + "@lerna/version" "3.13.2" figgy-pudding "^3.5.1" fs-extra "^7.0.0" libnpmaccess "^3.0.1" @@ -1426,10 +1427,10 @@ dependencies: npmlog "^4.1.2" -"@lerna/version@3.13.1": - version "3.13.1" - resolved "https://registry.npmjs.org/@lerna/version/-/version-3.13.1.tgz#5e919d13abb13a663dcc7922bb40931f12fb137b" - integrity sha512-WpfKc5jZBBOJ6bFS4atPJEbHSiywQ/Gcd+vrwaEGyQHWHQZnPTvhqLuq3q9fIb9sbuhH5pSY6eehhuBrKqTnjg== +"@lerna/version@3.13.2": + version "3.13.2" + resolved "https://registry.npmjs.org/@lerna/version/-/version-3.13.2.tgz#cc177c32c6404ab9d4b7e3d6da90789d48f768b4" + integrity sha512-85AEn6Cx5p1VOejEd5fpTyeDCx6yejSJCgbILkx+gXhLhFg2XpFzLswMd+u71X7RAttWHvhzeKJAw4tWTXDvpQ== dependencies: "@lerna/batch-packages" "3.13.0" "@lerna/check-working-tree" "3.13.0" @@ -1709,6 +1710,11 @@ resolved "https://registry.npmjs.org/@types/node/-/node-11.13.0.tgz#b0df8d6ef9b5001b2be3a94d909ce3c29a80f9e1" integrity sha512-rx29MMkRdVmzunmiA4lzBYJNnXsW/PhG4kMBy2ATsYaDjGGR75dCFEVVROKpNwlVdcUX3xxlghKQOeDPBJobng== +"@types/node@^11.13.2": + version "11.13.2" + resolved "https://registry.npmjs.org/@types/node/-/node-11.13.2.tgz#dc85dde46aa8740bb4aed54b8104250f8f849503" + integrity sha512-HOtU5KqROKT7qX/itKHuTtt5fV0iXbheQvrgbLNXFJQBY/eh+VS5vmmTAVlo3qIGMsypm0G4N1t2AXjy1ZicaQ== + "@types/optimize-css-assets-webpack-plugin@^1.3.4": version "1.3.4" resolved "https://registry.npmjs.org/@types/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-1.3.4.tgz#6838ab7a3a5ec1253ad98c348bdcd009e91b39cd" @@ -6671,14 +6677,14 @@ left-pad@^1.3.0: resolved "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e" integrity sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA== -lerna@^3.13.1: - version "3.13.1" - resolved "https://registry.npmjs.org/lerna/-/lerna-3.13.1.tgz#feaff562176f304bd82329ca29ce46ab6c033463" - integrity sha512-7kSz8LLozVsoUNTJzJzy+b8TnV9YdviR2Ee2PwGZSlVw3T1Rn7kOAPZjEi+3IWnOPC96zMPHVmjCmzQ4uubalw== +lerna@^3.13.2: + version "3.13.2" + resolved "https://registry.npmjs.org/lerna/-/lerna-3.13.2.tgz#68f25cce4219ef9e49d246f10d0f20c4f0bc1622" + integrity sha512-2iliiFVAMNqaKsVSJ90p49dur93d5RlktotAJNp+uuHsCuIIAvwceqmSgDQCmWu4GkgAom+5uy//KV6F9t8fLA== dependencies: "@lerna/add" "3.13.1" "@lerna/bootstrap" "3.13.1" - "@lerna/changed" "3.13.1" + "@lerna/changed" "3.13.2" "@lerna/clean" "3.13.1" "@lerna/cli" "3.13.0" "@lerna/create" "3.13.1" @@ -6688,9 +6694,9 @@ lerna@^3.13.1: "@lerna/init" "3.13.1" "@lerna/link" "3.13.1" "@lerna/list" "3.13.1" - "@lerna/publish" "3.13.1" + "@lerna/publish" "3.13.2" "@lerna/run" "3.13.1" - "@lerna/version" "3.13.1" + "@lerna/version" "3.13.2" import-local "^1.0.0" npmlog "^4.1.2" From 55488796ab3dec4dadf237a69ae2bd4e43dbb49d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" Date: Wed, 10 Apr 2019 01:42:42 +0430 Subject: [PATCH 15/30] chore(deps): update dependency @nuxt/loading-screen to ^0.3.0 (#5501) --- distributions/nuxt-ts/package.json | 2 +- distributions/nuxt/package.json | 2 +- yarn.lock | 12 ++++++------ 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/distributions/nuxt-ts/package.json b/distributions/nuxt-ts/package.json index 491768f48e..03bee7143c 100644 --- a/distributions/nuxt-ts/package.json +++ b/distributions/nuxt-ts/package.json @@ -63,7 +63,7 @@ "@nuxt/cli": "2.6.1", "@nuxt/core": "2.6.1", "@nuxt/generator": "2.6.1", - "@nuxt/loading-screen": "^0.2.0", + "@nuxt/loading-screen": "^0.3.0", "@nuxt/opencollective": "^0.2.2", "@nuxt/typescript": "2.6.1", "@nuxt/webpack": "2.6.1" diff --git a/distributions/nuxt/package.json b/distributions/nuxt/package.json index 98c7b68581..0a2d944815 100644 --- a/distributions/nuxt/package.json +++ b/distributions/nuxt/package.json @@ -61,7 +61,7 @@ "@nuxt/cli": "2.6.1", "@nuxt/core": "2.6.1", "@nuxt/generator": "2.6.1", - "@nuxt/loading-screen": "^0.2.0", + "@nuxt/loading-screen": "^0.3.0", "@nuxt/opencollective": "^0.2.2", "@nuxt/webpack": "2.6.1" }, diff --git a/yarn.lock b/yarn.lock index e3a7e93723..d1dc09607d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1493,15 +1493,15 @@ error-stack-parser "^2.0.0" string-width "^2.0.0" -"@nuxt/loading-screen@^0.2.0": - version "0.2.0" - resolved "https://registry.npmjs.org/@nuxt/loading-screen/-/loading-screen-0.2.0.tgz#fbdfd75814a9935f1827574f2b4c924ac3de81c9" - integrity sha512-QprkUsdOMqwQuw4OeQUX/Fj4LOyLSAAi0aa6mxxpITjfLScTp6Bx2Z+flG0cU19w0L2WSZtdqfQtjY6tYaTVuw== +"@nuxt/loading-screen@^0.3.0": + version "0.3.0" + resolved "https://registry.npmjs.org/@nuxt/loading-screen/-/loading-screen-0.3.0.tgz#ec438337690efffea9508cebcca35675f5445110" + integrity sha512-h0Z5g2MxJCXyeRmzx3Niwkv+/HRQEkKYpL54cN9cHYc4FUG/NBxeIIJgqbh1ih7y5cg0jdDboL0izZrbFsBtiA== dependencies: connect "^3.6.6" fs-extra "^7.0.1" serve-static "^1.13.2" - ws "^6.2.0" + ws "^6.2.1" "@nuxt/opencollective@^0.2.2": version "0.2.2" @@ -11408,7 +11408,7 @@ ws@^5.2.0: dependencies: async-limiter "~1.0.0" -ws@^6.0.0, ws@^6.1.0, ws@^6.1.2, ws@^6.2.0: +ws@^6.0.0, ws@^6.1.0, ws@^6.1.2, ws@^6.2.1: version "6.2.1" resolved "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz#442fdf0a47ed64f59b6a5d8ff130f4748ed524fb" integrity sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA== From 2213853573f321f4ae4c4ecfccb5bbae209a63d2 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" Date: Wed, 10 Apr 2019 14:51:52 +0430 Subject: [PATCH 16/30] chore(deps): update all non-major dependencies (#5503) --- package.json | 8 +++---- packages/typescript/package.json | 2 +- yarn.lock | 40 ++++++++++++++++---------------- 3 files changed, 25 insertions(+), 25 deletions(-) diff --git a/package.json b/package.json index 493ff7af08..90bbf3e096 100644 --- a/package.json +++ b/package.json @@ -71,20 +71,20 @@ "request": "^2.88.0", "request-promise-native": "^1.0.7", "rimraf": "^2.6.3", - "rollup": "^1.9.0", + "rollup": "^1.9.3", "rollup-plugin-alias": "^1.5.1", "rollup-plugin-babel": "^4.3.2", "rollup-plugin-commonjs": "^9.3.4", "rollup-plugin-json": "^4.0.0", "rollup-plugin-license": "^0.8.1", - "rollup-plugin-node-resolve": "^4.2.1", - "rollup-plugin-replace": "^2.1.1", + "rollup-plugin-node-resolve": "^4.2.2", + "rollup-plugin-replace": "^2.2.0", "sort-package-json": "^1.22.1", "ts-jest": "^24.0.2", "ts-loader": "^5.3.3", "ts-node": "^8.0.3", "tslint": "^5.15.0", - "typescript": "^3.4.2", + "typescript": "^3.4.3", "vue-jest": "^4.0.0-beta.2", "vue-property-decorator": "^8.1.0" } diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 9f8c2dcbc2..7a6d9c1fcb 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -25,7 +25,7 @@ "fork-ts-checker-webpack-plugin": "^1.0.1", "fs-extra": "^7.0.1", "ts-loader": "^5.3.3", - "typescript": "^3.4.2" + "typescript": "^3.4.3" }, "publishConfig": { "access": "public" diff --git a/yarn.lock b/yarn.lock index d1dc09607d..c23ad1b516 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1705,7 +1705,7 @@ resolved "https://registry.npmjs.org/@types/mime/-/mime-2.0.1.tgz#dc488842312a7f075149312905b5e3c0b054c79d" integrity sha512-FwI9gX75FgVBJ7ywgnq/P7tw+/o1GUbtP0KzbtusLigAOgIgNISRK0ZPl4qertvXSIE8YbsVJueQ90cDt9YYyw== -"@types/node@*", "@types/node@^11.13.0": +"@types/node@*": version "11.13.0" resolved "https://registry.npmjs.org/@types/node/-/node-11.13.0.tgz#b0df8d6ef9b5001b2be3a94d909ce3c29a80f9e1" integrity sha512-rx29MMkRdVmzunmiA4lzBYJNnXsW/PhG4kMBy2ATsYaDjGGR75dCFEVVROKpNwlVdcUX3xxlghKQOeDPBJobng== @@ -9575,25 +9575,25 @@ rollup-plugin-license@^0.8.1: mkdirp "0.5.1" moment "2.23.0" -rollup-plugin-node-resolve@^4.2.1: - version "4.2.1" - resolved "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-4.2.1.tgz#a949f3082c9839ca586d0e893425d1f83ed01fcf" - integrity sha512-zf2dcKBSv9KSnNbAPDYzwLpeI4Lc4bOsNlaRsq3ud80zquxWdu9iYA0ZgmHxFjBkbt8uHzXCGC4FkkejtngKng== +rollup-plugin-node-resolve@^4.2.2: + version "4.2.2" + resolved "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-4.2.2.tgz#590962b8568d8f7361c2b434e10bd8cb91556615" + integrity sha512-fkTHihF4Tzc95ZotKJNZZgxZPzslj+twk6UNWSBn3ln1mSV55atjsi7CDODdw/NNlteaf/jjjvrAj62p7OQjaQ== dependencies: "@types/resolve" "0.0.8" builtin-modules "^3.0.0" is-module "^1.0.0" resolve "^1.10.0" -rollup-plugin-replace@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/rollup-plugin-replace/-/rollup-plugin-replace-2.1.1.tgz#e49cb8d07d6f91a7bf28b90b66692f2c8c0b9bba" - integrity sha512-IS5ZYBb3px0UfbDCYzKaKxelLd5dbPHhfplEXbymfvGlz9Ok44At4AjTOWe2qEax73bE8+pnMZN9C7PcVpFNlw== +rollup-plugin-replace@^2.2.0: + version "2.2.0" + resolved "https://registry.npmjs.org/rollup-plugin-replace/-/rollup-plugin-replace-2.2.0.tgz#f41ae5372e11e7a217cde349c8b5d5fd115e70e3" + integrity sha512-/5bxtUPkDHyBJAKketb4NfaeZjL5yLZdeUihSfbF2PQMz+rSTEb8ARKoOl3UBT4m7/X+QOXJo3sLTcq+yMMYTA== dependencies: magic-string "^0.25.2" - rollup-pluginutils "^2.4.1" + rollup-pluginutils "^2.6.0" -rollup-pluginutils@^2.3.0, rollup-pluginutils@^2.4.1, rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0: +rollup-pluginutils@^2.3.0, rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0: version "2.6.0" resolved "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.6.0.tgz#203706edd43dfafeaebc355d7351119402fc83ad" integrity sha512-aGQwspEF8oPKvg37u3p7h0cYNwmJR1sCBMZGZ5b9qy8HGtETknqjzcxrDRrcAnJNXN18lBH4Q9vZYth/p4n8jQ== @@ -9601,13 +9601,13 @@ rollup-pluginutils@^2.3.0, rollup-pluginutils@^2.4.1, rollup-pluginutils@^2.5.0, estree-walker "^0.6.0" micromatch "^3.1.10" -rollup@^1.9.0: - version "1.9.0" - resolved "https://registry.npmjs.org/rollup/-/rollup-1.9.0.tgz#65f7db8d312a07d4e9702316025f91df56ce9f9c" - integrity sha512-cNZx9MLpKFMSaObdVFeu8nXw8gfw6yjuxWjt5mRCJcBZrAJ0NHAYwemKjayvYvhLaNNkf3+kS2DKRKS5J6NRVg== +rollup@^1.9.3: + version "1.9.3" + resolved "https://registry.npmjs.org/rollup/-/rollup-1.9.3.tgz#c898fd562dff3165470fc5de9b5e191d50f944b2" + integrity sha512-20iIOjee5n3H6W6CXsVdYs2xw86j4l+LQLM6yACynt+YJCwkqaYNHAjQ/dhVBIKsFpHwPqHamn/GHq+3Zp8ybQ== dependencies: "@types/estree" "0.0.39" - "@types/node" "^11.13.0" + "@types/node" "^11.13.2" acorn "^6.1.1" rsvp@^4.8.4: @@ -10715,10 +10715,10 @@ typedarray@^0.0.6: resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= -typescript@^3.4.2: - version "3.4.2" - resolved "https://registry.npmjs.org/typescript/-/typescript-3.4.2.tgz#9ed4e6475d906f589200193be056f5913caed481" - integrity sha512-Og2Vn6Mk7JAuWA1hQdDQN/Ekm/SchX80VzLhjKN9ETYrIepBFAd8PkOdOTK2nKt0FCkmMZKBJvQ1dV1gIxPu/A== +typescript@^3.4.3: + version "3.4.3" + resolved "https://registry.npmjs.org/typescript/-/typescript-3.4.3.tgz#0eb320e4ace9b10eadf5bc6103286b0f8b7c224f" + integrity sha512-FFgHdPt4T/duxx6Ndf7hwgMZZjZpB+U0nMNGVCYPq0rEzWKjEDobm4J6yb3CS7naZ0yURFqdw9Gwc7UOh/P9oQ== ua-parser-js@^0.7.19: version "0.7.19" From 52ad79baeba4364475e1d0c4eaa432c29e1a739b Mon Sep 17 00:00:00 2001 From: "renovate[bot]" Date: Thu, 11 Apr 2019 12:52:29 +0430 Subject: [PATCH 17/30] chore(deps): update all non-major dependencies (#5507) --- package.json | 4 ++-- packages/typescript/package.json | 2 +- packages/webpack/package.json | 2 +- yarn.lock | 38 ++++++++++++++++---------------- 4 files changed, 23 insertions(+), 23 deletions(-) diff --git a/package.json b/package.json index 90bbf3e096..3ce0e4d43f 100644 --- a/package.json +++ b/package.json @@ -71,13 +71,13 @@ "request": "^2.88.0", "request-promise-native": "^1.0.7", "rimraf": "^2.6.3", - "rollup": "^1.9.3", + "rollup": "^1.10.0", "rollup-plugin-alias": "^1.5.1", "rollup-plugin-babel": "^4.3.2", "rollup-plugin-commonjs": "^9.3.4", "rollup-plugin-json": "^4.0.0", "rollup-plugin-license": "^0.8.1", - "rollup-plugin-node-resolve": "^4.2.2", + "rollup-plugin-node-resolve": "^4.2.3", "rollup-plugin-replace": "^2.2.0", "sort-package-json": "^1.22.1", "ts-jest": "^24.0.2", diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 7a6d9c1fcb..250e77f0bf 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -13,7 +13,7 @@ "@types/etag": "^1.8.0", "@types/express": "^4.16.1", "@types/html-minifier": "^3.5.3", - "@types/node": "^11.13.2", + "@types/node": "^11.13.4", "@types/optimize-css-assets-webpack-plugin": "^1.3.4", "@types/serve-static": "^1.13.2", "@types/terser-webpack-plugin": "^1.2.1", diff --git a/packages/webpack/package.json b/packages/webpack/package.json index 22c279935b..d5daa5c678 100644 --- a/packages/webpack/package.json +++ b/packages/webpack/package.json @@ -44,7 +44,7 @@ "url-loader": "^1.1.2", "vue-loader": "^15.7.0", "webpack": "^4.29.6", - "webpack-bundle-analyzer": "^3.2.0", + "webpack-bundle-analyzer": "^3.3.0", "webpack-dev-middleware": "^3.6.2", "webpack-hot-middleware": "^2.24.3", "webpack-node-externals": "^1.7.2", diff --git a/yarn.lock b/yarn.lock index c23ad1b516..d57204b8d9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1710,10 +1710,10 @@ resolved "https://registry.npmjs.org/@types/node/-/node-11.13.0.tgz#b0df8d6ef9b5001b2be3a94d909ce3c29a80f9e1" integrity sha512-rx29MMkRdVmzunmiA4lzBYJNnXsW/PhG4kMBy2ATsYaDjGGR75dCFEVVROKpNwlVdcUX3xxlghKQOeDPBJobng== -"@types/node@^11.13.2": - version "11.13.2" - resolved "https://registry.npmjs.org/@types/node/-/node-11.13.2.tgz#dc85dde46aa8740bb4aed54b8104250f8f849503" - integrity sha512-HOtU5KqROKT7qX/itKHuTtt5fV0iXbheQvrgbLNXFJQBY/eh+VS5vmmTAVlo3qIGMsypm0G4N1t2AXjy1ZicaQ== +"@types/node@^11.13.4": + version "11.13.4" + resolved "https://registry.npmjs.org/@types/node/-/node-11.13.4.tgz#f83ec3c3e05b174b7241fadeb6688267fe5b22ca" + integrity sha512-+rabAZZ3Yn7tF/XPGHupKIL5EcAbrLxnTr/hgQICxbeuAfWtT0UZSfULE+ndusckBItcv4o6ZeOJplQikVcLvQ== "@types/optimize-css-assets-webpack-plugin@^1.3.4": version "1.3.4" @@ -2778,7 +2778,7 @@ builtin-modules@^1.1.1: resolved "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= -builtin-modules@^3.0.0: +builtin-modules@^3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.1.0.tgz#aad97c15131eb76b65b50ef208e7584cd76a7484" integrity sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw== @@ -9575,13 +9575,13 @@ rollup-plugin-license@^0.8.1: mkdirp "0.5.1" moment "2.23.0" -rollup-plugin-node-resolve@^4.2.2: - version "4.2.2" - resolved "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-4.2.2.tgz#590962b8568d8f7361c2b434e10bd8cb91556615" - integrity sha512-fkTHihF4Tzc95ZotKJNZZgxZPzslj+twk6UNWSBn3ln1mSV55atjsi7CDODdw/NNlteaf/jjjvrAj62p7OQjaQ== +rollup-plugin-node-resolve@^4.2.3: + version "4.2.3" + resolved "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-4.2.3.tgz#638a373a54287d19fcc088fdd1c6fd8a58e4d90a" + integrity sha512-r+WaesPzdGEynpLZLALFEDugA4ACa5zn7bc/+LVX4vAXQQ8IgDHv0xfsSvJ8tDXUtprfBtrDtRFg27ifKjcJTg== dependencies: "@types/resolve" "0.0.8" - builtin-modules "^3.0.0" + builtin-modules "^3.1.0" is-module "^1.0.0" resolve "^1.10.0" @@ -9601,13 +9601,13 @@ rollup-pluginutils@^2.3.0, rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0: estree-walker "^0.6.0" micromatch "^3.1.10" -rollup@^1.9.3: - version "1.9.3" - resolved "https://registry.npmjs.org/rollup/-/rollup-1.9.3.tgz#c898fd562dff3165470fc5de9b5e191d50f944b2" - integrity sha512-20iIOjee5n3H6W6CXsVdYs2xw86j4l+LQLM6yACynt+YJCwkqaYNHAjQ/dhVBIKsFpHwPqHamn/GHq+3Zp8ybQ== +rollup@^1.10.0: + version "1.10.0" + resolved "https://registry.npmjs.org/rollup/-/rollup-1.10.0.tgz#91d594aa4386c51ca0883ad4ef2050b469d3e8aa" + integrity sha512-U9t/JaKtO0+X0pSmLVKMrAZEixrbVzITf193TiEhfoVKCnd7pDimIFo94IxUCgbn6+v5VmduHkubx2VV1s0Ftw== dependencies: "@types/estree" "0.0.39" - "@types/node" "^11.13.2" + "@types/node" "^11.13.4" acorn "^6.1.1" rsvp@^4.8.4: @@ -11141,10 +11141,10 @@ webidl-conversions@^4.0.2: resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== -webpack-bundle-analyzer@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.2.0.tgz#0630d298e88511d036d7c823705d7b852593d5c4" - integrity sha512-F6bwrg5TBb9HsHZCltH1L5F091ELQ+/i67MEH7jWkYRvVp53eONNneGaIXSdOQUiXUyd3RnkITWRfWvSVQGnZQ== +webpack-bundle-analyzer@^3.3.0: + version "3.3.0" + resolved "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.3.0.tgz#2c18aca01fa03f11dccb3f627fb40b9f38bd7225" + integrity sha512-xNz1oC5pFiVLyDHDz2qZs3ydAuIWv96zokdBZAz+xdhD8BX3mytCmbWkzLzNRDjuWEovhQtycuvpfd368XvLBA== dependencies: acorn "^6.0.7" acorn-walk "^6.1.1" From d0afaa1daf7e84994de9e0a7c053784ca3f63711 Mon Sep 17 00:00:00 2001 From: Pooya Parsa Date: Thu, 11 Apr 2019 14:34:21 +0430 Subject: [PATCH 18/30] fix(cli): config cache invalidation + refactors (#5500) --- packages/cli/src/command.js | 3 +- packages/cli/src/commands/dev.js | 3 +- packages/cli/src/commands/start.js | 2 +- packages/cli/src/index.js | 2 +- packages/cli/src/utils/banner.js | 47 ++++++++ packages/cli/src/utils/config.js | 70 +++++++++++ packages/cli/src/utils/index.js | 114 +----------------- .../cli/test/unit/utils-minimalcli.test.js | 4 +- packages/cli/test/unit/utils.test.js | 14 ++- packages/config/src/options.js | 10 +- .../test/__snapshots__/options.test.js.snap | 3 + packages/utils/src/cjs.js | 34 ++++++ packages/utils/src/index.js | 1 + packages/utils/test/index.test.js | 4 +- 14 files changed, 184 insertions(+), 127 deletions(-) create mode 100644 packages/cli/src/utils/banner.js create mode 100644 packages/cli/src/utils/config.js create mode 100644 packages/utils/src/cjs.js diff --git a/packages/cli/src/command.js b/packages/cli/src/command.js index 576d579e0e..b39d82ffab 100644 --- a/packages/cli/src/command.js +++ b/packages/cli/src/command.js @@ -3,7 +3,8 @@ import path from 'path' import consola from 'consola' import minimist from 'minimist' import { name, version } from '../package.json' -import { loadNuxtConfig, forceExit } from './utils' +import { forceExit } from './utils' +import { loadNuxtConfig } from './utils/config' import { indent, foldLines, colorize } from './utils/formatting' import { startSpaces, optionSpaces, forceExitTimeout } from './utils/constants' import { detectTypeScript } from './utils/typescript' diff --git a/packages/cli/src/commands/dev.js b/packages/cli/src/commands/dev.js index fbbe853e6d..3339c00718 100644 --- a/packages/cli/src/commands/dev.js +++ b/packages/cli/src/commands/dev.js @@ -2,7 +2,8 @@ import consola from 'consola' import chalk from 'chalk' import opener from 'opener' import { common, server } from '../options' -import { showBanner, eventsMapping, formatPath } from '../utils' +import { eventsMapping, formatPath } from '../utils' +import { showBanner } from '../utils/banner' export default { name: 'dev', diff --git a/packages/cli/src/commands/start.js b/packages/cli/src/commands/start.js index fc78d89620..66acbf3b84 100644 --- a/packages/cli/src/commands/start.js +++ b/packages/cli/src/commands/start.js @@ -1,5 +1,5 @@ import { common, server } from '../options' -import { showBanner } from '../utils' +import { showBanner } from '../utils/banner' export default { name: 'start', diff --git a/packages/cli/src/index.js b/packages/cli/src/index.js index 3ee655ce7c..751c601f11 100644 --- a/packages/cli/src/index.js +++ b/packages/cli/src/index.js @@ -7,4 +7,4 @@ export const imports = _imports export { default as NuxtCommand } from './command' export { default as setup } from './setup' export { default as run } from './run' -export { loadNuxtConfig } from './utils' +export { loadNuxtConfig } from './utils/config' diff --git a/packages/cli/src/utils/banner.js b/packages/cli/src/utils/banner.js new file mode 100644 index 0000000000..ebbd9f860d --- /dev/null +++ b/packages/cli/src/utils/banner.js @@ -0,0 +1,47 @@ +import consola from 'consola' +import prettyBytes from 'pretty-bytes' +import env from 'std-env' +import chalk from 'chalk' +import { successBox } from './formatting' + +export function showBanner(nuxt) { + if (env.test) { + return + } + + if (env.minimalCLI) { + for (const listener of nuxt.server.listeners) { + consola.info('Listening on: ' + listener.url) + } + return + } + + const titleLines = [] + const messageLines = [] + + // Name and version + titleLines.push(`${chalk.green.bold('Nuxt.js')} ${nuxt.constructor.version}`) + + // Running mode + titleLines.push(`Running in ${nuxt.options.dev ? chalk.bold.blue('development') : chalk.bold.green('production')} mode (${chalk.bold(nuxt.options.mode)})`) + + if (nuxt.options._typescript && nuxt.options._typescript.runtime) { + titleLines.push(`TypeScript support is ${chalk.green.bold('enabled')}`) + } + + // https://nodejs.org/api/process.html#process_process_memoryusage + const { heapUsed, rss } = process.memoryUsage() + titleLines.push(`Memory usage: ${chalk.bold(prettyBytes(heapUsed))} (RSS: ${prettyBytes(rss)})`) + + // Listeners + for (const listener of nuxt.server.listeners) { + messageLines.push(chalk.bold('Listening on: ') + chalk.underline.blue(listener.url)) + } + + // Add custom badge messages + if (nuxt.options.cli.badgeMessages.length) { + messageLines.push('', ...nuxt.options.cli.badgeMessages) + } + + process.stdout.write(successBox(messageLines.join('\n'), titleLines.join('\n'))) +} diff --git a/packages/cli/src/utils/config.js b/packages/cli/src/utils/config.js new file mode 100644 index 0000000000..9a5e6e8fbb --- /dev/null +++ b/packages/cli/src/utils/config.js @@ -0,0 +1,70 @@ +import path from 'path' +import consola from 'consola' +import defaultsDeep from 'lodash/defaultsDeep' +import { defaultNuxtConfigFile, getDefaultNuxtConfig } from '@nuxt/config' +import { clearRequireCache, scanRequireTree } from '@nuxt/utils' +import esm from 'esm' + +export async function loadNuxtConfig(argv) { + const rootDir = path.resolve(argv._[0] || '.') + let nuxtConfigFile + let options = {} + + try { + nuxtConfigFile = require.resolve(path.resolve(rootDir, argv['config-file'])) + } catch (e) { + if (e.code !== 'MODULE_NOT_FOUND') { + throw (e) + } else if (argv['config-file'] !== defaultNuxtConfigFile) { + consola.fatal('Could not load config file: ' + argv['config-file']) + } + } + + if (nuxtConfigFile) { + if (nuxtConfigFile.endsWith('.ts')) { + options = require(nuxtConfigFile) || {} + } else { + clearRequireCache(nuxtConfigFile) + options = esm(module, { cache: false, cjs: { cache: false } })(nuxtConfigFile) || {} + } + + if (options.default) { + options = options.default + } + + if (typeof options === 'function') { + try { + options = await options() + if (options.default) { + options = options.default + } + } catch (error) { + consola.error(error) + consola.fatal('Error while fetching async configuration') + } + } + + // Keep _nuxtConfigFile for watching + options._nuxtConfigFile = nuxtConfigFile + + // Keep all related files for watching + options._nuxtConfigFiles = Array.from(scanRequireTree(nuxtConfigFile)) + } + + if (typeof options.rootDir !== 'string') { + options.rootDir = rootDir + } + + // Nuxt Mode + options.mode = + (argv.spa && 'spa') || (argv.universal && 'universal') || options.mode + + // Server options + options.server = defaultsDeep({ + port: argv.port || undefined, + host: argv.hostname || undefined, + socket: argv['unix-socket'] || undefined + }, options.server || {}, getDefaultNuxtConfig().server) + + return options +} diff --git a/packages/cli/src/utils/index.js b/packages/cli/src/utils/index.js index afad65561d..72f49d197a 100644 --- a/packages/cli/src/utils/index.js +++ b/packages/cli/src/utils/index.js @@ -1,23 +1,10 @@ import path from 'path' -import consola from 'consola' -import esm from 'esm' import exit from 'exit' -import defaultsDeep from 'lodash/defaultsDeep' -import { defaultNuxtConfigFile, getDefaultNuxtConfig } from '@nuxt/config' + import { lock } from '@nuxt/utils' import chalk from 'chalk' -import prettyBytes from 'pretty-bytes' import env from 'std-env' -import { successBox, warningBox } from './formatting' - -const esmOptions = { - cache: false, - cjs: { - cache: true, - vars: true, - namedExports: true - } -} +import { warningBox } from './formatting' export const eventsMapping = { add: { icon: '+', color: 'green', action: 'Created' }, @@ -25,103 +12,6 @@ export const eventsMapping = { unlink: { icon: '-', color: 'red', action: 'Removed' } } -export async function loadNuxtConfig(argv) { - const rootDir = path.resolve(argv._[0] || '.') - let nuxtConfigFile - let options = {} - - try { - nuxtConfigFile = require.resolve(path.resolve(rootDir, argv['config-file'])) - } catch (e) { - if (e.code !== 'MODULE_NOT_FOUND') { - throw (e) - } else if (argv['config-file'] !== defaultNuxtConfigFile) { - consola.fatal('Could not load config file: ' + argv['config-file']) - } - } - - if (nuxtConfigFile) { - options = (nuxtConfigFile.endsWith('.ts') ? require(nuxtConfigFile) : esm(module, esmOptions)(nuxtConfigFile)) || {} - if (options.default) { - options = options.default - } - - if (typeof options === 'function') { - try { - options = await options() - if (options.default) { - options = options.default - } - } catch (error) { - consola.error(error) - consola.fatal('Error while fetching async configuration') - } - } - - // Keep _nuxtConfigFile for watching - options._nuxtConfigFile = nuxtConfigFile - } - - if (typeof options.rootDir !== 'string') { - options.rootDir = rootDir - } - - // Nuxt Mode - options.mode = - (argv.spa && 'spa') || (argv.universal && 'universal') || options.mode - - // Server options - options.server = defaultsDeep({ - port: argv.port || undefined, - host: argv.hostname || undefined, - socket: argv['unix-socket'] || undefined - }, options.server || {}, getDefaultNuxtConfig().server) - - return options -} - -export function showBanner(nuxt) { - if (env.test) { - return - } - - if (env.minimalCLI) { - for (const listener of nuxt.server.listeners) { - consola.info('Listening on: ' + listener.url) - } - return - } - - const titleLines = [] - const messageLines = [] - - // Name and version - titleLines.push(`${chalk.green.bold('Nuxt.js')} ${nuxt.constructor.version}`) - - // Running mode - titleLines.push(`Running in ${nuxt.options.dev ? chalk.bold.blue('development') : chalk.bold.green('production')} mode (${chalk.bold(nuxt.options.mode)})`) - - if (nuxt.options._typescript && nuxt.options._typescript.runtime) { - titleLines.push(`TypeScript support is ${chalk.green.bold('enabled')}`) - } - - // https://nodejs.org/api/process.html#process_process_memoryusage - const { heapUsed, rss } = process.memoryUsage() - titleLines.push(`Memory usage: ${chalk.bold(prettyBytes(heapUsed))} (RSS: ${prettyBytes(rss)})`) - - // Listeners - for (const listener of nuxt.server.listeners) { - messageLines.push(chalk.bold('Listening on: ') + chalk.underline.blue(listener.url)) - } - - // Add custom badge messages - if (nuxt.options.cli.badgeMessages.length) { - messageLines.push('', ...nuxt.options.cli.badgeMessages) - } - - process.stdout.write(successBox(messageLines.join('\n'), titleLines.join('\n'))) -} - export function formatPath(filePath) { if (!filePath) { return diff --git a/packages/cli/test/unit/utils-minimalcli.test.js b/packages/cli/test/unit/utils-minimalcli.test.js index 59029b1074..3b9aa983d2 100644 --- a/packages/cli/test/unit/utils-minimalcli.test.js +++ b/packages/cli/test/unit/utils-minimalcli.test.js @@ -1,5 +1,5 @@ import { consola } from '../utils' -import * as utils from '../../src/utils' +import { showBanner } from '../../src/utils/banner' jest.mock('std-env', () => ({ test: false, @@ -15,7 +15,7 @@ describe('cli/utils', () => { { url: 'second' } ] - utils.showBanner({ + showBanner({ options: { cli: {} }, diff --git a/packages/cli/test/unit/utils.test.js b/packages/cli/test/unit/utils.test.js index e01add99db..f8d14102b1 100644 --- a/packages/cli/test/unit/utils.test.js +++ b/packages/cli/test/unit/utils.test.js @@ -1,6 +1,8 @@ import { getDefaultNuxtConfig } from '@nuxt/config' import { consola } from '../utils' +import { loadNuxtConfig } from '../../src/utils/config' import * as utils from '../../src/utils' +import { showBanner } from '../../src/utils/banner' import * as fmt from '../../src/utils/formatting' jest.mock('std-env', () => ({ @@ -18,7 +20,7 @@ describe('cli/utils', () => { universal: true } - const options = await utils.loadNuxtConfig(argv) + const options = await loadNuxtConfig(argv) expect(options.rootDir).toBe(process.cwd()) expect(options.mode).toBe('universal') expect(options.server.host).toBe('localhost') @@ -33,7 +35,7 @@ describe('cli/utils', () => { spa: true } - const options = await utils.loadNuxtConfig(argv) + const options = await loadNuxtConfig(argv) expect(options.testOption).toBe(true) expect(options.rootDir).toBe('/some/path') expect(options.mode).toBe('spa') @@ -48,7 +50,7 @@ describe('cli/utils', () => { 'config-file': '../fixtures/nuxt.doesnt-exist.js' } - const options = await utils.loadNuxtConfig(argv) + const options = await loadNuxtConfig(argv) expect(options.testOption).not.toBeDefined() expect(consola.fatal).toHaveBeenCalledTimes(1) @@ -64,7 +66,7 @@ describe('cli/utils', () => { 'unix-socket': '/var/run/async.sock' } - const options = await utils.loadNuxtConfig(argv) + const options = await loadNuxtConfig(argv) expect(options.testOption).toBe(true) expect(options.mode).toBe('supercharged') expect(options.server.host).toBe('async-host') @@ -78,7 +80,7 @@ describe('cli/utils', () => { 'config-file': '../fixtures/nuxt.async-error.js' } - const options = await utils.loadNuxtConfig(argv) + const options = await loadNuxtConfig(argv) expect(options.testOption).not.toBeDefined() expect(consola.error).toHaveBeenCalledTimes(1) @@ -130,7 +132,7 @@ describe('cli/utils', () => { { url: 'second' } ] - utils.showBanner({ + showBanner({ options: { cli: { badgeMessages diff --git a/packages/config/src/options.js b/packages/config/src/options.js index f985b4c94a..d1c66fb74f 100644 --- a/packages/config/src/options.js +++ b/packages/config/src/options.js @@ -96,8 +96,14 @@ export function getNuxtConfig(_options) { options._nuxtConfigFile = path.resolve(options.rootDir, `${defaultNuxtConfigFile}.js`) } - // Watch for _nuxtConfigFile changes - options.watch.push(options._nuxtConfigFile) + if (!options._nuxtConfigFiles) { + options._nuxtConfigFiles = [ + options._nuxtConfigFile + ] + } + + // Watch for config file changes + options.watch.push(...options._nuxtConfigFiles) // Protect rootDir against buildDir guardDir(options, 'rootDir', 'buildDir') diff --git a/packages/config/test/__snapshots__/options.test.js.snap b/packages/config/test/__snapshots__/options.test.js.snap index 8321dea1b1..d527642508 100644 --- a/packages/config/test/__snapshots__/options.test.js.snap +++ b/packages/config/test/__snapshots__/options.test.js.snap @@ -5,6 +5,9 @@ Object { "ErrorPage": null, "__normalized__": true, "_nuxtConfigFile": "/var/nuxt/test/nuxt.config.js", + "_nuxtConfigFiles": Array [ + "/var/nuxt/test/nuxt.config.js", + ], "appTemplatePath": "/var/nuxt/test/.nuxt/views/app.template.html", "build": Object { "_publicPath": "/_nuxt/", diff --git a/packages/utils/src/cjs.js b/packages/utils/src/cjs.js new file mode 100644 index 0000000000..20bffee03f --- /dev/null +++ b/packages/utils/src/cjs.js @@ -0,0 +1,34 @@ +export function clearRequireCache(id) { + const entry = require.cache[id] + if (!entry || id.includes('node_modules')) { + return + } + + if (entry.parent) { + const i = entry.parent.children.findIndex(e => e.id === id) + if (i > -1) { + entry.parent.children.splice(i, 1) + } + } + + for (const child of entry.children) { + clearRequireCache(child.id) + } + + delete require.cache[id] +} + +export function scanRequireTree(id, files = new Set()) { + const entry = require.cache[id] + if (!entry || id.includes('node_modules') || files.has(id)) { + return files + } + + files.add(entry.id) + + for (const child of entry.children) { + scanRequireTree(child.id, files) + } + + return files +} diff --git a/packages/utils/src/index.js b/packages/utils/src/index.js index 5c94687802..f012f01d45 100644 --- a/packages/utils/src/index.js +++ b/packages/utils/src/index.js @@ -6,3 +6,4 @@ export * from './route' export * from './serialize' export * from './task' export * from './timer' +export * from './cjs' diff --git a/packages/utils/test/index.test.js b/packages/utils/test/index.test.js index 33c7988753..277e924e62 100644 --- a/packages/utils/test/index.test.js +++ b/packages/utils/test/index.test.js @@ -7,6 +7,7 @@ import * as route from '../src/route' import * as serialize from '../src/serialize' import * as task from '../src/task' import * as timer from '../src/timer' +import * as cjs from '../src/cjs' describe('util: entry', () => { test('should export all methods from utils folder', () => { @@ -18,7 +19,8 @@ describe('util: entry', () => { ...route, ...serialize, ...task, - ...timer + ...timer, + ...cjs }) }) }) From 164f73a716f81d451c8de927e9c28ff0df95be6f Mon Sep 17 00:00:00 2001 From: Damian Stasik Date: Thu, 11 Apr 2019 12:04:52 +0200 Subject: [PATCH 19/30] chore(webpack): suggest `@nuxtjs/style-resources` (#5499) --- packages/webpack/src/builder.js | 2 +- test/fixtures/with-config/with-config.test.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/webpack/src/builder.js b/packages/webpack/src/builder.js index 936de7b4b7..c0fe63e476 100644 --- a/packages/webpack/src/builder.js +++ b/packages/webpack/src/builder.js @@ -61,7 +61,7 @@ export class WebpackBundler { const { styleResources } = this.buildContext.options.build if (styleResources && Object.keys(styleResources).length) { consola.warn( - 'Using styleResources without the nuxt-style-resources-module is not suggested and can lead to severe performance issues.', + 'Using styleResources without the @nuxtjs/style-resources is not suggested and can lead to severe performance issues.', 'Please use https://github.com/nuxt-community/style-resources-module' ) for (const ext of Object.keys(styleResources)) { diff --git a/test/fixtures/with-config/with-config.test.js b/test/fixtures/with-config/with-config.test.js index 357d56e1fb..7f0c09d521 100644 --- a/test/fixtures/with-config/with-config.test.js +++ b/test/fixtures/with-config/with-config.test.js @@ -24,7 +24,7 @@ describe('with-config', () => { 'message': 'Found 2 plugins that match the configuration, suggest to specify extension:' }], ['Please use `build.postcss` in your nuxt.config.js instead of an external config file. Support for such files will be removed in Nuxt 3 as they remove all defaults set by Nuxt and can cause severe problems with features like alias resolving inside your CSS.'], - ['Using styleResources without the nuxt-style-resources-module is not suggested and can lead to severe performance issues.', 'Please use https://github.com/nuxt-community/style-resources-module'], + ['Using styleResources without the @nuxtjs/style-resources is not suggested and can lead to severe performance issues.', 'Please use https://github.com/nuxt-community/style-resources-module'], ['Notice: Please do not deploy bundles built with analyze mode, it\'s only for analyzing purpose.'] ]) expect(customCompressionMiddlewareFunctionName).toBe('damn') From d43379e3b129404742cf32ab74c8a4d6b0430140 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" Date: Fri, 12 Apr 2019 10:25:20 +0430 Subject: [PATCH 20/30] chore(deps): update all non-major dependencies (#5512) --- package.json | 4 ++-- packages/builder/package.json | 2 +- packages/cli/package.json | 2 +- packages/config/package.json | 2 +- packages/core/package.json | 2 +- packages/generator/package.json | 2 +- packages/server/package.json | 2 +- packages/typescript/package.json | 4 ++-- packages/utils/package.json | 2 +- packages/vue-renderer/package.json | 2 +- packages/webpack/package.json | 4 ++-- yarn.lock | 23 ++++++++++++++--------- 12 files changed, 28 insertions(+), 23 deletions(-) diff --git a/package.json b/package.json index 3ce0e4d43f..629cbea98f 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,7 @@ "babel-plugin-dynamic-import-node": "^2.2.0", "cheerio": "^1.0.0-rc.3", "codecov": "^3.3.0", - "consola": "^2.5.8", + "consola": "^2.6.0", "cross-env": "^5.2.0", "cross-spawn": "^6.0.5", "eslint": "^5.16.0", @@ -56,7 +56,7 @@ "esm": "3.2.20", "express": "^4.16.4", "finalhandler": "^1.1.1", - "fork-ts-checker-webpack-plugin": "^1.0.1", + "fork-ts-checker-webpack-plugin": "^1.0.2", "fs-extra": "^7.0.1", "get-port": "^5.0.0", "glob": "^7.1.3", diff --git a/packages/builder/package.json b/packages/builder/package.json index 00e2cbf8c3..56beb10488 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -12,7 +12,7 @@ "@nuxt/utils": "2.6.1", "@nuxt/vue-app": "2.6.1", "chokidar": "^2.1.5", - "consola": "^2.5.8", + "consola": "^2.6.0", "fs-extra": "^7.0.1", "glob": "^7.1.3", "hash-sum": "^1.0.2", diff --git a/packages/cli/package.json b/packages/cli/package.json index 8ac60b989c..62214b3535 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -16,7 +16,7 @@ "@nuxt/utils": "2.6.1", "boxen": "^3.1.0", "chalk": "^2.4.2", - "consola": "^2.5.8", + "consola": "^2.6.0", "esm": "3.2.20", "execa": "^1.0.0", "exit": "^0.1.2", diff --git a/packages/config/package.json b/packages/config/package.json index fc9633a958..1843ae531b 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -11,7 +11,7 @@ "typings": "types/index.d.ts", "dependencies": { "@nuxt/utils": "2.6.1", - "consola": "^2.5.8", + "consola": "^2.6.0", "std-env": "^2.2.1" }, "publishConfig": { diff --git a/packages/core/package.json b/packages/core/package.json index 85cd25725c..ad20f0bdc9 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -13,7 +13,7 @@ "@nuxt/server": "2.6.1", "@nuxt/utils": "2.6.1", "@nuxt/vue-renderer": "2.6.1", - "consola": "^2.5.8", + "consola": "^2.6.0", "debug": "^4.1.1", "esm": "3.2.20", "fs-extra": "^7.0.1", diff --git a/packages/generator/package.json b/packages/generator/package.json index 4226577022..81f3dd3c57 100644 --- a/packages/generator/package.json +++ b/packages/generator/package.json @@ -10,7 +10,7 @@ "dependencies": { "@nuxt/utils": "2.6.1", "chalk": "^2.4.2", - "consola": "^2.5.8", + "consola": "^2.6.0", "fs-extra": "^7.0.1", "html-minifier": "^4.0.0" }, diff --git a/packages/server/package.json b/packages/server/package.json index 768c2f5565..d77387698b 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -14,7 +14,7 @@ "chalk": "^2.4.2", "compression": "^1.7.4", "connect": "^3.6.6", - "consola": "^2.5.8", + "consola": "^2.6.0", "etag": "^1.8.1", "fresh": "^0.5.2", "fs-extra": "^7.0.1", diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 250e77f0bf..44006cb469 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -21,8 +21,8 @@ "@types/webpack-bundle-analyzer": "^2.13.1", "@types/webpack-dev-middleware": "^2.0.2", "@types/webpack-hot-middleware": "^2.16.5", - "consola": "^2.5.8", - "fork-ts-checker-webpack-plugin": "^1.0.1", + "consola": "^2.6.0", + "fork-ts-checker-webpack-plugin": "^1.0.2", "fs-extra": "^7.0.1", "ts-loader": "^5.3.3", "typescript": "^3.4.3" diff --git a/packages/utils/package.json b/packages/utils/package.json index 25a4bb3cff..15ce97b54d 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -8,7 +8,7 @@ ], "main": "dist/utils.js", "dependencies": { - "consola": "^2.5.8", + "consola": "^2.6.0", "fs-extra": "^7.0.1", "hash-sum": "^1.0.2", "proper-lockfile": "^4.1.1", diff --git a/packages/vue-renderer/package.json b/packages/vue-renderer/package.json index e4d9dca1f4..1188c622ea 100644 --- a/packages/vue-renderer/package.json +++ b/packages/vue-renderer/package.json @@ -10,7 +10,7 @@ "dependencies": { "@nuxt/devalue": "^1.2.2", "@nuxt/utils": "2.6.1", - "consola": "^2.5.8", + "consola": "^2.6.0", "fs-extra": "^7.0.1", "lru-cache": "^5.1.1", "vue": "^2.6.10", diff --git a/packages/webpack/package.json b/packages/webpack/package.json index d5daa5c678..2852a79484 100644 --- a/packages/webpack/package.json +++ b/packages/webpack/package.json @@ -16,7 +16,7 @@ "cache-loader": "^2.0.1", "caniuse-lite": "^1.0.30000957", "chalk": "^2.4.2", - "consola": "^2.5.8", + "consola": "^2.6.0", "css-loader": "^2.1.1", "cssnano": "^4.1.10", "eventsource-polyfill": "^0.9.6", @@ -44,7 +44,7 @@ "url-loader": "^1.1.2", "vue-loader": "^15.7.0", "webpack": "^4.29.6", - "webpack-bundle-analyzer": "^3.3.0", + "webpack-bundle-analyzer": "^3.3.2", "webpack-dev-middleware": "^3.6.2", "webpack-hot-middleware": "^2.24.3", "webpack-node-externals": "^1.7.2", diff --git a/yarn.lock b/yarn.lock index d57204b8d9..b09dee3e23 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3279,11 +3279,16 @@ connect@^3.6.6: parseurl "~1.3.2" utils-merge "1.0.1" -consola@^2.0.0-1, consola@^2.3.0, consola@^2.5.6, consola@^2.5.8: +consola@^2.0.0-1, consola@^2.3.0, consola@^2.5.6: version "2.5.8" resolved "https://registry.npmjs.org/consola/-/consola-2.5.8.tgz#26afe2ab7f560d285a88578eaae9d9be18029ba9" integrity sha512-fYv1M0rNJw4h0CZUx8PX02Px7xQhA+vNHpV8DBCGMoozp2Io/vrSXhhEothaRnSt7VMR0rj2pt9KKLXa5amrCw== +consola@^2.6.0: + version "2.6.0" + resolved "https://registry.npmjs.org/consola/-/consola-2.6.0.tgz#ddf4e2a4361f67c120aa8bb41a0bd3cdbb58636e" + integrity sha512-jge0Ip1NVoOafxZq1zxG1sLYVBtKV45BF39VV6YKSWb45nyLOHY51YP0+cBQ2DyOTKhCjtF0XrRJkjTvX4wzgQ== + console-browserify@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" @@ -4921,10 +4926,10 @@ forever-agent@~0.6.1: resolved "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= -fork-ts-checker-webpack-plugin@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-1.0.1.tgz#140453c4dc3dc35937034b7416b66a3bacfbc3a8" - integrity sha512-RrVxSiNtngsFDLQpP2QlrVaJK1zqRdwhtwslmDUWQTg3t3GW8QN7D3EpW/EAI+oqTqL0dGvLyluyYQ/eIrIHvQ== +fork-ts-checker-webpack-plugin@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-1.0.2.tgz#1f40585c1f60ffc3a420cd5f6a8d8be25b5635fc" + integrity sha512-DAyBgXAoJoSTXK8LSTvNgYJE+PmawnIyh2qZUfV5vB237ARuyEEq/H1y0i9UdhXLY6QlCH+5LojGyaHwD9W2RA== dependencies: babel-code-frame "^6.22.0" chalk "^2.4.1" @@ -11141,10 +11146,10 @@ webidl-conversions@^4.0.2: resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== -webpack-bundle-analyzer@^3.3.0: - version "3.3.0" - resolved "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.3.0.tgz#2c18aca01fa03f11dccb3f627fb40b9f38bd7225" - integrity sha512-xNz1oC5pFiVLyDHDz2qZs3ydAuIWv96zokdBZAz+xdhD8BX3mytCmbWkzLzNRDjuWEovhQtycuvpfd368XvLBA== +webpack-bundle-analyzer@^3.3.2: + version "3.3.2" + resolved "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.3.2.tgz#3da733a900f515914e729fcebcd4c40dde71fc6f" + integrity sha512-7qvJLPKB4rRWZGjVp5U1KEjwutbDHSKboAl0IfafnrdXMrgC0tOtZbQD6Rw0u4cmpgRN4O02Fc0t8eAT+FgGzA== dependencies: acorn "^6.0.7" acorn-walk "^6.1.1" From 4176737acb278194ce8bbb9277c14b1878519ed0 Mon Sep 17 00:00:00 2001 From: pooya parsa Date: Fri, 12 Apr 2019 10:31:03 +0430 Subject: [PATCH 21/30] update yarn.lock --- yarn.lock | 161 ++++++++++++++++++++++++++++++++---------------------- 1 file changed, 97 insertions(+), 64 deletions(-) diff --git a/yarn.lock b/yarn.lock index b09dee3e23..1da335afb9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1526,10 +1526,10 @@ mustache "^2.3.0" stack-trace "0.0.10" -"@octokit/endpoint@^3.2.0": - version "3.2.3" - resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-3.2.3.tgz#bd9aea60cd94ce336656b57a5c9cb7f10be8f4f3" - integrity sha512-yUPCt4vMIOclox13CUxzuKiPJIFo46b/6GhUnUTw5QySczN1L0DtSxgmIZrZV4SAb9EyAqrceoyrWoYVnfF2AA== +"@octokit/endpoint@^4.0.0": + version "4.0.0" + resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-4.0.0.tgz#97032a6690ef1cf9576ab1b1582c0ac837e3b5b6" + integrity sha512-b8sptNUekjREtCTJFpOfSIL4SKh65WaakcyxWzRcSPOk5RxkZJ/S8884NGZFxZ+jCB2rDURU66pSHn14cVgWVg== dependencies: deepmerge "3.2.0" is-plain-object "^2.0.4" @@ -1541,12 +1541,12 @@ resolved "https://registry.npmjs.org/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-2.2.2.tgz#c0e22067a043e19f96ff9c7832e2a3019f9be75c" integrity sha512-CTZr64jZYhGWNTDGlSJ2mvIlFsm9OEO3LqWn9I/gmoHI4jRBp4kpHoFYNemG4oA75zUAcmbuWblb7jjP877YZw== -"@octokit/request@2.4.2": - version "2.4.2" - resolved "https://registry.npmjs.org/@octokit/request/-/request-2.4.2.tgz#87c36e820dd1e43b1629f4f35c95b00cd456320b" - integrity sha512-lxVlYYvwGbKSHXfbPk5vxEA8w4zHOH1wobado4a9EfsyD3Cbhuhus1w0Ye9Ro0eMubGO8kNy5d+xNFisM3Tvaw== +"@octokit/request@3.0.0": + version "3.0.0" + resolved "https://registry.npmjs.org/@octokit/request/-/request-3.0.0.tgz#304a279036b2dc89e7fba7cb30c9e6a9b1f4d2df" + integrity sha512-DZqmbm66tq+a9FtcKrn0sjrUpi0UaZ9QPUCxxyk/4CJ2rseTMpAWRf6gCwOSUCzZcx/4XVIsDk+kz5BVdaeenA== dependencies: - "@octokit/endpoint" "^3.2.0" + "@octokit/endpoint" "^4.0.0" deprecation "^1.0.1" is-plain-object "^2.0.4" node-fetch "^2.3.0" @@ -1554,11 +1554,11 @@ universal-user-agent "^2.0.1" "@octokit/rest@^16.16.0": - version "16.23.2" - resolved "https://registry.npmjs.org/@octokit/rest/-/rest-16.23.2.tgz#975e84610427c4ab6c41bec77c24aed9b7563db4" - integrity sha512-ZxiZMaCuqBG/IsbgNRVfGwYsvBb5DjHuMGjJgOrinT+/b+1j1U7PiGyRkHDJdjTGA6N/PsMC2lP2ZybX9579iA== + version "16.23.4" + resolved "https://registry.npmjs.org/@octokit/rest/-/rest-16.23.4.tgz#4d8bcb1cc0cf6eeb8865632d4d60d79fc3425bbf" + integrity sha512-fQuYQ0vgNLkzeN0KEsqN0aS6EPzcuaePT5M5cE5qnKayaxFwRIQOMhNR/rTmEqo/zDK/20ZAcHsgLKodSsJtww== dependencies: - "@octokit/request" "2.4.2" + "@octokit/request" "3.0.0" atob-lite "^2.0.0" before-after-hook "^1.4.0" btoa-lite "^1.0.0" @@ -1577,9 +1577,9 @@ integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA== "@types/babel__core@^7.1.0": - version "7.1.0" - resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.0.tgz#710f2487dda4dcfd010ca6abb2b4dc7394365c51" - integrity sha512-wJTeJRt7BToFx3USrCDs2BhEi4ijBInTQjOIukj6a/5tEkwpFMVZ+1ppgmE+Q/FQyc5P/VWUbx7I9NELrKruHA== + version "7.1.1" + resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.1.tgz#ce9a9e5d92b7031421e1d0d74ae59f572ba48be6" + integrity sha512-+hjBtgcFPYyCTo0A15+nxrCVJL7aC6Acg87TXd5OW3QhHswdrOLoles+ldL2Uk8q++7yIfl4tURtztccdeeyOw== dependencies: "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" @@ -1705,12 +1705,7 @@ resolved "https://registry.npmjs.org/@types/mime/-/mime-2.0.1.tgz#dc488842312a7f075149312905b5e3c0b054c79d" integrity sha512-FwI9gX75FgVBJ7ywgnq/P7tw+/o1GUbtP0KzbtusLigAOgIgNISRK0ZPl4qertvXSIE8YbsVJueQ90cDt9YYyw== -"@types/node@*": - version "11.13.0" - resolved "https://registry.npmjs.org/@types/node/-/node-11.13.0.tgz#b0df8d6ef9b5001b2be3a94d909ce3c29a80f9e1" - integrity sha512-rx29MMkRdVmzunmiA4lzBYJNnXsW/PhG4kMBy2ATsYaDjGGR75dCFEVVROKpNwlVdcUX3xxlghKQOeDPBJobng== - -"@types/node@^11.13.4": +"@types/node@*", "@types/node@^11.13.4": version "11.13.4" resolved "https://registry.npmjs.org/@types/node/-/node-11.13.4.tgz#f83ec3c3e05b174b7241fadeb6688267fe5b22ca" integrity sha512-+rabAZZ3Yn7tF/XPGHupKIL5EcAbrLxnTr/hgQICxbeuAfWtT0UZSfULE+ndusckBItcv4o6ZeOJplQikVcLvQ== @@ -1814,9 +1809,9 @@ source-map "^0.6.0" "@types/yargs@^12.0.2", "@types/yargs@^12.0.9": - version "12.0.11" - resolved "https://registry.npmjs.org/@types/yargs/-/yargs-12.0.11.tgz#a090d88e1f40a910e6443c95493c1c035c76ebdc" - integrity sha512-IsU1TD+8cQCyG76ZqxP0cVFnofvfzT8p/wO8ENT4jbN/KKN3grsHFgHNl/U+08s33ayX4LwI85cEhYXCOlOkMw== + version "12.0.12" + resolved "https://registry.npmjs.org/@types/yargs/-/yargs-12.0.12.tgz#45dd1d0638e8c8f153e87d296907659296873916" + integrity sha512-SOhuU4wNBxhhTHxYaiG5NY4HBhDIDnJF60GU+2LqHAdKKer86//e4yg69aENCtQ04n0ovz+tq2YPME5t5yp4pw== "@vue/babel-helper-vue-jsx-merge-props@^1.0.0-beta.3": version "1.0.0-beta.3" @@ -3188,7 +3183,7 @@ commander@2.17.x: resolved "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" integrity sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg== -commander@^2.12.1, commander@^2.18.0, commander@^2.19.0: +commander@^2.12.1, commander@^2.18.0, commander@^2.19.0, commander@~2.20.0: version "2.20.0" resolved "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== @@ -3251,7 +3246,7 @@ concat-map@0.0.1: resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= -concat-stream@1.6.2, concat-stream@^1.5.0, concat-stream@^1.6.0: +concat-stream@1.6.2, concat-stream@^1.5.0: version "1.6.2" resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== @@ -3261,6 +3256,16 @@ concat-stream@1.6.2, concat-stream@^1.5.0, concat-stream@^1.6.0: readable-stream "^2.2.2" typedarray "^0.0.6" +concat-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" + integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A== + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^3.0.2" + typedarray "^0.0.6" + config-chain@^1.1.11: version "1.1.12" resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.12.tgz#0fde8d091200eb5e808caf25fe618c02f48e4efa" @@ -3279,12 +3284,7 @@ connect@^3.6.6: parseurl "~1.3.2" utils-merge "1.0.1" -consola@^2.0.0-1, consola@^2.3.0, consola@^2.5.6: - version "2.5.8" - resolved "https://registry.npmjs.org/consola/-/consola-2.5.8.tgz#26afe2ab7f560d285a88578eaae9d9be18029ba9" - integrity sha512-fYv1M0rNJw4h0CZUx8PX02Px7xQhA+vNHpV8DBCGMoozp2Io/vrSXhhEothaRnSt7VMR0rj2pt9KKLXa5amrCw== - -consola@^2.6.0: +consola@^2.0.0-1, consola@^2.3.0, consola@^2.5.6, consola@^2.6.0: version "2.6.0" resolved "https://registry.npmjs.org/consola/-/consola-2.6.0.tgz#ddf4e2a4361f67c120aa8bb41a0bd3cdbb58636e" integrity sha512-jge0Ip1NVoOafxZq1zxG1sLYVBtKV45BF39VV6YKSWb45nyLOHY51YP0+cBQ2DyOTKhCjtF0XrRJkjTvX4wzgQ== @@ -3355,10 +3355,10 @@ conventional-changelog-core@^3.1.6: read-pkg-up "^3.0.0" through2 "^2.0.0" -conventional-changelog-preset-loader@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.0.2.tgz#81d1a07523913f3d17da3a49f0091f967ad345b0" - integrity sha512-pBY+qnUoJPXAXXqVGwQaVmcye05xi6z231QM98wHWamGAmu/ghkBprQAwmF5bdmyobdVxiLhPY3PrCfSeUNzRQ== +conventional-changelog-preset-loader@^2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.1.1.tgz#65bb600547c56d5627d23135154bcd9a907668c4" + integrity sha512-K4avzGMLm5Xw0Ek/6eE3vdOXkqnpf9ydb68XYmCc16cJ99XMMbc2oaNMuPwAsxVK6CC1yA4/I90EhmWNj0Q6HA== conventional-changelog-writer@^4.0.3: version "4.0.3" @@ -3384,6 +3384,14 @@ conventional-commits-filter@^2.0.1: is-subset "^0.1.1" modify-values "^1.0.0" +conventional-commits-filter@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.2.tgz#f122f89fbcd5bb81e2af2fcac0254d062d1039c1" + integrity sha512-WpGKsMeXfs21m1zIw4s9H5sys2+9JccTzpN6toXtxhpw2VNF2JUXwIakthKBy+LN4DvJm+TzWhxOMWOs1OFCFQ== + dependencies: + lodash.ismatch "^4.4.0" + modify-values "^1.0.0" + conventional-commits-parser@^3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.0.1.tgz#fe1c49753df3f98edb2285a5e485e11ffa7f2e4c" @@ -3397,15 +3405,28 @@ conventional-commits-parser@^3.0.1: through2 "^2.0.0" trim-off-newlines "^1.0.0" -conventional-recommended-bump@^4.0.4: - version "4.0.4" - resolved "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-4.0.4.tgz#05540584641d3da758c8863c09788fcaeb586872" - integrity sha512-9mY5Yoblq+ZMqJpBzgS+RpSq+SUfP2miOR3H/NR9drGf08WCrY9B6HAGJZEm6+ThsVP917VHAahSOjM6k1vhPg== +conventional-commits-parser@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.0.2.tgz#1295590dd195f64f53d6f8eb7c41114bb9a60742" + integrity sha512-y5eqgaKR0F6xsBNVSQ/5cI5qIF3MojddSUi1vKIggRkqUTbkqFKH9P5YX/AT1BVZp9DtSzBTIkvjyVLotLsVog== dependencies: - concat-stream "^1.6.0" - conventional-changelog-preset-loader "^2.0.2" - conventional-commits-filter "^2.0.1" - conventional-commits-parser "^3.0.1" + JSONStream "^1.0.4" + is-text-path "^1.0.0" + lodash "^4.2.1" + meow "^4.0.0" + split2 "^2.0.0" + through2 "^3.0.0" + trim-off-newlines "^1.0.0" + +conventional-recommended-bump@^4.0.4: + version "4.1.1" + resolved "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-4.1.1.tgz#37014fadeda267d0607e2fc81124da840a585127" + integrity sha512-JT2vKfSP9kR18RXXf55BRY1O3AHG8FPg5btP3l7LYfcWJsiXI6MCf30DepQ98E8Qhowvgv7a8iev0J1bEDkTFA== + dependencies: + concat-stream "^2.0.0" + conventional-changelog-preset-loader "^2.1.1" + conventional-commits-filter "^2.0.2" + conventional-commits-parser "^3.0.2" git-raw-commits "2.0.0" git-semver-tags "^2.0.2" meow "^4.0.0" @@ -3846,7 +3867,7 @@ de-indent@^1.0.2: resolved "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" integrity sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0= -debug@2.6.9, debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: +debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: version "2.6.9" resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== @@ -6829,6 +6850,11 @@ lodash.get@^4.4.2: resolved "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= +lodash.ismatch@^4.4.0: + version "4.4.0" + resolved "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37" + integrity sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc= + lodash.isplainobject@^4.0.6: version "4.0.6" resolved "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" @@ -7355,11 +7381,11 @@ natural-compare@^1.4.0: integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= needle@^2.2.1: - version "2.2.4" - resolved "https://registry.npmjs.org/needle/-/needle-2.2.4.tgz#51931bff82533b1928b7d1d69e01f1b00ffd2a4e" - integrity sha512-HyoqEb4wr/rsoaIDfTH2aVL9nWtQqba2/HvMv+++m8u0dz808MaagKILxtfeSN7QU7nvbQ79zk3vYOJp9zsNEA== + version "2.3.0" + resolved "https://registry.npmjs.org/needle/-/needle-2.3.0.tgz#ce3fea21197267bacb310705a7bbe24f2a3a3492" + integrity sha512-QBZu7aAFR0522EyaXZM0FZ9GLpq6lvQ3uq8gteiDUp7wKdy0lSd2hPlgFwVuW1CBkfEs9PfDQsQzZghLs/psdg== dependencies: - debug "^2.1.2" + debug "^4.1.0" iconv-lite "^0.4.4" sax "^1.2.4" @@ -7489,9 +7515,9 @@ node-pre-gyp@^0.10.0: tar "^4" node-releases@^1.1.13: - version "1.1.13" - resolved "https://registry.npmjs.org/node-releases/-/node-releases-1.1.13.tgz#8c03296b5ae60c08e2ff4f8f22ae45bd2f210083" - integrity sha512-fKZGviSXR6YvVPyc011NHuJDSD8gFQvLPmc2d2V3BS4gr52ycyQ1Xzs7a8B+Ax3Ni/W+5h1h4SqmzeoA8WZRmA== + version "1.1.14" + resolved "https://registry.npmjs.org/node-releases/-/node-releases-1.1.14.tgz#f1f41c83cac82caebd6739e6313d56b3b09c9189" + integrity sha512-d58EpVZRhQE60kWiWUaaPlK9dyC4zg3ZoMcHcky2d4hDksyQj0rUozwInOl0C66mBsqo01Tuns8AvxnL5S7PKg== dependencies: semver "^5.3.0" @@ -9243,7 +9269,7 @@ read@1, read@~1.0.1: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.1.1: +"readable-stream@2 || 3", readable-stream@^3.0.2, readable-stream@^3.1.1: version "3.3.0" resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.3.0.tgz#cb8011aad002eb717bf040291feba8569c986fb9" integrity sha512-EsI+s3k3XsW+fU8fQACLN59ky34AZ14LoeVZpYwmZvldCFo0r0gnelwF2TcMjLor/BTL5aDJVBMkss0dthToPw== @@ -9954,9 +9980,9 @@ source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: urix "^0.1.0" source-map-support@^0.5.6, source-map-support@~0.5.10: - version "0.5.11" - resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.11.tgz#efac2ce0800355d026326a0ca23e162aeac9a4e2" - integrity sha512-//sajEx/fGL3iw6fltKMdPvy8kL3kJ2O3iuYlRoT3k9Kb4BjOoZ+BZzaNHeuaruSt+Kf3Zk9tnfAQg9/AJqUVQ== + version "0.5.12" + resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz#b4f3b10d51857a5af0138d3ce8003b201613d599" + integrity sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ== dependencies: buffer-from "^1.0.0" source-map "^0.6.0" @@ -10473,6 +10499,13 @@ through2@^2.0.0, through2@^2.0.2: readable-stream "~2.3.6" xtend "~4.0.1" +through2@^3.0.0: + version "3.0.1" + resolved "https://registry.npmjs.org/through2/-/through2-3.0.1.tgz#39276e713c3302edf9e388dd9c812dd3b825bd5a" + integrity sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww== + dependencies: + readable-stream "2 || 3" + through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6: version "2.3.8" resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" @@ -10703,9 +10736,9 @@ type-check@~0.3.2: prelude-ls "~1.1.2" type-fest@^0.3.0: - version "0.3.0" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.3.0.tgz#1eb4a83c4ee233afd59d4db3faef44fecee0e9a2" - integrity sha512-fg3sfdDdJDtdHLUpeGsf/fLyG1aapk6zgFiYG5+MDUPybGrJemH4SLk5tP7hGRe8ntxjg0q5LYW53b6YpJIQ9Q== + version "0.3.1" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz#63d00d204e059474fe5e1b7c011112bbd1dc29e1" + integrity sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ== type-is@~1.6.16: version "1.6.16" @@ -10739,11 +10772,11 @@ uglify-js@3.4.x: source-map "~0.6.1" uglify-js@^3.1.4, uglify-js@^3.5.1: - version "3.5.3" - resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.3.tgz#d490bb5347f23025f0c1bc0dee901d98e4d6b063" - integrity sha512-rIQPT2UMDnk4jRX+w4WO84/pebU2jiLsjgIyrCktYgSvx28enOE3iYQMr+BD1rHiitWnDmpu0cY/LfIEpKcjcw== + version "3.5.4" + resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.4.tgz#4a64d57f590e20a898ba057f838dcdfb67a939b9" + integrity sha512-GpKo28q/7Bm5BcX9vOu4S46FwisbPbAmkkqPnGIpKvKTM96I85N6XHQV+k4I6FA2wxgLhcsSyHoNhzucwCflvA== dependencies: - commander "~2.19.0" + commander "~2.20.0" source-map "~0.6.1" uid-number@0.0.6: From 9980a9d6813f937227e0498cce092dff913cdce4 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" Date: Fri, 12 Apr 2019 21:48:51 +0430 Subject: [PATCH 22/30] chore(deps): update dependency vue-router to ^3.0.4 (#5521) --- distributions/nuxt-start/package.json | 2 +- packages/vue-app/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/distributions/nuxt-start/package.json b/distributions/nuxt-start/package.json index 26ff584514..8a2c389b7c 100644 --- a/distributions/nuxt-start/package.json +++ b/distributions/nuxt-start/package.json @@ -61,7 +61,7 @@ "vue": "^2.6.10", "vue-meta": "^1.6.0", "vue-no-ssr": "^1.1.1", - "vue-router": "^3.0.3", + "vue-router": "^3.0.4", "vuex": "^3.1.0" }, "engines": { diff --git a/packages/vue-app/package.json b/packages/vue-app/package.json index b9b8a61e68..2254f22f1e 100644 --- a/packages/vue-app/package.json +++ b/packages/vue-app/package.json @@ -17,7 +17,7 @@ "vue": "^2.6.10", "vue-meta": "^1.6.0", "vue-no-ssr": "^1.1.1", - "vue-router": "^3.0.3", + "vue-router": "^3.0.4", "vue-template-compiler": "^2.6.10", "vuex": "^3.1.0" }, diff --git a/yarn.lock b/yarn.lock index 1da335afb9..fa11cc1000 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11085,10 +11085,10 @@ vue-property-decorator@^8.1.0: dependencies: vue-class-component "^7.0.1" -vue-router@^3.0.3: - version "3.0.3" - resolved "https://registry.npmjs.org/vue-router/-/vue-router-3.0.3.tgz#370ca607475c45a1cfab2d9d2ac846feab1c534c" - integrity sha512-62rB6GjJuyklnLL+yKST469yCYj93SXEn8rpYjxgLwv0aH/Fd6OApD8Hgi9RlraZ1OOwv3jPQvZTtf1GixYW+g== +vue-router@^3.0.4: + version "3.0.4" + resolved "https://registry.npmjs.org/vue-router/-/vue-router-3.0.4.tgz#d6023e9db64d0b335771f0316c8bde8956f2d75d" + integrity sha512-wjirAFeMR53FFTRIM2ofLKH5BJte6Q9+MUiOj6fLzqhgerjVyQVeMmvgiQDslPJJHSqFfQ559EDvIi0lA1Lr6g== vue-server-renderer@^2.6.10: version "2.6.10" From 19fbbb6ef66b835cf4014fd7174e5472f0c763f4 Mon Sep 17 00:00:00 2001 From: Pim Date: Fri, 12 Apr 2019 19:19:46 +0200 Subject: [PATCH 23/30] fix(cli): show memory usage after build for `nuxt dev` (#5514) --- packages/cli/src/commands/dev.js | 6 ++++- packages/cli/src/utils/banner.js | 10 ++++---- packages/cli/src/utils/memory.js | 18 +++++++++++++++ packages/cli/test/unit/utils.test.js | 34 +++++++++++++++++++++++++++- 4 files changed, 61 insertions(+), 7 deletions(-) create mode 100644 packages/cli/src/utils/memory.js diff --git a/packages/cli/src/commands/dev.js b/packages/cli/src/commands/dev.js index 3339c00718..8348c72f1a 100644 --- a/packages/cli/src/commands/dev.js +++ b/packages/cli/src/commands/dev.js @@ -4,6 +4,7 @@ import opener from 'opener' import { common, server } from '../options' import { eventsMapping, formatPath } from '../utils' import { showBanner } from '../utils/banner' +import { showMemoryUsage } from '../utils/memory' export default { name: 'dev', @@ -50,7 +51,7 @@ export default { await nuxt.server.listen() // Show banner when listening - showBanner(nuxt) + showBanner(nuxt, false) // Opens the server listeners url in the default browser (only once) if (argv.open) { @@ -65,6 +66,9 @@ export default { // Start Build await builder.build() + // Print memory usage + showMemoryUsage() + // Return instance return nuxt }, diff --git a/packages/cli/src/utils/banner.js b/packages/cli/src/utils/banner.js index ebbd9f860d..1cbe3fd3a6 100644 --- a/packages/cli/src/utils/banner.js +++ b/packages/cli/src/utils/banner.js @@ -1,10 +1,10 @@ import consola from 'consola' -import prettyBytes from 'pretty-bytes' import env from 'std-env' import chalk from 'chalk' import { successBox } from './formatting' +import { getFormattedMemoryUsage } from './memory' -export function showBanner(nuxt) { +export function showBanner(nuxt, showMemoryUsage = true) { if (env.test) { return } @@ -29,9 +29,9 @@ export function showBanner(nuxt) { titleLines.push(`TypeScript support is ${chalk.green.bold('enabled')}`) } - // https://nodejs.org/api/process.html#process_process_memoryusage - const { heapUsed, rss } = process.memoryUsage() - titleLines.push(`Memory usage: ${chalk.bold(prettyBytes(heapUsed))} (RSS: ${prettyBytes(rss)})`) + if (showMemoryUsage) { + titleLines.push(getFormattedMemoryUsage()) + } // Listeners for (const listener of nuxt.server.listeners) { diff --git a/packages/cli/src/utils/memory.js b/packages/cli/src/utils/memory.js new file mode 100644 index 0000000000..0ed4f541b2 --- /dev/null +++ b/packages/cli/src/utils/memory.js @@ -0,0 +1,18 @@ +import chalk from 'chalk' +import consola from 'consola' +import prettyBytes from 'pretty-bytes' + +export function getMemoryUsage() { + // https://nodejs.org/api/process.html#process_process_memoryusage + const { heapUsed, rss } = process.memoryUsage() + return { heap: heapUsed, rss } +} + +export function getFormattedMemoryUsage() { + const { heap, rss } = getMemoryUsage() + return `Memory usage: ${chalk.bold(prettyBytes(heap))} (RSS: ${prettyBytes(rss)})` +} + +export function showMemoryUsage() { + consola.info(getFormattedMemoryUsage()) +} diff --git a/packages/cli/test/unit/utils.test.js b/packages/cli/test/unit/utils.test.js index f8d14102b1..93dadc2c86 100644 --- a/packages/cli/test/unit/utils.test.js +++ b/packages/cli/test/unit/utils.test.js @@ -3,6 +3,7 @@ import { consola } from '../utils' import { loadNuxtConfig } from '../../src/utils/config' import * as utils from '../../src/utils' import { showBanner } from '../../src/utils/banner' +import { showMemoryUsage } from '../../src/utils/memory' import * as fmt from '../../src/utils/formatting' jest.mock('std-env', () => ({ @@ -121,7 +122,7 @@ describe('cli/utils', () => { expect(fmt.indent(4, '-')).toBe('----') }) - test('showBanner prints full-info box', () => { + test('showBanner prints full-info box with memory usage', () => { const stdout = jest.spyOn(process.stdout, 'write').mockImplementation(() => {}) const successBox = jest.fn().mockImplementation((m, t) => t + m) jest.spyOn(fmt, 'successBox').mockImplementation(successBox) @@ -148,10 +149,41 @@ describe('cli/utils', () => { expect(stdout).toHaveBeenCalledWith(expect.stringMatching('Nuxt.js')) expect(stdout).toHaveBeenCalledWith(expect.stringMatching(`Listening on: ${listeners[0].url}`)) expect(stdout).toHaveBeenCalledWith(expect.stringMatching(`Listening on: ${listeners[1].url}`)) + expect(stdout).toHaveBeenCalledWith(expect.stringMatching('Memory usage')) expect(stdout).toHaveBeenCalledWith(expect.stringMatching('badgeMessage')) stdout.mockRestore() }) + test('showBanner doesnt print memory usage', () => { + const stdout = jest.spyOn(process.stdout, 'write').mockImplementation(() => {}) + const successBox = jest.fn().mockImplementation((m, t) => t + m) + jest.spyOn(fmt, 'successBox').mockImplementation(successBox) + + showBanner({ + options: { + cli: { + badgeMessages: [] + } + }, + server: { + listeners: [] + } + }, false) + + expect(successBox).toHaveBeenCalledTimes(1) + expect(stdout).toHaveBeenCalledTimes(1) + expect(stdout).toHaveBeenCalledWith(expect.stringMatching('Nuxt.js')) + expect(stdout).not.toHaveBeenCalledWith(expect.stringMatching('Memory usage')) + stdout.mockRestore() + }) + + test('showMemoryUsage prints memory usage', () => { + showMemoryUsage() + + expect(consola.info).toHaveBeenCalledTimes(1) + expect(consola.info).toHaveBeenCalledWith(expect.stringMatching('Memory usage')) + }) + test('forceExit exits after timeout', () => { jest.useFakeTimers() const exit = jest.spyOn(process, 'exit').mockImplementation(() => {}) From 952e7cde9ca1283ec41d7cf83d3e60f84d1583c7 Mon Sep 17 00:00:00 2001 From: Dmitry Molotkov Date: Sat, 13 Apr 2019 15:48:05 +0300 Subject: [PATCH 24/30] examples: fix plugins-vendor example (#5527) --- examples/plugins-vendor/pages/index.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/plugins-vendor/pages/index.vue b/examples/plugins-vendor/pages/index.vue index 718f199273..e9f7615cbe 100644 --- a/examples/plugins-vendor/pages/index.vue +++ b/examples/plugins-vendor/pages/index.vue @@ -16,7 +16,7 @@