Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(windows)!: change WindowsTargetPlatformVersion to 10.0 / drop arm32 / drop rnw < 0.63 #603

Merged
merged 2 commits into from Jun 3, 2022

Conversation

namrog84
Copy link
Contributor

@namrog84 namrog84 commented Jun 1, 2022

Overview

Changed to general version for WindowsTargetPlatformVersion

Using an explicit version of WindowsTargetPlatformVersion requires that specific windows SDK version to be installed on the machine.
In Visual Studio 2017 (version 15 or build tools 141) and earlier it was required but as of Visual Studio 2019 (v16 or v142) and Visual Studio 2022(v17 or v143) you can simply specify "10.0". This allows a lot more flexibility to the developer or build machine as there is a growing number of different windows 10 SDK out there now.

Test Plan

You can now install/run on machines without needing as specific of a windows 10.0 version (think of this as saying using the latest version of windows 10 sdk you have installed, so long as it meets the WindowsTargetPlatformMinVersion.

Newer versions of azure hosted windows images have a different subset.

VS2022 Azure Window image has
10.0.17763.0, 10.0.19041.0, 10.0.20348.0, 10.0.22000.0
VS2019 Azure Window image had
10.0.14393.0, 10.0.16299.0, 10.0.17134.0, 10.0.17763.0, 10.0.18362.0, 10.0.19041.0, 10.0.20348.0, 10.0.22000.0

@namrog84 namrog84 requested a review from matt-oakes as a code owner June 1, 2022 06:12
Copy link
Contributor

@mikehardy mikehardy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

excellent!

same question here as I have on related device-info PR and would just copy/paste the change notice, I'll accept an answer over there as applying to both here and manage the release(s)

@namrog84
Copy link
Contributor Author

namrog84 commented Jun 1, 2022

Just because url/links can die, copy pasting answer here too.

Am I correct in interpreting that this will actually break people that are using old tools?

That is correct this is technically a breaking change for people using old MSVC build tools that come with Visual Studio 2017 or Visual Studio 2015. It is non breaking for build tools that come with Visual Studio 2019 or 2022. Assuming other things don't break in RNW

Though to be super specific, it technically isn't Visual Studio that is breaking change but the underlying MSVC build tools that comes bundled with each of those visual studio versions (e.g. Visual Studio 2022 comes with MSVC v143), and it is possible to install older build tools with newer visual studio during 'transitional' periods.

I think it's fair to say most people doing react-native-windows related work should be on at least VS2019 (MSVC v142) as that's what RNW has been using/recommending for a number of years now. And VS2022 has been out for almost a year too.

BREAKING CHANGE: If you are using react-native-windows, and you have Visual Studio versions older than Visual Studio 2019 or using build tools older than MSVC v142, you must upgrade Visual Studio and/or your build tools to use at least MSVC v142 (Visual Studio 2019). No one else is affected.

@namrog84
Copy link
Contributor Author

namrog84 commented Jun 2, 2022

FYI now that the other one landed, I'll make a few other changes here too before too then.

@mikehardy
Copy link
Contributor

Great - honestly it's almost scary, on device-info it semantically releases just on the commit alone. Always nervous I got the commit message right, but I did that time...

Copy link
Contributor

@mikehardy mikehardy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good riddance to all of that non-auto-linking cruft!
Looks great, I'll make sure it goes through CI and squash it with the right (I hope...) commit message

@mikehardy mikehardy added the pending merge A PR that will be merged shortly, waiting for CI or final comment label Jun 3, 2022
@mikehardy mikehardy changed the title Change WindowsTargetPlatformVersion to 10.0 fix(windows)!: change WindowsTargetPlatformVersion to 10.0 / drop arm32 / drop rnw < 0.63 Jun 3, 2022
@mikehardy mikehardy merged commit 16d6568 into react-native-netinfo:master Jun 3, 2022
github-actions bot pushed a commit that referenced this pull request Jun 3, 2022
# [9.0.0](v8.3.1...v9.0.0) (2022-06-03)

* fix(windows)!: change WindowsTargetPlatformVersion to 10.0 / drop arm32 / drop rnw < 0.63 (#603) ([16d6568](16d6568)), closes [#603](#603)

### BREAKING CHANGES

* needs react-native-windows 0.63+ and MSVC build tools v142+ (Visual Studio 2019+), drop arm32
@matt-oakes
Copy link
Collaborator

🎉 This PR is included in version 9.0.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@mikehardy
Copy link
Contributor

💥 done

@mikehardy mikehardy removed the pending merge A PR that will be merged shortly, waiting for CI or final comment label Nov 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants