From c034f4a2db3b63415d109be4ed59b285845a015c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B0=95=EB=8F=99=EC=9C=A4=20=28Donny=29?= Date: Wed, 5 Feb 2025 17:08:28 +0900 Subject: [PATCH 1/4] Do not run react compioler for files in node modules --- packages/next/src/build/babel/loader/get-config.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/next/src/build/babel/loader/get-config.ts b/packages/next/src/build/babel/loader/get-config.ts index 186ce06f42d17..14a4b8b5da33e 100644 --- a/packages/next/src/build/babel/loader/get-config.ts +++ b/packages/next/src/build/babel/loader/get-config.ts @@ -273,6 +273,10 @@ function getFreshConfig( return false } + if (filename.includes('node_modules')) { + return false + } + if ( loaderOptions.reactCompilerExclude && loaderOptions.reactCompilerExclude(filename) From d302a5df86dbd0790c7a6213db9a65514828c501 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B0=95=EB=8F=99=EC=9C=A4=20=28Donny=29?= Date: Wed, 5 Feb 2025 17:38:58 +0900 Subject: [PATCH 2/4] Disable babel if not required --- packages/next/src/build/babel/loader/get-config.ts | 7 +++++++ packages/next/src/build/babel/loader/transform.ts | 3 +++ 2 files changed, 10 insertions(+) diff --git a/packages/next/src/build/babel/loader/get-config.ts b/packages/next/src/build/babel/loader/get-config.ts index 14a4b8b5da33e..9180ada20add3 100644 --- a/packages/next/src/build/babel/loader/get-config.ts +++ b/packages/next/src/build/babel/loader/get-config.ts @@ -329,6 +329,10 @@ function getFreshConfig( } if (loaderOptions.transformMode === 'standalone') { + if (!reactCompilerPluginsIfEnabled.length) { + return null + } + options.plugins = [jsx, ...reactCompilerPluginsIfEnabled] options.presets = [ [ @@ -462,6 +466,9 @@ export default function getConfig( const cacheKey = getCacheKey(cacheCharacteristics) if (configCache.has(cacheKey)) { const cachedConfig = configCache.get(cacheKey) + if (!cachedConfig) { + return null + } return { ...cachedConfig, diff --git a/packages/next/src/build/babel/loader/transform.ts b/packages/next/src/build/babel/loader/transform.ts index 8357313bb943c..f76debc32b296 100644 --- a/packages/next/src/build/babel/loader/transform.ts +++ b/packages/next/src/build/babel/loader/transform.ts @@ -86,6 +86,9 @@ export default function transform( target, filename, }) + if (!babelConfig) { + return { code: source, map: inputSourceMap } + } getConfigSpan.stop() const normalizeSpan = parentSpan.traceChild('babel-turbo-normalize-file') From df5c622580cf6e2eadc04f23efad78aca532f967 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B0=95=EB=8F=99=EC=9C=A4=20=28Donny=29?= Date: Wed, 5 Feb 2025 18:13:04 +0900 Subject: [PATCH 3/4] review --- packages/next/src/build/babel/loader/get-config.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/next/src/build/babel/loader/get-config.ts b/packages/next/src/build/babel/loader/get-config.ts index 9180ada20add3..77ba73f2aa668 100644 --- a/packages/next/src/build/babel/loader/get-config.ts +++ b/packages/next/src/build/babel/loader/get-config.ts @@ -273,7 +273,10 @@ function getFreshConfig( return false } - if (filename.includes('node_modules')) { + if ( + filename.includes('/node_modules/') || + filename.includes('\\node_modules\\') + ) { return false } From 7e211640fc37448ada18bcb69a16c03ee082cdeb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B0=95=EB=8F=99=EC=9C=A4=20=28Donny=29?= Date: Wed, 12 Feb 2025 16:08:49 +0900 Subject: [PATCH 4/4] regex --- packages/next/src/build/babel/loader/get-config.ts | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/next/src/build/babel/loader/get-config.ts b/packages/next/src/build/babel/loader/get-config.ts index 77ba73f2aa668..c4a8566ac5da9 100644 --- a/packages/next/src/build/babel/loader/get-config.ts +++ b/packages/next/src/build/babel/loader/get-config.ts @@ -273,10 +273,7 @@ function getFreshConfig( return false } - if ( - filename.includes('/node_modules/') || - filename.includes('\\node_modules\\') - ) { + if (/[/\\]node_modules[/\\]/.test(filename)) { return false }