From fb9ff0fdd1263be41be09475f9821410575e9553 Mon Sep 17 00:00:00 2001 From: Darren Jennings Date: Wed, 3 Apr 2019 01:10:53 -0700 Subject: [PATCH 1/5] chore: bump nightwatch dependency to 1.x (#3388) --- packages/@vue/cli-plugin-e2e-nightwatch/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/@vue/cli-plugin-e2e-nightwatch/package.json b/packages/@vue/cli-plugin-e2e-nightwatch/package.json index 8abffecadc..929a5ed12d 100644 --- a/packages/@vue/cli-plugin-e2e-nightwatch/package.json +++ b/packages/@vue/cli-plugin-e2e-nightwatch/package.json @@ -27,7 +27,7 @@ "chromedriver": "^2.46.0", "deepmerge": "^3.2.0", "execa": "^1.0.0", - "nightwatch": "^0.9.21", + "nightwatch": "^1.0.18", "selenium-server": "^3.141.59" } } From 074f10bc2b388aa7764b44228428f07bd1a37c17 Mon Sep 17 00:00:00 2001 From: Haoqun Jiang Date: Tue, 9 Apr 2019 00:44:22 +0800 Subject: [PATCH 2/5] feat: use ESLint v5 by default everywhere (#3775) BREAKING CHANGE: may cause old projects' linting fail (those scaffolded with Vue CLI 3.0.x). --- packages/@vue/cli-plugin-eslint/generator/index.js | 10 +--------- packages/@vue/cli-plugin-eslint/package.json | 6 ++---- packages/@vue/cli-service-global/package.json | 4 ++-- 3 files changed, 5 insertions(+), 15 deletions(-) diff --git a/packages/@vue/cli-plugin-eslint/generator/index.js b/packages/@vue/cli-plugin-eslint/generator/index.js index 81d352b753..5dd53318b5 100644 --- a/packages/@vue/cli-plugin-eslint/generator/index.js +++ b/packages/@vue/cli-plugin-eslint/generator/index.js @@ -13,15 +13,7 @@ module.exports = (api, { config, lintOn = [] }, _, invoking) => { lint: 'vue-cli-service lint' }, eslintConfig, - // TODO: - // Move these dependencies to package.json in v4. - // Now in v3 we have to add redundant eslint related dependencies - // in order to keep compatibility with v3.0.x users who defaults to ESlint v4. - devDependencies: { - 'babel-eslint': '^10.0.1', - 'eslint': '^5.8.0', - 'eslint-plugin-vue': '^5.0.0' - } + devDependencies: {} } const injectEditorConfig = (config) => { diff --git a/packages/@vue/cli-plugin-eslint/package.json b/packages/@vue/cli-plugin-eslint/package.json index d49eea4f55..b55d7e54d6 100644 --- a/packages/@vue/cli-plugin-eslint/package.json +++ b/packages/@vue/cli-plugin-eslint/package.json @@ -25,12 +25,10 @@ "dependencies": { "@vue/cli-shared-utils": "^3.5.1", "babel-eslint": "^10.0.1", + "eslint": "^5.8.0", "eslint-loader": "^2.1.2", + "eslint-plugin-vue": "^5.0.0", "globby": "^9.0.0", "webpack": ">=4 < 4.29" - }, - "optionalDependencies": { - "eslint": "^4.19.1", - "eslint-plugin-vue": "^4.7.1" } } diff --git a/packages/@vue/cli-service-global/package.json b/packages/@vue/cli-service-global/package.json index 0947479724..c0d7775c12 100644 --- a/packages/@vue/cli-service-global/package.json +++ b/packages/@vue/cli-service-global/package.json @@ -28,8 +28,8 @@ "@vue/cli-service": "^3.5.3", "babel-eslint": "^10.0.1", "chalk": "^2.4.2", - "eslint": "^4.19.1", - "eslint-plugin-vue": "^4.7.1", + "eslint": "^5.8.0", + "eslint-plugin-vue": "^5.0.0", "resolve": "^1.10.0", "vue": "^2.6.6", "vue-template-compiler": "^2.6.6" From 8d02c7c065631e51476153c8431d22b7406b42f6 Mon Sep 17 00:00:00 2001 From: Haoqun Jiang Date: Tue, 9 Apr 2019 00:44:32 +0800 Subject: [PATCH 3/5] chore: remove support for `vue-cli-service e2e` registerCommand (#3774) BREAKING CHANGE: "vue-cli-service e2e" has been deprecated in v3 and renamed to "vue-cli-service test:e2e". Now the legacy command is completely removed. --- packages/@vue/cli-plugin-e2e-nightwatch/index.js | 7 ------- 1 file changed, 7 deletions(-) diff --git a/packages/@vue/cli-plugin-e2e-nightwatch/index.js b/packages/@vue/cli-plugin-e2e-nightwatch/index.js index 88d843b5ca..ed36c5b41b 100644 --- a/packages/@vue/cli-plugin-e2e-nightwatch/index.js +++ b/packages/@vue/cli-plugin-e2e-nightwatch/index.js @@ -58,13 +58,6 @@ module.exports = (api, options) => { return runner }) }) - - // TODO remove in RC - api.registerCommand('e2e', (args, rawArgv) => { - const { warn } = require('@vue/cli-shared-utils') - warn(`Deprecation Warning: "vue-cli-service e2e" has been renamed to "vue-cli-service test:e2e".`) - return api.service.run('test:e2e', args, rawArgv) - }) } module.exports.defaultModes = { From 8544db45979173ad275bee8b5bc11922d3a13d4b Mon Sep 17 00:00:00 2001 From: Haoqun Jiang Date: Mon, 22 Apr 2019 13:46:15 +0800 Subject: [PATCH 4/5] feat!: set default NODE_ENV to `production` when running `build` command --- packages/@vue/cli-service/lib/Service.js | 27 +++++++++++++++--------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/packages/@vue/cli-service/lib/Service.js b/packages/@vue/cli-service/lib/Service.js index 84a2f857b4..cc6365efb5 100644 --- a/packages/@vue/cli-service/lib/Service.js +++ b/packages/@vue/cli-service/lib/Service.js @@ -55,7 +55,7 @@ module.exports = class Service { } } - init (mode = process.env.VUE_CLI_MODE) { + init (command, mode = process.env.VUE_CLI_MODE) { if (this.initialized) { return } @@ -64,10 +64,10 @@ module.exports = class Service { // load mode .env if (mode) { - this.loadEnv(mode) + this.loadEnv(command, mode) } // load base .env - this.loadEnv() + this.loadEnv(command) // load user config const userOptions = this.loadUserOptions() @@ -89,7 +89,7 @@ module.exports = class Service { } } - loadEnv (mode) { + loadEnv (command, mode) { const logger = debug('vue:env') const basePath = path.resolve(this.context, `.env${mode ? `.${mode}` : ``}`) const localPath = `${basePath}.local` @@ -111,8 +111,8 @@ module.exports = class Service { load(basePath) // by default, NODE_ENV and BABEL_ENV are set to "development" unless mode - // is production or test. However the value in .env files will take higher - // priority. + // is production or test or running build command. + // However the value in .env files will take higher priority. if (mode) { // always set NODE_ENV during tests // as that is necessary for tests to not be affected by each other @@ -120,9 +120,16 @@ module.exports = class Service { process.env.VUE_CLI_TEST && !process.env.VUE_CLI_TEST_TESTING_ENV ) - const defaultNodeEnv = (mode === 'production' || mode === 'test') - ? mode - : 'development' + + let defaultNodeEnv + if (mode === 'production' || mode === 'test') { + defaultNodeEnv = mode + } else if (command === 'build') { + defaultNodeEnv = 'production' + } else { + defaultNodeEnv = 'development' + } + if (shouldForceDefaultEnv || process.env.NODE_ENV == null) { process.env.NODE_ENV = defaultNodeEnv } @@ -203,7 +210,7 @@ module.exports = class Service { const mode = args.mode || (name === 'build' && args.watch ? 'development' : this.modes[name]) // load env variables, load user config, apply plugins - this.init(mode) + this.init(name, mode) args._ = args._ || [] let command = this.commands[name] From ac577b48e3c26bfd5ecb822bfbe8fa6266136f05 Mon Sep 17 00:00:00 2001 From: Haoqun Jiang Date: Mon, 22 Apr 2019 14:40:49 +0800 Subject: [PATCH 5/5] fix: fix parameter order --- packages/@vue/cli-service/lib/Service.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/@vue/cli-service/lib/Service.js b/packages/@vue/cli-service/lib/Service.js index cc6365efb5..389f000215 100644 --- a/packages/@vue/cli-service/lib/Service.js +++ b/packages/@vue/cli-service/lib/Service.js @@ -55,7 +55,7 @@ module.exports = class Service { } } - init (command, mode = process.env.VUE_CLI_MODE) { + init (mode = process.env.VUE_CLI_MODE, command = '') { if (this.initialized) { return } @@ -64,7 +64,7 @@ module.exports = class Service { // load mode .env if (mode) { - this.loadEnv(command, mode) + this.loadEnv(mode, command) } // load base .env this.loadEnv(command) @@ -89,7 +89,7 @@ module.exports = class Service { } } - loadEnv (command, mode) { + loadEnv (mode, command) { const logger = debug('vue:env') const basePath = path.resolve(this.context, `.env${mode ? `.${mode}` : ``}`) const localPath = `${basePath}.local` @@ -210,7 +210,7 @@ module.exports = class Service { const mode = args.mode || (name === 'build' && args.watch ? 'development' : this.modes[name]) // load env variables, load user config, apply plugins - this.init(name, mode) + this.init(mode, name) args._ = args._ || [] let command = this.commands[name]