From 7b3d787f53fde321f4cc70e7fc8d5ec05fb97338 Mon Sep 17 00:00:00 2001 From: Haoqun Jiang Date: Wed, 17 Jul 2019 17:15:29 +0800 Subject: [PATCH] chore!: move dev configs into serve command BREAKING CHANGE: These configs are only meaningful when used with a running dev server. Technically, it is a breaking change. For example, this breaks use cases in which a user runs their own dev server instead of calling `vue-cli-service serve`. --- packages/@vue/cli-service/lib/Service.js | 1 - .../@vue/cli-service/lib/commands/serve.js | 24 +++++++++++++++++ packages/@vue/cli-service/lib/config/dev.js | 26 ------------------- 3 files changed, 24 insertions(+), 27 deletions(-) delete mode 100644 packages/@vue/cli-service/lib/config/dev.js diff --git a/packages/@vue/cli-service/lib/Service.js b/packages/@vue/cli-service/lib/Service.js index da53bd78a6..d350c06dad 100644 --- a/packages/@vue/cli-service/lib/Service.js +++ b/packages/@vue/cli-service/lib/Service.js @@ -148,7 +148,6 @@ module.exports = class Service { // config plugins are order sensitive './config/base', './config/css', - './config/dev', './config/prod', './config/app' ].map(idToPlugin) diff --git a/packages/@vue/cli-service/lib/commands/serve.js b/packages/@vue/cli-service/lib/commands/serve.js index fe0f325e2a..de91699fce 100644 --- a/packages/@vue/cli-service/lib/commands/serve.js +++ b/packages/@vue/cli-service/lib/commands/serve.js @@ -44,6 +44,30 @@ module.exports = (api, options) => { const validateWebpackConfig = require('../util/validateWebpackConfig') const isAbsoluteUrl = require('../util/isAbsoluteUrl') + // configs that only matters for dev server + api.chainWebpack(webpackConfig => { + if (process.env.NODE_ENV !== 'production' && process.env.NODE_ENV !== 'test') { + webpackConfig + .devtool('cheap-module-eval-source-map') + + webpackConfig + .plugin('hmr') + .use(require('webpack/lib/HotModuleReplacementPlugin')) + + // https://github.com/webpack/webpack/issues/6642 + // https://github.com/vuejs/vue-cli/issues/3539 + webpackConfig + .output + .globalObject(`(typeof self !== 'undefined' ? self : this)`) + + if (!process.env.VUE_CLI_TEST && options.devServer.progress !== false) { + webpackConfig + .plugin('progress') + .use(require('webpack/lib/ProgressPlugin')) + } + } + }) + // resolve webpack config const webpackConfig = api.resolveWebpackConfig() diff --git a/packages/@vue/cli-service/lib/config/dev.js b/packages/@vue/cli-service/lib/config/dev.js deleted file mode 100644 index d5137da816..0000000000 --- a/packages/@vue/cli-service/lib/config/dev.js +++ /dev/null @@ -1,26 +0,0 @@ -module.exports = (api, options) => { - api.chainWebpack(webpackConfig => { - if (process.env.NODE_ENV !== 'production' && process.env.NODE_ENV !== 'test') { - webpackConfig - .devtool('cheap-module-eval-source-map') - .output - .publicPath(options.publicPath) - - webpackConfig - .plugin('hmr') - .use(require('webpack/lib/HotModuleReplacementPlugin')) - - // https://github.com/webpack/webpack/issues/6642 - // https://github.com/vuejs/vue-cli/issues/3539 - webpackConfig - .output - .globalObject(`(typeof self !== 'undefined' ? self : this)`) - - if (!process.env.VUE_CLI_TEST && options.devServer.progress !== false) { - webpackConfig - .plugin('progress') - .use(require('webpack/lib/ProgressPlugin')) - } - } - }) -}