From 09bf75e9720aa41111612e7904baed9a5cd2c071 Mon Sep 17 00:00:00 2001 From: Tommy Nguyen <4123478+tido64@users.noreply.github.com> Date: Wed, 28 Jan 2026 14:36:55 +0100 Subject: [PATCH 1/2] fix(windows): do not enable NuGet by default when New Arch is --- packages/app/windows/Win32/ReactApp.vcxproj | 16 +++++++++------- packages/app/windows/app.mjs | 3 ++- packages/app/windows/project.mjs | 2 +- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/packages/app/windows/Win32/ReactApp.vcxproj b/packages/app/windows/Win32/ReactApp.vcxproj index 5cdc7cfd5..b6dc81048 100644 --- a/packages/app/windows/Win32/ReactApp.vcxproj +++ b/packages/app/windows/Win32/ReactApp.vcxproj @@ -13,6 +13,7 @@ false + $([MSBuild]::GetDirectoryNameOfFileAbove($(SolutionDir), 'app.json')) $([MSBuild]::GetDirectoryNameOfFileAbove($(SolutionDir), 'node_modules\react-native-test-app\package.json'))\node_modules\react-native-test-app\windows $(ReactAppWinDir)\Shared $(ReactAppWinDir)\Win32 @@ -78,6 +79,14 @@ true %(AdditionalOptions) /bigobj + + $(ReactAppWin32Dir); + $(ReactAppSharedDir); + $(ReactAppGeneratedDir); + %(AdditionalIncludeDirectories) + + ENABLE_SINGLE_APP_MODE=0;REACT_NATIVE_VERSION=1000000000;USE_FABRIC=1;%(PreprocessorDefinitions) + stdcpp20 shell32.lib;user32.lib;windowsapp.lib;%(AdditionalDependenices) @@ -95,13 +104,6 @@ NDEBUG;%(PreprocessorDefinitions) - - - stdcpp20 - ENABLE_SINGLE_APP_MODE=0;REACT_NATIVE_VERSION=1000000000;USE_FABRIC=1;%(PreprocessorDefinitions) - $(ReactAppWin32Dir);$(ReactAppSharedDir);$(ReactAppGeneratedDir);%(AdditionalIncludeDirectories) - - diff --git a/packages/app/windows/app.mjs b/packages/app/windows/app.mjs index 65344dc26..d1230de77 100755 --- a/packages/app/windows/app.mjs +++ b/packages/app/windows/app.mjs @@ -216,6 +216,7 @@ export async function generateSolution(destPath, options, fs = nodefs) { ...templateView, name: path.basename(projectFileName, path.extname(projectFileName)), useExperimentalNuget: info.useExperimentalNuGet, + useNuGets: info.useExperimentalNuGet, rnwPathFromProjectRoot: path.relative( path.dirname(projectManifest), rnWindowsPath @@ -228,7 +229,6 @@ export async function generateSolution(destPath, options, fs = nodefs) { /"\.\.\\node_modules\\react-native-windows\\/g, `"${path.relative(destPath, rnWindowsPath)}\\` ) - .replace("ReactApp\\ReactApp.vcxproj", vcxprojLocalPath) // Win32 .replace( "ReactApp.Package\\ReactApp.Package.wapproj", // Win32 vcxprojLocalPath.replace( @@ -236,6 +236,7 @@ export async function generateSolution(destPath, options, fs = nodefs) { "ReactApp.Package.wapproj" ) ) + .replace("ReactApp\\ReactApp.vcxproj", vcxprojLocalPath) // Win32 .replace("ReactTestApp\\ReactTestApp.vcxproj", vcxprojLocalPath) // UWP .replace( /EndProject\r?\nGlobal/, diff --git a/packages/app/windows/project.mjs b/packages/app/windows/project.mjs index 63d8dc3e7..b61f94478 100644 --- a/packages/app/windows/project.mjs +++ b/packages/app/windows/project.mjs @@ -421,7 +421,7 @@ export async function projectInfo( versionNumber, bundle: getBundleResources(findNearest("app.json", destPath, fs), fs), nugetDependencies: await getNuGetDependencies(rnWindowsPath), - useExperimentalNuGet: newArch || useNuGet, + useExperimentalNuGet: useNuGet, useFabric: newArch, }; } From ba9b60728580b09776825ee6440a66a167a52ce4 Mon Sep 17 00:00:00 2001 From: Tommy Nguyen <4123478+tido64@users.noreply.github.com> Date: Wed, 28 Jan 2026 16:00:18 +0100 Subject: [PATCH 2/2] fixup! fix(windows): do not enable NuGet by default when New Arch is --- packages/app/ios/ReactTestApp/ReactInstance.swift | 2 +- packages/app/ios/ReactTestApp/Session.swift | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/app/ios/ReactTestApp/ReactInstance.swift b/packages/app/ios/ReactTestApp/ReactInstance.swift index caba18a7d..d5c506cbb 100644 --- a/packages/app/ios/ReactTestApp/ReactInstance.swift +++ b/packages/app/ios/ReactTestApp/ReactInstance.swift @@ -155,7 +155,7 @@ final class ReactInstance: NSObject, RNXHostConfig { #if swift(>=5.9) #if os(visionOS) - // Fallback to iOS extensions if visionOS is not present + /// Fallback to iOS extensions if visionOS is not present let extensions = [".visionos", ".ios", ".mobile", ".native", ""] #elseif os(iOS) let extensions = [".ios", ".mobile", ".native", ""] diff --git a/packages/app/ios/ReactTestApp/Session.swift b/packages/app/ios/ReactTestApp/Session.swift index 6de6da799..dc907cd38 100644 --- a/packages/app/ios/ReactTestApp/Session.swift +++ b/packages/app/ios/ReactTestApp/Session.swift @@ -1,10 +1,10 @@ import Foundation -/// `UserDefaults` can be misused for fingerprinting and developers are now -/// required to provide a reason for using it. This was announced at WWDC 2023 -/// (see https://developer.apple.com/videos/play/wwdc2023/10060/?time=457). By -/// excluding unused modules when in single app mode, we also conveniently -/// remove all uses of it. +// `UserDefaults` can be misused for fingerprinting and developers are now +// required to provide a reason for using it. This was announced at WWDC 2023 +// (see https://developer.apple.com/videos/play/wwdc2023/10060/?time=457). By +// excluding unused modules when in single app mode, we also conveniently +// remove all uses of it. #if !ENABLE_SINGLE_APP_MODE enum Session {