Skip to content

Commit 9f6ebb1

Browse files
committed
feat(cli): use webpack5 filesystem cache
1 parent c1bf3d8 commit 9f6ebb1

File tree

5 files changed

+6
-36
lines changed

5 files changed

+6
-36
lines changed

packages/@vue/cli-plugin-typescript/__tests__/tsPluginBabel.spec.js

+2-3
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,8 @@ test('using correct loader', async () => {
1717
const config = service.resolveWebpackConfig()
1818
// eslint-disable-next-line no-shadow
1919
const rule = config.module.rules.find(rule => rule.test.test('foo.ts'))
20-
expect(rule.use[0].loader).toMatch(require.resolve('cache-loader'))
21-
expect(rule.use[1].loader).toMatch(require.resolve('babel-loader'))
22-
expect(rule.use[2].loader).toMatch(require.resolve('ts-loader'))
20+
expect(rule.use[0].loader).toMatch(require.resolve('babel-loader'))
21+
expect(rule.use[1].loader).toMatch(require.resolve('ts-loader'))
2322
})
2423

2524
const creatorOptions = {

packages/@vue/cli-plugin-typescript/index.js

-10
Original file line numberDiff line numberDiff line change
@@ -30,16 +30,6 @@ module.exports = (api, projectOptions) => {
3030
tsxRule.use(name).loader(loader).options(options)
3131
}
3232

33-
addLoader({
34-
name: 'cache-loader',
35-
loader: require.resolve('cache-loader'),
36-
options: api.genCacheConfig('ts-loader', {
37-
'ts-loader': require('ts-loader/package.json').version,
38-
'typescript': require('typescript/package.json').version,
39-
modern: !!process.env.VUE_CLI_MODERN_BUILD
40-
}, 'tsconfig.json')
41-
})
42-
4333
if (useThreads) {
4434
addLoader({
4535
name: 'thread-loader',

packages/@vue/cli-plugin-typescript/package.json

-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
"@types/webpack-env": "^1.15.2",
2828
"@vue/cli-shared-utils": "^5.0.0-beta.3",
2929
"babel-loader": "^8.2.2",
30-
"cache-loader": "^4.1.0",
3130
"fork-ts-checker-webpack-plugin": "^6.1.0",
3231
"globby": "^11.0.2",
3332
"thread-loader": "^3.0.0",

packages/@vue/cli-service/lib/config/base.js

+4-21
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@ module.exports = (api, options) => {
1818
.rule('esm')
1919
.test(/\.m?jsx?$/)
2020
.resolve.set('fullySpecified', false)
21+
22+
webpackConfig
23+
.cache({ type: 'filesystem' })
2124
}
2225

2326
webpackConfig
@@ -57,12 +60,6 @@ module.exports = (api, options) => {
5760
// vue-loader --------------------------------------------------------------
5861
if (vueMajor === 2) {
5962
// for Vue 2 projects
60-
const vueLoaderCacheConfig = api.genCacheConfig('vue-loader', {
61-
'vue-loader': require('@vue/vue-loader-v15/package.json').version,
62-
'@vue/component-compiler-utils': require('@vue/component-compiler-utils/package.json').version,
63-
'vue-template-compiler': require('vue-template-compiler/package.json').version
64-
})
65-
6663
webpackConfig.resolve
6764
.alias
6865
.set(
@@ -75,17 +72,13 @@ module.exports = (api, options) => {
7572
webpackConfig.module
7673
.rule('vue')
7774
.test(/\.vue$/)
78-
.use('cache-loader')
79-
.loader(require.resolve('cache-loader'))
80-
.options(vueLoaderCacheConfig)
81-
.end()
8275
.use('vue-loader')
8376
.loader(require.resolve('@vue/vue-loader-v15'))
8477
.options(Object.assign({
8578
compilerOptions: {
8679
whitespace: 'condense'
8780
}
88-
}, vueLoaderCacheConfig))
81+
}))
8982

9083
webpackConfig
9184
.plugin('vue-loader')
@@ -101,11 +94,6 @@ module.exports = (api, options) => {
10194
.prepend(path.resolve(__dirname, './vue-loader-v15-resolve-compat'))
10295
} else if (vueMajor === 3) {
10396
// for Vue 3 projects
104-
const vueLoaderCacheConfig = api.genCacheConfig('vue-loader', {
105-
'vue-loader': require('vue-loader/package.json').version,
106-
'@vue/compiler-sfc': require('@vue/compiler-sfc/package.json').version
107-
})
108-
10997
webpackConfig.resolve
11098
.alias
11199
.set(
@@ -118,14 +106,9 @@ module.exports = (api, options) => {
118106
webpackConfig.module
119107
.rule('vue')
120108
.test(/\.vue$/)
121-
.use('cache-loader')
122-
.loader(require.resolve('cache-loader'))
123-
.options(vueLoaderCacheConfig)
124-
.end()
125109
.use('vue-loader')
126110
.loader(require.resolve('vue-loader'))
127111
.options({
128-
...vueLoaderCacheConfig,
129112
babelParserPlugins: ['jsx', 'classProperties', 'decorators-legacy']
130113
})
131114
.end()

packages/@vue/cli-service/package.json

-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@
4040
"address": "^1.1.2",
4141
"autoprefixer": "^10.2.4",
4242
"browserslist": "^4.16.3",
43-
"cache-loader": "^4.1.0",
4443
"case-sensitive-paths-webpack-plugin": "^2.3.0",
4544
"cli-highlight": "^2.1.10",
4645
"clipboardy": "^2.3.0",

0 commit comments

Comments
 (0)