From 7ff99efd4cc2fabac17e1c9e4d6af186cd66e51c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnaud=20Barr=C3=A9?= Date: Wed, 29 Mar 2023 02:21:31 +0200 Subject: [PATCH 1/2] perf(resolve): skip for virtual files --- packages/vite/src/node/plugins/resolve.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/packages/vite/src/node/plugins/resolve.ts b/packages/vite/src/node/plugins/resolve.ts index 730035386f03ea..8ce8de3ccdd450 100644 --- a/packages/vite/src/node/plugins/resolve.ts +++ b/packages/vite/src/node/plugins/resolve.ts @@ -142,6 +142,19 @@ export function resolvePlugin(resolveOptions: InternalResolveOptions): Plugin { name: 'vite:resolve', async resolveId(id, importer, resolveOpts) { + if ( + id[0] === '\0' || + id.startsWith('virtual:') || + // When injected directly in html/client code + id.startsWith('/virtual:') || + // This virtual file from the React plugin is hardcoded in integrations + // like Ruby & Laravel so adding this instead of migrating both React + // plugins to use /virtual: + id === '/@react-refresh' + ) { + return + } + const ssr = resolveOpts?.ssr === true // We need to delay depsOptimizer until here instead of passing it as an option From 461586db559aa2cc06022ef6ae707402d605201f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnaud=20Barr=C3=A9?= Date: Wed, 29 Mar 2023 18:18:48 +0200 Subject: [PATCH 2/2] remove @react-refresh --- packages/vite/src/node/plugins/resolve.ts | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/packages/vite/src/node/plugins/resolve.ts b/packages/vite/src/node/plugins/resolve.ts index 8ce8de3ccdd450..7a85aa84b24426 100644 --- a/packages/vite/src/node/plugins/resolve.ts +++ b/packages/vite/src/node/plugins/resolve.ts @@ -146,11 +146,7 @@ export function resolvePlugin(resolveOptions: InternalResolveOptions): Plugin { id[0] === '\0' || id.startsWith('virtual:') || // When injected directly in html/client code - id.startsWith('/virtual:') || - // This virtual file from the React plugin is hardcoded in integrations - // like Ruby & Laravel so adding this instead of migrating both React - // plugins to use /virtual: - id === '/@react-refresh' + id.startsWith('/virtual:') ) { return }