Skip to content

Plan for Vue CLI v5 #6064

Closed
Closed
@haoqunjiang

Description

@haoqunjiang

Here are the rough ideas:

Major Dependency Upgrades

  • Webpack 5 (also allows to opt-out to webpack 4), feat!: support and use webpack 5 as default #6060
  • HTML Webpack Plugin 4
  • Cypress 6, would be a peer dependency
  • Workbox 6
  • Jest 26
  • Mocha 8
  • ESLint 7
  • Other necessary major dependency version bumps, including various webpack loaders and plugins

Planned New Features

  • Performance
    • Now that we use webpack 5 by default, we can utilize its persistent cache to have a better compilation performance.
  • Predicatibility
    • A --transpile-all CLI flag to include node_modules for transpiration, as a fail-safe for the transpileDependencies option. The transpileDependencies option can be set to true to transpile all dependencies in node_modules. It should be the recommended way to build your app, especially when you are using webpack 5, as the compilation overhead should be tolerable with the persistent cache.
  • Modern mode
    • Enabled by default, with additional modern-only and no-modern CLI options
    • A separate polyfills chunk by default
    • Better browserslist integration. For example, safari-no-module-fix can be dropped when browserslist config does not target those buggy browsers.
  • Configuration
    • Async config loading

Changed Behaviors

  • vue serve/build will be an alias of npm run serve/build. If an entry is designated and no package.json found, it’ll prompt to use vite (Vue 3) or parcel (Vue 2) for instant prototyping instead.

Dropped Features

Other Breaking Changes Under Consideration

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions