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

modify frameworkreference guidance #944

Merged
merged 3 commits into from
Jul 30, 2021
Merged
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 10 additions & 2 deletions docs/versioning.md
Original file line number Diff line number Diff line change
Expand Up @@ -114,8 +114,16 @@ For CsWinRT NuGet prereleases between any .NET servicing or feature releases, *\

2. **[Diamond Dependency]**: An application is built using multiple components, for example WinUI and a library named *SimpleMath*. The WinUI library is built with .NET 5.0.100 while the *SimpleMath* library is built with .NET 5.0.200. In this scenario, there is an `AssemblyVersion` update in .NET 5.0.200. The application developer must upgrade to the latest version of the .NET SDK for any of its dependencies, in this case .NET 5.0.200. The warnings and errors encountered are manifested in the same manner as in Scenario #1.

3. **[Framework Reference Preview Override]**: An application developer runs into a blocking bug with the Windows SDK projections in the latest CsWinRT release. To address this issue, Microsoft releases a preview Windows SDK projection package that the developer can use by adding an override in their project file, for example as follows. This would be a temporary workaround for the developer that should be removed when there is a .NET SDK update.

3. **[Windows SDK package override]**: An application developer runs into a blocking bug with the Windows SDK projections in the latest CsWinRT release. To address this issue, Microsoft releases a preview Windows SDK projection package that the developer can use by adding an override in their project file. This would be a temporary workaround for the developer that should be removed when there is a .NET SDK update.

Starting in .NET SDK 5.0.302 and .NET SDK 5.0.205 or later, developers can use `WindowsSdkPackageVersion` to override their Windows SDK package version, as shown below. `FrameworkReference` is no longer supported in these versions of the .NET SDK.
```xml
<PropertyGroup>
<WindowsSdkPackageVersion>10.0.19041.18</WindowsSdkPackageVersion>
</PropertyGroup>
```

For earlier versions of the .NET SDK, developers can override the Windows SDK package with a `FrameworkReference` override:
```xml
<ItemGroup>
<FrameworkReference Update="Microsoft.Windows.SDK.NET.Ref" RuntimeFrameworkVersion="10.0.18362.11-preview" />
Expand Down