This PR backports #12313 to 0.71.
## Description
This PR enables the `/PROFILE` linker flag so binaries are [vulcan ready](https://eng.ms/docs/products/apiscan/howto/preparinginput/binaries/creating_vulcan_ready_files), and will therefore pass internal compliance requirements.
### Type of Change
- Bug fix (non-breaking change which fixes an issue)
### Why
To pass APIScan.
### What
Added `<Link><Profile>true</Profile><Link>` to `Release.props`.
## Screenshots
N/A
## Testing
N/A
## Changelog
Should this change be included in the release notes: yes
Enabled the `/PROFILE` linker flag for all C++ release binaries
* Implement WebSocketTurboModuleProxy (#12214)
* Implement WebSocketTurboModuleProxy
* Change files
* Define common constant for proxy ID name
* Define common constant for shared state ID name
* Define common constant for content handler ID name
* clang format
* Remove change file
* Change files
* Have RCTNetworking.win32 fork RCTNetworking.ios (#12199)
* Have RCTNetworking.win32 fork RCTNetworking.ios
* Copy contents from windows to win32
* Change files
* Drop overrides newline setting to parent
* Make RCTNetworking.win32 a copy of iOS variant
* Correct iOS variant location
* Change files
* Revert "[0.71] Update V8 JSI version to 0.71.8 (#12043)"
This reverts commit dcb75bb137.
* Revert "[0.71] ABI-safe Hermes API and new JSI for Node-API (#11696) (#12033)"
This reverts commit fbed06a9b2.
* Change files
This PR backports #12139 to 0.71.
It seems the Policheck tasks no longer accept blanket "exclusions" in our rules database for terms we use everywhere. So I've gone and updated the individual "file exceptions" for those terms in our database.
It's harder to maintain, but this should unblock PRs.
- Bug fix (non-breaking change which fixes an issue)
Compliance.
Updated rules database.
N/A
N/A
Should this change be included in the release notes: no
* [Win32] Webpack assets do not prefix paths with /, which causes a lost char in asset path (#12119)
* Webpack assets do not prefix paths with /, which causes a lost char in asset path
* Change files
* lint:fix
* fix change file
* Skip networking Cxx modules if turbo modules are requested (#12083)
* Conditionally register Blob TurboModule
* Skip networking Cxx modules if UseWindowsAbi is set
* Change files
* Also skip FileReader module where appropriate
* Replace UseWindowsAbi with OmitNetworkingCxxModules
* Define DevSettings::omitNetworkingCxxModules
* Also omit the HTTP module if Blob.DisableModule is set
* Remove change files
* Change files
This PR backports #11816 to 0.71.
BinSkim has been throwing warnings for Desktop ever since the upgrade to BinSkim@4. Particularly this is from scanning the Hermes and V8 dlls.
However both are sourced from their own Microsoft-owned repos and only consumed here via published NuGets. BinSkim should be running on those repos (if required) not here in RNW.
This PR updates the pipeline to only test the binaries built by this pipeline.
This PR backports PRs #11548 and #11855 to 0.71.
# Fix Secure Supply Chain compliance issues (#11548)
## Description
Resolves Secure Supply Chain warnings.
### Type of Change
- Bug fix (non-breaking change which fixes an issue)
### Why
To meet compliance requirements.
Closes https://github.com/microsoft/react-native-windows/issues/11209
Closes https://github.com/microsoft/react-native-windows/issues/10374
### What
* Removed invalid `nuget.config` configurations
* Removed unnecessary `.npmrc` files
* Temporarily left nuget.org feed in config (tracking: https://github.com/microsoft/react-native-windows/issues/11557)
## Screenshots
N/A
## Testing
N/A
# CG: Move to single nuget source (#11855)
## Description
CG is failing builds due to multiple nuget feeds in nuget.config.
### Why
What is the motivation for this change? Add a few sentences describing the context and overall goals of the pull request's commits.
Resolves#11557
* [Win32] Reduce usage of long paths in assets which can cause long path issues (#11839)
* Add saveAssetPlugin to fix long path assets
* Change files
* comment
* add back compat
* fix
* turn off win32 assetPlugin for now
* fix
* fix
* fix
* Change files
* fix
* fix
* Make ScrollView and ActivityIndicator not focusable by default
* Change files
Co-authored-by: Andrew Coates <30809111+acoates-ms@users.noreply.github.com>
Co-authored-by: Chiara Mooney <34109996+chiaramooney@users.noreply.github.com>