CsWinRT
CsWinRT copied to clipboard
Address and improve light-up scenarios for Windows APIs
Background
With the new TFMs in .NET 5 and removal of winmd support, we need to clarify the story for light-up scenarios and how we advise both library and app developers to write adaptive code. The scenarios involve C# libraries and apps in .NET 5+ that want to call Windows SDK projection APIs (WinRT APIs).
We are proposing adding an analyzer for ApiInformation checks to protect light-up code.
We can use this deliverable-sized issue to track light-up support work.
- #718
- #678
Open Questions
- .NET 5 library authors want to light-up with WinRT APIs, but this imposes a TFM requirement on customers (referencing applications)
- Improve integration of ApiInformation checks with projected SupportedOSPlatform attributes from C#/WinRT, and improve guidance on using ApiInformation checks
- Project SupportedOSPlatform attributes downlevel, e.g. Windows 8
- Clarify combinations of the TFM, SupportedOSPlatformVersion, TPV/TPMV
- Integration with Windows App SDK APIs