Commit Graph

2143 Commits

Author SHA1 Message Date
Yingya Zhang 0f6ec2e53d fix: typo atfer (#4851) 2019-11-25 16:11:29 +08:00
Haoqun Jiang 2652ab6a6b fix: include prereleases for assert*Version calls 2019-11-13 00:14:24 +08:00
Thomas Kint 6c4a0bf4f8 feat: allow use of full url for pwa manifest and icons (#4736) 2019-11-12 22:33:18 +08:00
Haoqun Jiang 1c41371a42 v4.1.0-beta.0 2019-11-09 21:49:23 +08:00
Haoqun Jiang 3094ae623f chore: pre release sync 2019-11-09 21:48:23 +08:00
Jan Van Bruggen c8392f12dc Add missing cli-ui dependencies (#4818)
Add missing `cli-ui/` dependencies that overlap with the root`/package.json`. Although `cli-ui/` does work if `yarn install` has been run at the root directory, `cli-ui/package.json` is an incomplete specification.
2019-11-09 15:11:47 +08:00
Haoqun Jiang 63257931bc fix: don't prepend publicPath with slash (#4816)
fixes #3338
fixes #4184

Actually I don't know why the slash was added in the first place, seems
extraneous to me.
2019-11-09 15:07:39 +08:00
Haoqun Jiang 1124b62bdd fix: vue add should not throw if plugin has no generator
The bug was introduced in #2337.
2019-11-08 23:25:29 +08:00
Haoqun Jiang 30f72420e2 fix: vue add should not crash when executed under Yarn PnP
TODO: should fix `loadModule` in PnP environment
2019-11-08 23:25:13 +08:00
Roman Seidelsohn 26c48992ef fix(lib): replace "url" module with simple string split (close #4667) (#4809)
* fix(lib): replace "url" module with simple string split (close #4667)

Fixes issue #4667 by implementing the proposal https://github.com/vuejs/vue-cli/issues/4667#issuecomment-548464520
Also gets rid of a node module by using simpler code for removing eventual GET parameters

* Update packages/@vue/cli-service/lib/commands/build/formatStats.js

Co-Authored-By: Haoqun Jiang <haoqunjiang@gmail.com>
2019-11-08 18:17:58 +08:00
Haoqun Jiang 1e663df1ca feat(GeneratorAPI): accept multiple arguments for the resolve method (#4715)
* feat(GeneratorAPI): accept multiple arguments for the resolve method

To make its signature conform to  the standard `path.resolve`, avoid
confusions.

There's already a bug in the downstream plugin that was caused by such
confusion: https://github.com/Akryum/vue-cli-plugin-ssr/blob/a742953b8376817950a01ad79967b9aa02da5388/generator/index.js#L163-L171

* docs: update descriptions of the `resolve` api [ci skip]
2019-11-07 10:29:06 +08:00
Haoqun Jiang 9ebc2ab3e9 feat: enable postcss+autoprefixer by default internally, reducing boilerplate (#4798)
This also fixes the issue with Yarn PnP that requires `autoprefixer` to
be explicitly listed in the user's project dependency.
2019-11-07 09:28:44 +08:00
Haoqun Jiang e1d156ff85 fix: add sourceType: 'unambiguous' to babel preset (#4797)
fixes #4773
2019-11-07 09:27:53 +08:00
Haoqun Jiang 759d77fd5c refactor: use babel overrides to transpile babel runtime helpers (#4777)
* refactor: use babel overrides to transpile babel runtime helpers

As recommended in babel/babel#9903.
Get rid of the module-resolver plugin, may fix #3928.
Seems to have fixed #4742 as well.

There may be a small breaking change: as we now use `excludes` & `includes`, babel requires `filename` option to be present (introduced in https://github.com/babel/babel/pull/10181/files). So users who call `babel.transformSync` directly may encounter an error.

However, as we explicitly stated that this preset is only used for Vue CLI internally, I don't expect too many such use cases there. And the error messages are clear enough.
Considering the benefits that this PR brings, I think it's an acceptable tradeoff.


 test: update tests for babel

* test: fix windows tests

* test: remove unused variables

* fix: fix scope package paths on Windows

* test: wait some time in router tests in case dom hasn't updated in time
2019-11-04 16:29:06 +08:00
Maël Nison 0a5c79be52 Enforces require.resolve for loaders (#4532)
* Enforces require.resolve for loaders

* Updates the lockfile

* Fixes more things

* Adds an extra check

* test(loaders): fix the tests

* style(cli): fix the linting

* style(cli): fix the linting (on windows)

* Update package.json

* Updates the lockfile

* chore: sync dependency versions

* chore: sync dependency versions

* chore: don't introduce unnecessary changes in yarn.lock

* extraneous space
2019-11-04 16:26:33 +08:00
Haoqun Jiang 2565c5d07e feat: support binary mirrors for taobao registry (#4767)
* feat: support binary mirrors for taobao registry

fixes issues like #4718

* fix: only install cypress 3, for now

* fix: do not override user defined `CYPRESS_INSTALL_BINARY` env
2019-11-01 23:39:56 +08:00
Haoqun Jiang 17925c6ae6 v4.0.5 2019-10-22 19:53:34 +08:00
Haoqun Jiang 964fad5968 fix: should tolerate cli version check error (#4741)
* fix: should tolerate cli version check error

* fix: add the error message after the DEBUG indicator
2019-10-22 19:08:32 +08:00
Haoqun Jiang 31df36d85f fix(eslint): autofix code style after scaffolding on older versions of cli (#4740) 2019-10-22 16:47:36 +08:00
Haoqun Jiang 8093630c08 fix(ui): "add router" button should not require prompt in terminal (#4739) 2019-10-22 15:38:41 +08:00
Haoqun Jiang b35a8d3e1e fix(ui): fix latest version check without yarn (#4724)
Fixes #4710
2019-10-21 20:29:25 +08:00
Haoqun Jiang 86c500fd4b chore: dependency maintenance (#4734)
* chore: dependency maintenance

* Revert "test: replace `waitForFunction` with `waitForXPath`"

This reverts commit b2848aeeaf.
2019-10-21 20:13:21 +08:00
Haoqun Jiang 96890b526f fix: do not install core plugins that have major version bumps (#4720)
* fix: fix version check for core plugins in v4

* fix: fix the error when the diff result is null
2019-10-21 17:20:23 +08:00
Haoqun Jiang 85c9cbfeda fix: fix eslint not found error in vue serve command (#4728) 2019-10-21 17:19:56 +08:00
Haoqun Jiang d82a2bbe26 v4.0.4 2019-10-18 15:48:03 +08:00
Haoqun Jiang 0953057b22 fix: fix a typo that caused router failed to install in older versions (#4711) 2019-10-18 15:34:09 +08:00
Haoqun Jiang aa29fd1526 v4.0.3 2019-10-17 15:59:03 +08:00
Haoqun Jiang 048003c334 fix: fix vue add router command in v3 projects (#4698)
fixes #4692
2019-10-17 15:42:44 +08:00
Haoqun Jiang a759af1c2a fix: allow v3 cli to invoke vuex & router plugin from inside cli-service (#4696) 2019-10-17 15:36:53 +08:00
Haoqun Jiang eec84c0d49 fix: fix "lint on commit" projects generation error (#4697)
Fixes #4694
Fixes #4695

Fix the "ENOENT: no such file or directory … debugnode_module/sms/index.js" error.

The problem are caused by 2 issues:
1. The `lint-staged` packages introduced an old version of debug,
causing node_module deduping, thus changing the node_module layout
2. The dependencies required in the cached `lint` module is no longer at
its originial position, thus the "ENOENT" error.

This change still does not fix the PNPM 4 issue, considering its smaller
user base, we'll fix it later.
2019-10-17 15:36:31 +08:00
Haoqun Jiang 8b08c73e8e v4.0.2 2019-10-17 10:22:54 +08:00
Haoqun Jiang dc318c5830 fix: add a compatibility layer for router & vuex for CLI v3 (#4693)
fixes #4691
2019-10-17 10:15:34 +08:00
Haoqun Jiang 9770808411 v4.0.1 2019-10-16 20:33:29 +08:00
Haoqun Jiang fec160ff96 fix: no need to assertCliVersion. avoid breaking old versions 2019-10-16 20:31:18 +08:00
Haoqun Jiang 81f84577e4 v4.0.0 2019-10-16 19:19:06 +08:00
Haoqun Jiang 0603f1eed9 chore: pre release sync 2019-10-16 19:18:38 +08:00
Haoqun Jiang c80fb6ab26 fix: pin typescript version to 3.5 until we support typescript-eslint 2 2019-10-16 18:53:04 +08:00
Haoqun Jiang 4de59d06ac fix(types): update css options interface to reflect v4 changes 2019-10-16 17:52:38 +08:00
Haoqun Jiang d72b453728 fix: fix afterAnyInvoke hook compatibility with pnpm 4
Maybe caused by the change of resolve mechanism in pnpm 4,
calling the hook from the creator would get a `Cannot find module`
error. As a workaround, we now require and cache the module outside the
callback function.
2019-10-16 13:28:00 +08:00
Haoqun Jiang 953a080c19 fix: update .npmrc for pnpm 4 2019-10-16 13:22:04 +08:00
Haoqun Jiang 5d2c8da754 refactor: replace --disturl option with NODEJS_ORG_MIRROR env variable
for better compatibility with pnpm 4 (which does not allow the
`--disturl` option)
2019-10-16 13:18:14 +08:00
B4rtware badf63d7f0 fix: add pnpm v4 support (#4677)
* fix: add pnpm v4 support

in pnpm v4 the option '--loglevel' is no longer available instead '--reporter' is used.

* refactor: remove 'v' from PNPM constants for linting

* refactor: rename variable

* fix: typo in _hasPnpm4orLater

Co-Authored-By: Pavan Kumar Sunkara <pavan.sss1991@gmail.com>

* refactor: reduce the amount of duplicate code for pnpm version check

* refactor: remove return-assignment

* refactor: add explicit return value instead of using array access

Co-Authored-By: Pavan Kumar Sunkara <pavan.sss1991@gmail.com>

* fix: remove return value from checkPnpmVersion

* fix: pnpmVersion variable

* refactor: cache pnpm version number

* refactor: fix function name and revert api break

* fix: function call correction

* refactor: export hasPnpmVersionOrLater and use this in favor of hasPnpm4OrLater

* refactor: move cache getter into getPnpmVersion

* refactor: add comment

* refactor: remove comment
2019-10-16 13:15:58 +08:00
Nathaniel Blackburn b65b24e8e5 fix: correct typo in babel migrator (#4683) 2019-10-16 11:16:03 +08:00
Haoqun Jiang 36774935a5 chore!: add @vue/cli in --version output, to avoid confusion (#4681)
* feat!: add `Vue CLI` in `--version` output, to avoid confusion

* chore: should use `@vue/cli` as the correct branding
2019-10-16 11:14:42 +08:00
Maël Nison 3aa513ace5 Add a variant for config get registry (#4530)
* Update shouldUseTaobao.js

* Fixes linting
2019-10-11 22:01:07 +02:00
Haoqun Jiang 5cce80c2f7 v4.0.0-rc.8 2019-10-11 16:11:02 +08:00
Haoqun Jiang 3fcff0268a chore: pre release sync 2019-10-11 16:08:49 +08:00
Phan An 81d0245dd6 chore: better upgrade messages (#3926)
* chore: better upgrade messages

* feat: try to find the right command to update
2019-10-11 15:34:22 +08:00
Haoqun Jiang 08d7761099 chore!: upgrade terser-webpack-plugin to 2.x (#4676)
BREAKING CHANGE:
The only real breaking change is https://github.com/webpack-contrib/terser-webpack-plugin/issues/129,
which is not likely to affect normal users.

The rest are default option values changes, which are already covered in
the default provided `terserOptions` of Vue CLI.

Note that here we choose to disable `extractComments` by default, as I
don't see enough data showing such license comments taking too much
space. The extra LICENSE file may also be confusing to some users.
2019-10-11 14:51:20 +08:00
Haoqun Jiang 01e36f30cf refactor!: use DefinePlugin (again) instead of EnvironmentPlugin (#4673)
* Revert "refactor: use EnvironmentPlugin instead of DefinePlugin"

This reverts commit 7117a096df.

* refactor: use the exported DefinePlugin
2019-10-11 13:14:24 +08:00