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 {