From 11c407a085e9facd810914a5d4256946c11a1ca9 Mon Sep 17 00:00:00 2001 From: Evan You Date: Thu, 7 Jan 2021 12:01:52 -0500 Subject: [PATCH] fix: fix cache invalidation for non-optimized deps with cross imports fix #1401 --- packages/vite/src/node/optimizer/index.ts | 2 +- packages/vite/src/node/plugins/resolve.ts | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/vite/src/node/optimizer/index.ts b/packages/vite/src/node/optimizer/index.ts index a12a90dbc023c6..28b05340593098 100644 --- a/packages/vite/src/node/optimizer/index.ts +++ b/packages/vite/src/node/optimizer/index.ts @@ -412,5 +412,5 @@ export function getDepHash( if (configFile) { content += fs.readFileSync(configFile, 'utf-8') } - return createHash('sha1').update(content).digest('base64') + return createHash('sha256').update(content).digest('hex').substr(0, 8) } diff --git a/packages/vite/src/node/plugins/resolve.ts b/packages/vite/src/node/plugins/resolve.ts index c0e2a9b362cac5..f13cc14888bdd6 100644 --- a/packages/vite/src/node/plugins/resolve.ts +++ b/packages/vite/src/node/plugins/resolve.ts @@ -282,7 +282,10 @@ export function tryNodeResolve( // files actually inside node_modules so that locally linked packages // in monorepos are not cached this way. if (resolved.includes('node_modules')) { - resolved = injectQuery(resolved, `v=${pkg.data.version}`) + const versionHash = server?.optimizeDepsMetadata?.hash + if (versionHash) { + resolved = injectQuery(resolved, `v=${versionHash}`) + } } return { id: resolved } }