From b4ea6482719d2e440ab8e20d20c8d0938363ca30 Mon Sep 17 00:00:00 2001 From: wilsonsliu Date: Sat, 26 Jan 2019 11:10:09 +0800 Subject: [PATCH] fix: genCacheConfig return different result because linebreak --- packages/@vue/cli-service/lib/PluginAPI.js | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/packages/@vue/cli-service/lib/PluginAPI.js b/packages/@vue/cli-service/lib/PluginAPI.js index b486e1f433..82ac4edbfc 100644 --- a/packages/@vue/cli-service/lib/PluginAPI.js +++ b/packages/@vue/cli-service/lib/PluginAPI.js @@ -135,14 +135,22 @@ class PluginAPI { const fs = require('fs') const cacheDirectory = this.resolve(`node_modules/.cache/${id}`) + // replace \r\n to \n generate consistent hash + const fmtFunc = conf => { + if (typeof conf === 'function') { + return conf.toString().replace(/\r\n?/g, '\n') + } + return conf + } + const variables = { partialIdentifier, 'cli-service': require('../package.json').version, 'cache-loader': require('cache-loader/package.json').version, env: process.env, config: [ - this.service.projectOptions.chainWebpack, - this.service.projectOptions.configureWebpack + fmtFunc(this.service.projectOptions.chainWebpack), + fmtFunc(this.service.projectOptions.configureWebpack) ] } @@ -159,7 +167,7 @@ class PluginAPI { for (const file of configFiles) { const content = readConfig(file) if (content) { - variables.configFiles = content + variables.configFiles = content.replace(/\r\n?/g, '\n') break } }