From b60c4fd4321ba2a3155d9f86a928e1ede29e3618 Mon Sep 17 00:00:00 2001 From: Clark Du Date: Sun, 12 Aug 2018 13:39:43 +0100 Subject: [PATCH] refactor: add build.quiet config --- bin/nuxt-build | 3 +-- lib/builder/builder.js | 2 +- lib/builder/webpack/client.js | 4 ++-- lib/common/nuxt.config.js | 2 +- lib/common/options.js | 6 +++++- test/fixtures/cli/cli.build.config.js | 6 ++---- test/fixtures/cli/cli.gen.config.js | 6 ++---- 7 files changed, 14 insertions(+), 15 deletions(-) diff --git a/bin/nuxt-build b/bin/nuxt-build index 6d21276e93..d9f1d9e68d 100755 --- a/bin/nuxt-build +++ b/bin/nuxt-build @@ -51,8 +51,7 @@ if (argv.analyze && typeof options.build.analyze !== 'object') { // Silence output when using --quiet if (argv.quiet) { - options.test = true - consola.level = 0 + options.build.quiet = !!argv.quiet } const nuxt = new Nuxt(options) diff --git a/lib/builder/builder.js b/lib/builder/builder.js index 98b3835405..218af06983 100644 --- a/lib/builder/builder.js +++ b/lib/builder/builder.js @@ -532,7 +532,7 @@ export default class Builder { if (err) { return reject(err) } else if (stats.hasErrors()) { - if (this.options.test) { + if (this.options.build.quiet === true) { err = stats.toString(this.options.build.stats) } if (!err) { diff --git a/lib/builder/webpack/client.js b/lib/builder/webpack/client.js index bb0f840c2d..9694d87b75 100644 --- a/lib/builder/webpack/client.js +++ b/lib/builder/webpack/client.js @@ -66,7 +66,7 @@ export default class WebpackClientConfig extends WebpackBaseConfig { analyzerMode: 'static', defaultSizes: 'gzip', generateStatsFile: true, - openAnalyzer: !this.options.test, + openAnalyzer: !this.options.build.quiet, reportFilename: path.resolve(statsDir, 'client.html'), statsFilename: path.resolve(statsDir, 'client.json') }, this.options.build.analyze))) @@ -110,7 +110,7 @@ export default class WebpackClientConfig extends WebpackBaseConfig { } // Add friendly error plugin - if (this.options.dev && !this.options.test) { + if (this.options.dev && !this.options.build.quiet) { config.plugins.push( new FriendlyErrorsWebpackPlugin({ clearConsole: true, diff --git a/lib/common/nuxt.config.js b/lib/common/nuxt.config.js index f55f194180..7c6629dd78 100644 --- a/lib/common/nuxt.config.js +++ b/lib/common/nuxt.config.js @@ -10,7 +10,6 @@ export default { // Information about running environment dev: Boolean(env.dev), debug: undefined, // = dev - test: Boolean(env.ci || env.test), // Mode mode: 'universal', @@ -31,6 +30,7 @@ export default { extensions: [], build: { + quiet: Boolean(env.ci || env.test), analyze: false, profile: process.argv.includes('--profile'), extractCSS: false, diff --git a/lib/common/options.js b/lib/common/options.js index a54bdf3cfb..71432ee3a9 100644 --- a/lib/common/options.js +++ b/lib/common/options.js @@ -190,7 +190,11 @@ Options.from = function (_options) { options.build.optimization.splitChunks.name = true } - if (options.build.stats === 'none' || options.test === true) { + if (options.build.quiet === true) { + consola.clear().add({log: () => {}}) + } + + if (options.build.stats === 'none' || options.build.quiet === true) { options.build.stats = false } diff --git a/test/fixtures/cli/cli.build.config.js b/test/fixtures/cli/cli.build.config.js index 089715c295..683f83fe8d 100644 --- a/test/fixtures/cli/cli.build.config.js +++ b/test/fixtures/cli/cli.build.config.js @@ -1,12 +1,10 @@ -import consola from 'consola' - export default { hooks(hook) { hook('build:done', () => { - consola.success('Compiled successfully') + process.stdout.write('Compiled successfully') }) hook('listen', (server, { port, host }) => { - consola.success(`Listening on http://${host}:${port}`) + process.stdout.write(`Listening on http://${host}:${port}`) }) } } diff --git a/test/fixtures/cli/cli.gen.config.js b/test/fixtures/cli/cli.gen.config.js index 212a2c666f..cac6bde12a 100644 --- a/test/fixtures/cli/cli.gen.config.js +++ b/test/fixtures/cli/cli.gen.config.js @@ -1,5 +1,3 @@ -import consola from 'consola' - export default { buildDir: '.nuxt-generate/.build', generate: { @@ -8,9 +6,9 @@ export default { hooks(hook) { hook('generate:done', (generator, errors) => { if (!errors || errors.length === 0) { - consola.success('Generated successfully') + process.stdout.write('Generated successfully') } else { - consola.error('Generated failed') + process.stderr.write('Generated failed') } }) }