Commit Graph

457 Commits

Author SHA1 Message Date
Haoqun Jiang c4dc8d61c3 refactor: remove unnecessary padEnd & padStart shims
Both features are already supported in Node.js v8+
2019-12-03 23:07:47 +08:00
Haoqun Jiang 1a0b59142a refactor: use dependencies from @vue/cli-share-utils whenver possible 2019-11-29 15:41:18 +08:00
Haoqun Jiang 2652ab6a6b fix: include prereleases for assert*Version calls 2019-11-13 00:14:24 +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
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 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
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 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
Haoqun Jiang e5196f581a fix: fix redundant log messages from webpack-dev-server (#4666)
By replacing the `quiet` option with `logLevel: 'silent'`.

Fixes #4599
2019-10-10 09:59:16 +08:00
Haoqun Jiang f5135d41a5 feat: make the minimizer config available in all modes (#4641)
As long as the `minimize` option is set to false (which is default in
production mode), the code won't be minimized. So the mode doesn't
matter when it comes to the `minimizer` config.

By exposing this config, users can simplify their custom config, by
removing the `process.env.NODE_ENV === 'production'` guard around their
custom minimizer configuration.
2019-10-07 00:14:28 +08:00
Haoqun Jiang e63bf6122b fix: avoid accidentally overriding sass config with scss configs (#4637) 2019-10-01 23:30:15 +08:00
Haoqun Jiang ebdb142a4b fix: fix sassOptions merging for scss syntax in sass-loader v8 (#4631)
fixes #4630
2019-09-30 14:02:48 +08:00
Haoqun Jiang cb740ae268 fix: correctly ignore html templates in copy-webpack-plugin (#4613)
Fixes #3597.
Fixes #4299.
2019-09-25 00:19:25 +08:00
Haoqun Jiang 59d6a7c856 docs: rephrase the upgrade notice 2019-09-09 23:01:39 +08:00
Haoqun Jiang 8cc9ea5f81 fix: pause & resume spinners elegantly 2019-09-09 17:23:47 +08:00
Haoqun Jiang af17a9b49f feat: support sass-loader v8 2019-09-09 17:23:21 +08:00
Haoqun Jiang 72ba7505af fix: should not proxy sockjs endpoint (#4550)
fixes #4504
thanks to https://github.com/facebook/create-react-app/pull/7444
2019-09-07 13:02:34 +08:00
Thorsten Lünborg fba2ad0606 feat: --skip-plugins (#4448)
Allow skipping of plugins  from command line

close #4262
close #3830
2019-08-21 15:38:01 +08:00
Roman Pavlov 86f4f5fceb feat(build): add --inline-vue flag to optionally disable externalization of Vue (#4261)
Resolves #4055.
2019-08-19 21:05:46 +08:00
Haoqun Jiang 348e36eedb fix: merge custom externals config correctly, supports array (#4429)
closes #4413
2019-08-15 11:48:48 +02:00
Haoqun Jiang e9fd9a716c feat!: deprecate css.modules in favor of css.requireModuleExtension (#4387)
closes #4376

Since css-loader v3, custom CSS Modules configurations are under the
`modules` field. So when a user customizes these configurations, the `modules`
feature is automatically enabled for all css files.
So we must require the user's explicit consensus or disagreement on whether
these rules apply to all CSS files or not.
2019-08-02 21:14:39 +08:00
Haoqun Jiang 930b4596b1 feat: allow configuring scss options separately from sass (#4386)
closes #4116
2019-08-02 19:45:12 +08:00
Haoqun Jiang c76d2e691d style: add a "no-shadow" linter rule (#4385)
It has become a common source of mistakes.
For example, during PR #4363 I've referred to the wrong `options`
several times due to the variable shadowing.
2019-08-02 18:24:52 +08:00
Haoqun Jiang 2e3fa929fe chore!: remove the already-deprecated baseUrl option (#4388) 2019-08-02 17:12:13 +08:00
Haoqun Jiang a8df1df26c fix: fix css.loaderOptions.css.modules default values (#4363)
fixes #4357
2019-07-29 22:20:53 +08:00
李枨煊 42ecd08d35 fix: fix stats display when chunkFilename contains query string (#4359) 2019-07-29 15:35:12 +08:00
yiliang a2856a750c chore(cli-service): word spelling in comments (#4367) 2019-07-28 20:39:42 +08:00
Haoqun Jiang 2d59c9676c fix: fix css modules configuration in css-loader v3 (#4345)
fixes #4337
2019-07-25 09:56:04 +08:00
Mewes Kochheim de9748a5a5 fix: do not introduce extra level of directory when building lib for scope packages (#4320)
This fixes references to static assets in the bundled script.

Fixes #4311
2019-07-22 19:47:22 +08:00
Haoqun Jiang e2e3469a18 chore!: ensure consistent directory structure for all modes (#4323)
BREAKING CHANGE:
Changing directory strcuture, though now becoming more intuitive, may
still break users' workflows, so it's considered a breaking change.

Fixes #4215.
Fixes #3767.
Fixes #4234
2019-07-21 20:00:31 +08:00
Haoqun Jiang 3dd3774346 chore!: move dev configs into serve command (#4302)
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`.
2019-07-18 16:36:53 +08:00
shadow-light 9faddce63f fix: indexPath should also affect non-production builds (#4057)
fixes #2327
fixes #4247
2019-07-14 22:39:31 +08:00
shadow-light 52ae1c8a9b fix!: make webpack use values consistent (#4230)
The use key is `pug-plain` despite a similar item above it using the key `pug-plain-loader`. This just makes them consistent.
2019-07-14 22:22:59 +08:00
Pavan Kumar Sunkara 362587a966 feat!: make vuex a separate plugin (#4242)
fixes #2335, #4024
2019-07-06 15:13:09 +08:00
Min ho Kim c0aa2bb310 Fix typos (#4241) 2019-07-06 07:09:29 +03:00
Pavan Kumar Sunkara 246ae678cb feat!: make router a separate plugin (#4196)
* refactor: move router to its own plugin

* refactor: rename routerHistoryMode option to historyMode

* test: add @vue/cli-plugin-router tests

* feat: change src/router.js for most common use cases

* fix: fix cli-ui tests

* docs: Remove router root option from docs

* fix: add support for legacy router option
2019-07-05 23:21:29 +08:00
Leon Liu 76e7c38fc8 fix: prefer devServer.public as the custom url for browser to open (#4169)
fixes #3747
2019-06-19 19:23:44 +08:00
Haoqun Jiang f3d2c1c133 fix: display correct address when multiple network adapters present (#4083)
fixes #3266

see https://github.com/vuejs/vue-cli/issues/3266#issuecomment-493487325

Thanks to @shenliangv
2019-06-04 23:57:31 +08:00
Haoqun Jiang 78e1c4cf63 fix: fix resolve project local plugin's file path (#4095)
Thanks to @SneakyMax
See https://github.com/vuejs/vue-cli/issues/4014#issuecomment-497993827
2019-06-04 23:56:55 +08:00
Sanapoint 顼轩 47d56e998d fix(cli-service): avoid opening browser twice
fixes #4079
2019-05-30 17:01:27 +08:00
Haoqun Jiang d81d57beec fix: fix dev mode compatibility with workers (#4034)
fixes #3539
2019-05-21 22:19:57 +08:00
Haoqun Jiang 80028755f8 fix: update the css-loader runtime path for css-loader v2 (#4025) 2019-05-19 21:04:15 +08:00
Francisco edcce6a311 chore(dev-server): set clientLogLevel option to silent (#4018)
The `none` option is deprecated and will be removed in the next major https://github.com/webpack/webpack-dev-server/pull/1901/files
2019-05-18 16:55:56 +08:00
achretien 59b106ad04 feat: enable hmr for 'mini-css-extract-plugin' in dev (#4011) 2019-05-17 16:33:23 +08:00
Haoqun Jiang 15b5c8d4d7 chore!: change default value of lintOnSave option (#3975)
BREAKING CHANGE:
See https://github.com/vuejs/vue-cli/pull/3572
2019-05-14 11:20:20 +08:00
Haoqun Jiang 341286b708 chore: remove extraneous log statement 2019-05-04 00:27:57 +08:00
Haoqun Jiang 2ec3fca99a feat!: upgrade to webpack-chain v5 (#3913) 2019-04-30 10:31:17 +08:00
Haoqun Jiang dfe3987d9f feat!: enable splitChunks by default even in development mode (#3863)
BREAKING CHANGE:
This changes the output directory structures for development mode
(app.js -> index.js + chunk-common.js + chunk-vendors.js).
By enabling splitChunks by default, the memory usage of webpack may be
greatly reduced for large multi-page projects.

This commit fixes #3838
May also fix #2991
2019-04-30 10:18:32 +08:00
Haoqun Jiang 678bfc6b2d feat!: set whitespace: 'condense' for template compiler (#3853)
BREAKING CHANGE:
Detailed explanation: https://github.com/vuejs/vue/issues/9208#issuecomment-450012518

Take the following template as example:
```
<p>
  Welcome to <b>Vue.js</b> <i>world</i>.
  Have fun!
</p>
```

With `preserveWhitespace: false`, it was compiled as:
```
<p> Welcome to <b>Vue.js</b><i>world</i>. Have fun! </p>
```

With `whitespace: 'condense'`, it is now compiled as:
```
<p> Welcome to <b>Vue.js</b> <i>world</i>. Have fun! </p>
```

Note the **inline whitespace between tags** is preserved.

Closes #1020
2019-04-30 10:18:03 +08:00