diff --git a/packages/@vue/cli-plugin-pwa/lib/HtmlPwaPlugin.js b/packages/@vue/cli-plugin-pwa/lib/HtmlPwaPlugin.js
index e1597d2cc7..ba86f2a23b 100644
--- a/packages/@vue/cli-plugin-pwa/lib/HtmlPwaPlugin.js
+++ b/packages/@vue/cli-plugin-pwa/lib/HtmlPwaPlugin.js
@@ -1,5 +1,4 @@
const HtmlWebpackPlugin = require('html-webpack-plugin')
-const { semver } = require('@vue/cli-shared-utils')
const ID = 'vue-cli:pwa-html-plugin'
@@ -203,24 +202,12 @@ module.exports = class HtmlPwaPlugin {
size: () => outputManifest.length
}
- let webpackMajor = 4
- if (compiler.webpack) {
- webpackMajor = semver.major(compiler.webpack.version)
- }
-
- if (webpackMajor === 4) {
- compiler.hooks.emit.tapAsync(ID, (data, cb) => {
- data.assets[manifestPath] = manifestAsset
- cb(null, data)
- })
- } else {
- compiler.hooks.compilation.tap(ID, compilation => {
- compilation.hooks.processAssets.tap(
- { name: ID, stage: 'PROCESS_ASSETS_STAGE_ADDITIONS' },
- assets => { assets[manifestPath] = manifestAsset }
- )
- })
- }
+ compiler.hooks.compilation.tap(ID, compilation => {
+ compilation.hooks.processAssets.tap(
+ { name: ID, stage: 'PROCESS_ASSETS_STAGE_ADDITIONS' },
+ assets => { assets[manifestPath] = manifestAsset }
+ )
+ })
}
}
}
diff --git a/packages/@vue/cli-service/lib/commands/build/resolveWcConfig.js b/packages/@vue/cli-service/lib/commands/build/resolveWcConfig.js
index 037e88c717..28fe2ae373 100644
--- a/packages/@vue/cli-service/lib/commands/build/resolveWcConfig.js
+++ b/packages/@vue/cli-service/lib/commands/build/resolveWcConfig.js
@@ -5,7 +5,7 @@ module.exports = (api, { target, entry, name, 'inline-vue': inlineVue }) => {
// Disable CSS extraction and turn on CSS shadow mode for vue-style-loader
process.env.VUE_CLI_CSS_SHADOW_MODE = true
- const { log, error, semver } = require('@vue/cli-shared-utils')
+ const { log, error } = require('@vue/cli-shared-utils')
const abort = msg => {
log()
error(msg)
@@ -14,7 +14,6 @@ module.exports = (api, { target, entry, name, 'inline-vue': inlineVue }) => {
const cwd = api.getCwd()
const webpack = require('webpack')
- const webpackMajor = semver.major(webpack.version)
const vueMajor = require('../../util/getVueMajor')(cwd)
if (vueMajor === 3) {
abort(`Vue 3 support of the web component target is still under development.`)
@@ -131,11 +130,7 @@ module.exports = (api, { target, entry, name, 'inline-vue': inlineVue }) => {
// to ensure that multiple copies of async wc bundles can co-exist
// on the same page.
- if (webpackMajor === 4) {
- rawConfig.output.jsonpFunction = libName.replace(/-\w/g, c => c.charAt(1).toUpperCase()) + '_jsonp'
- } else {
- rawConfig.output.uniqueName = `vue-lib-${libName}`
- }
+ rawConfig.output.uniqueName = `vue-lib-${libName}`
return rawConfig
}
diff --git a/packages/@vue/cli-service/lib/config/app.js b/packages/@vue/cli-service/lib/config/app.js
index 172187206f..1fe1834a30 100644
--- a/packages/@vue/cli-service/lib/config/app.js
+++ b/packages/@vue/cli-service/lib/config/app.js
@@ -33,15 +33,10 @@ module.exports = (api, options) => {
.filename(outputFilename)
.chunkFilename(outputFilename)
- const webpack = require('webpack')
- const { semver } = require('@vue/cli-shared-utils')
- const webpackMajor = semver.major(webpack.version)
- if (webpackMajor !== 4) {
- // FIXME: a temporary workaround to get accurate contenthash in `applyLegacy`
- // Should use a better fix per discussions at
- webpackConfig.optimization
- .set('realContentHash', false)
- }
+ // FIXME: a temporary workaround to get accurate contenthash in `applyLegacy`
+ // Should use a better fix per discussions at
+ webpackConfig.optimization
+ .set('realContentHash', false)
// code splitting
if (process.env.NODE_ENV !== 'test') {
@@ -72,13 +67,7 @@ module.exports = (api, options) => {
scriptLoading: 'defer',
templateParameters: (compilation, assets, assetTags, pluginOptions) => {
// enhance html-webpack-plugin's built in template params
- let stats
return Object.assign({
- // make stats lazy as it is expensive
- // TODO: not sure if it's still needed as of
- get webpack () {
- return stats || (stats = compilation.getStats().toJson())
- },
compilation: compilation,
webpackConfig: compilation.options,
htmlWebpackPlugin: {
diff --git a/packages/@vue/cli-service/lib/config/base.js b/packages/@vue/cli-service/lib/config/base.js
index 7deef3b312..4380eb97c8 100644
--- a/packages/@vue/cli-service/lib/config/base.js
+++ b/packages/@vue/cli-service/lib/config/base.js
@@ -1,11 +1,9 @@
const path = require('path')
-const { semver } = require('@vue/cli-shared-utils')
/** @type {import('@vue/cli-service').ServicePlugin} */
module.exports = (api, options) => {
const cwd = api.getCwd()
const webpack = require('webpack')
- const webpackMajor = semver.major(webpack.version)
const vueMajor = require('../util/getVueMajor')(cwd)
api.chainWebpack(webpackConfig => {
@@ -13,12 +11,10 @@ module.exports = (api, options) => {
const resolveLocal = require('../util/resolveLocal')
// https://github.com/webpack/webpack/issues/11467#issuecomment-691873586
- if (webpackMajor !== 4) {
- webpackConfig.module
- .rule('esm')
- .test(/\.m?jsx?$/)
- .resolve.set('fullySpecified', false)
- }
+ webpackConfig.module
+ .rule('esm')
+ .test(/\.m?jsx?$/)
+ .resolve.set('fullySpecified', false)
webpackConfig
.mode('development')