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

Identify more places to apply [SupportedOSPlatform] and [UnsupportedOSPlatform] attributes for existing platforms #44916

Closed
jeffhandley opened this issue Nov 19, 2020 · 3 comments
Assignees
Labels
area-Meta Cost:M Work that requires one engineer up to 2 weeks Priority:1 Work that is critical for the release, but we could probably ship without
Milestone

Comments

@jeffhandley
Copy link
Member

In .NET 5.0, we annotated APIs that were known to be supported only on Windows, as well as APIs unsupported on Browser. As we expand our platforms in .NET 6.0, we need to review our APIs to identify more places to apply the [SupportedOSPlatform] and [UnsupportedOSPlatform] attributes as needed for our existing platforms, allowing the Platform Compatibility Analyzer to identify usage of these APIs on unsupported platforms.

This additional pass over applying attributes could result in annotating APIs that are either specific to or unsupported on Windows, Linux, and Browser. We can partner with the WinRT team for annotating more Windows-specific APIs, and we can also apply attributes across the Microsoft.Extensions libraries if/where appropriate.

@jeffhandley jeffhandley added this to the 6.0.0 milestone Nov 19, 2020
@Dotnet-GitSync-Bot Dotnet-GitSync-Bot added the untriaged New issue has not been triaged by the area owner label Nov 19, 2020
@jeffhandley jeffhandley removed the untriaged New issue has not been triaged by the area owner label Nov 19, 2020
@jeffhandley jeffhandley added the Priority:1 Work that is critical for the release, but we could probably ship without label Nov 19, 2020
@jeffhandley
Copy link
Member Author

For this, we can start by searching for PlatformNotSupportedException across the codebase (there are around 4000 instances), and then categorize the instances into different patterns. From there, we can decide the the action to take on each category. We could then assign out child issues of this story to all area owners that need to apply annotations within their areas.

@jeffhandley
Copy link
Member Author

Here's a related issue that we need to take into account with this issue: #49479

@buyaa-n
Copy link
Contributor

buyaa-n commented Aug 12, 2021

For this, we can start by searching for PlatformNotSupportedException across the codebase (there are around 4000 instances), and then categorize the instances into different patterns. From there, we can decide the action to take on each category. We could then assign out child issues of this story to all area owners that need to apply annotations within their areas.

As part of #47228 analyzing PlatformNotSupportedException across the codebase is done and filed issues for each area, most of the issues have been resolved/annotated, very few moved to 7.0.

Not sure what else we planned to do further in 6.0 @jeffhandley @GrabYourPitchforks

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-Meta Cost:M Work that requires one engineer up to 2 weeks Priority:1 Work that is critical for the release, but we could probably ship without
Projects
No open projects
Development

No branches or pull requests

4 participants