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

Angzhang/breakingchange #455

Merged
merged 13 commits into from
Oct 7, 2020
Merged

Angzhang/breakingchange #455

merged 13 commits into from
Oct 7, 2020

Conversation

angelazhangmsft
Copy link
Contributor

list of breaking changes for RC2, linked from the readme Developer Guidance section

README.md Outdated Show resolved Hide resolved
@@ -0,0 +1,15 @@
# Breaking Changes for C#/WinRT in RC2
Copy link
Member

Choose a reason for hiding this comment

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

Did you want to mention the 'add' event accessor changing return type as well? (from EventRegistrationToken to void)

@Scottj1s
Copy link
Member

Scottj1s commented Oct 5, 2020

@stevenbrix Anything to add, since you've been deep in the weeds on this stuff - main concern is message out the function pointer syntax change coordination (roslyn compiler etc - do we have that right?)

@stevenbrix
Copy link
Contributor

Overall it looks good. I'm not quite sure who the audience is, but would it be worth mentioning that the latest cswinrt+.net isn't compatible with WinUI Preview 2?

<PackageReference Include="Microsoft.Net.Compilers.Toolset" Version="3.8.0-4.20472.6"
```

5. Because of strong-name signing, you cannot combine pre-RC2 and post-RC2 projection assemblies. For example, with WinUI and the Windows SDK, both would need to move up to the latest (RC2) version together.
Copy link
Member

Choose a reason for hiding this comment

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

The latest version of C#/WinRT, supporting .NET 5 RC2, has added strong-name signing to the runtime assembly, winrt.runtime.dll. Assemblies built with the previous version of winrt.runtime.dll are not compatible with this change.
This includes Microsoft.Windows.SDK.Net.dll (the Windows SDK), Microsoft.WinUI.dll (WinUI), and any other C#/WinRT projection assemblies. Builds that combine pre-RC2 and post-RC2 projection assemblies may fail with a CS0012, and mention of a missing reference to an assembly with PublicIKeyToken=null. This indicates an older assembly without strong name signing. The solution is to update all dependencies to their .NET 5 RC2 versions.

@Scottj1s Scottj1s merged commit cb6b649 into master Oct 7, 2020
@Scottj1s Scottj1s deleted the angzhang/breakingchange branch October 7, 2020 23:30
@angelazhangmsft angelazhangmsft linked an issue Oct 9, 2020 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Evaluate source compatibility for existing C# WinRT apps
3 participants