You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Many APIs are being obsoleted in .NET 5. During the PR review for marking those obsoletions, the question was raised for whether or not we should apply the obsoletions to OOB packages with downlevel targets such as netstandard2.0 and netcoreapp2.0.
Decide if we want to apply a downlevel [Obsolete] attribute without the DiagnosticId/UrlFormat properties, apply an [Obsolete] attribute without those properties (triggering CS0618), or implement compiler support for internally-defined System.Obsolete attributes with the new properties.
The text was updated successfully, but these errors were encountered:
Extract the list of downlevel-targeted APIs from the obsoletions in .NET 5
This is specifically referring to APIs we actively ship from dotnet/runtime in nuget packages that have downlevel assets? I'd expect the list of obsoletions there to be very small (or empty?). Do you have some examples?
As part of #51721, I reviewed the APIs that were conditionally obsoleted only in net5.0+, and the set was limited to System.Security.Permissions and System.Reflection.MetadataLoadContext. The value of obsoleting these down-level is low and it would introduce possible breaking changes upstack. Those obsoletions will not be applied down-level.
With #51595 though, the obsoletion documentation now makes it clearer and easier to obsolete APIs down-level going forward.
Many APIs are being obsoleted in .NET 5. During the PR review for marking those obsoletions, the question was raised for whether or not we should apply the obsoletions to OOB packages with downlevel targets such as netstandard2.0 and netcoreapp2.0.
This was an explicit non-goal of better obsoletions, but it's worth further consideration.
If we determine that we should indeed apply the obsoletions to downlevel targets, then we would need to:
[Obsolete]
attribute without theDiagnosticId
/UrlFormat
properties, apply an[Obsolete]
attribute without those properties (triggeringCS0618
), or implement compiler support for internally-definedSystem.Obsolete
attributes with the new properties.The text was updated successfully, but these errors were encountered: