Skip to content

Commit

Permalink
[0.74] Bump minimum VS version to 17.11.0 (#13583)
Browse files Browse the repository at this point in the history
This PR backports #13455 to 0.74.

## Description

This PR bumps the minimum version of VS that RNW expects to 17.11.0.

### Type of Change
- Bug fix (non-breaking change which fixes an issue)

### Why
To make sure users don't use the regressed builds of VS 2022.

Resolves #13339
Resolves #13374

### What
Bumped VS version checks for `run-windows` and `rnw-dependencies.ps1`. Updated ADO image to reflect updated images are no longer locked to VS v17.9.4.

## Screenshots
N/A

## Testing
`run-windows` now works with 17.11.0.

## Changelog
Should this change be included in the release notes: _yes_

Require Visual Studio 2022 >= v17.11.0
  • Loading branch information
jonthysell committed Aug 16, 2024
1 parent 1ad3123 commit 468cc10
Show file tree
Hide file tree
Showing 14 changed files with 28 additions and 12 deletions.
2 changes: 1 addition & 1 deletion .ado/jobs/desktop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ jobs:
(FullyQualifiedName!~PreparedJavaScriptSourceTest)
pool: ${{ parameters.AgentPool.Medium }}
timeoutInMinutes: 60 # how long to run the job before automatically cancelling
timeoutInMinutes: 80 # how long to run the job before automatically cancelling - Issue 13442
cancelTimeoutInMinutes: 5 # how much time to give 'run always even if cancelled tasks' before killing them

steps:
Expand Down
3 changes: 2 additions & 1 deletion .ado/templates/react-native-init-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,8 @@ steps:
displayName: Create bundle testcli
workingDirectory: $(Agent.BuildDirectory)\testcli

- ${{ if eq(parameters.runWack, true) }}:
# Temporarily disabling due to spurious failures in CI, see https://github.com/microsoft/react-native-windows/issues/13578
- ${{ if and(false, eq(parameters.runWack, true)) }}:
- template: ../templates/run-wack.yml
parameters:
packageName: ReactNative.InitTest
Expand Down
3 changes: 2 additions & 1 deletion .ado/templates/react-native-init.yml
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,8 @@ steps:
displayName: Create bundle testcli
workingDirectory: $(Agent.BuildDirectory)\testcli

- ${{ if eq(parameters.runWack, true) }}:
# Temporarily disabling due to spurious failures in CI, see https://github.com/microsoft/react-native-windows/issues/13578
- ${{ if and(false, eq(parameters.runWack, true)) }}:
- template: ../templates/run-wack.yml
parameters:
packageName: ReactNative.InitTest
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "patch",
"comment": "[0.74] Bump minimum VS version to 17.11.0",
"packageName": "@react-native-windows/cli",
"email": "jthysell@microsoft.com",
"dependentChangeType": "patch"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "patch",
"comment": "[0.74] Bump minimum VS version to 17.11.0",
"packageName": "react-native-windows",
"email": "jthysell@microsoft.com",
"dependentChangeType": "patch"
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ export const HealthCheckList = [
[true, 'WindowsVersion', 'Windows version >= 10.0.17763.0'],
[true, 'DeveloperMode', 'Developer mode is on'],
[true, 'LongPath', 'Long path support is enabled'],
[true, 'VSUWP', 'Visual Studio 2022 (>= 17.9) & req. components'],
[true, 'VSUWP', 'Visual Studio 2022 (>= 17.11.0) & req. components'],
[true, 'Node', 'Node.js (LTS, >= 18.0)'],
[true, 'Yarn', 'Yarn'],
[true, 'DotNetCore', '.NET SDK (LTS, = 6.0)'],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -203,7 +203,7 @@ export default class MSBuildTools {
const minVersion =
process.env.MinimumVisualStudioVersion ||
process.env.VisualStudioVersion ||
'17.0';
'17.11.0';
const vsInstallation = findLatestVsInstall({
requires,
minVersion,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@
<JsBundleEntry Include="..\Microsoft.ReactNative.IntegrationTests\ReactNativeHostTests.js" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn" Version="1.8.1" />
<PackageReference Include="Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn" Version="1.8.1.7" />
<PackageReference Include="Microsoft.Windows.CppWinRT" Version="$(CppWinRTVersion)" PrivateAssets="all" />
<PackageReference Include="$(V8PackageName)" Version="$(V8Version)" Condition="'$(UseV8)' == 'true'" />
</ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -227,7 +227,7 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn" Version="1.8.1" />
<PackageReference Include="Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn" Version="1.8.1.7" />
<PackageReference Include="Microsoft.Windows.CppWinRT" Version="$(CppWinRTVersion)" PrivateAssets="all" />
<PackageReference Include="boost" Version="1.83.0.0" />
</ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,7 @@
<Midl Include="$(ReactNativeWindowsDir)Microsoft.ReactNative\RedBoxHandler.idl" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn" Version="1.8.1.4" />
<PackageReference Include="Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn" Version="1.8.1.7" />
<PackageReference Include="Microsoft.Windows.CppWinRT" Version="$(CppWinRTVersion)" PrivateAssets="all" />
<PackageReference Include="$(V8PackageName)" Version="$(V8Version)" Condition="'$(UseV8)' == 'true'" />
</ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,7 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="boost" Version="1.83.0.0" />
<PackageReference Include="Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn" Version="1.8.1" />
<PackageReference Include="Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn" Version="1.8.1.7" />
<PackageReference Include="Microsoft.VCRTForwarders.140" Version="1.0.6" />
<PackageReference Include="Microsoft.Windows.CppWinRT" Version="$(CppWinRTVersion)" PrivateAssets="all" />
<PackageReference Include="$(V8PackageName)" Version="$(V8Version)" Condition="'$(UseV8)' == 'true'" />
Expand Down
2 changes: 1 addition & 1 deletion vnext/Mso.UnitTests/Mso.UnitTests.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@
<None Include="future\futureTest.tt" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn" Version="1.8.1" />
<PackageReference Include="Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn" Version="1.8.1.7" />
<PackageReference Include="Microsoft.Windows.CppWinRT" Version="$(CppWinRTVersion)" PrivateAssets="all" />
</ItemGroup>
<ItemGroup Condition=" '$(UseFabric)' == 'true' AND '$(UseWinUI3)' == 'true' ">
Expand Down
2 changes: 1 addition & 1 deletion vnext/ReactCommon.UnitTests/ReactCommon.UnitTests.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@
</ItemDefinitionGroup>
<ItemGroup>
<PackageReference Include="boost" Version="1.83.0.0" />
<PackageReference Include="Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn" Version="1.8.1.4" />
<PackageReference Include="Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn" Version="1.8.1.7" />
<PackageReference Include="$(V8PackageName)" Version="$(V8Version)" Condition="'$(UseV8)' == 'true'" />
</ItemGroup>
</Project>
2 changes: 1 addition & 1 deletion vnext/Scripts/rnw-dependencies.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ $vsAll = ($vsComponents + $vsWorkloads);

# The minimum VS version to check for
# Note: For install to work, whatever min version you specify here must be met by the current package available on winget.
$vsver = "17.9";
$vsver = "17.11.0";

# The exact .NET SDK version to check for
$dotnetver = "6.0";
Expand Down

0 comments on commit 468cc10

Please sign in to comment.