Skip to content

Rename MinimumOSPlatformAttribute and RemovedInOSPlatformAttribute #40360

@terrajobst

Description

@terrajobst

In #39989 (comment) we decided to rename these attributes in order to unify platform-specific attribution with marking platforms as unsupported. Please coordinate this change with @wli3 because he'll have to submit a follow up to his PR.

 namespace System.Runtime.Versioning
 {
     public abstract class OSPlatformAttribute : Attribute
     {
         private protected OSPlatformAttribute(string platformName);
         public string PlatformName { get; }
     }
 
     [AttributeUsage(AttributeTargets.Assembly,
                     AllowMultiple=false, Inherited=false)]
     public sealed class TargetPlatformAttribute : OSPlatformAttribute
     {
         public TargetPlatformAttribute(string platformName);
     }
 
     [AttributeUsage(AttributeTargets.Assembly |
                     AttributeTargets.Class |
                     AttributeTargets.Constructor |
                     AttributeTargets.Enum |
                     AttributeTargets.Event |
                     AttributeTargets.Field |
                     AttributeTargets.Method |
                     AttributeTargets.Module |
                     AttributeTargets.Property |
                     AttributeTargets.Struct,
                     AllowMultiple=true, Inherited=false)]
-    public sealed class MinimumOSPlatformAttribute : OSPlatformAttribute
+    public sealed class SupportedOSPlatformAttribute : OSPlatformAttribute
     {
-        public MinimumOSPlatformAttribute(string platformName);
+        public SupportedOSPlatformAttribute(string platformName);
     }
 
     [AttributeUsage(AttributeTargets.Assembly |
                     AttributeTargets.Class |
                     AttributeTargets.Constructor |
                     AttributeTargets.Enum |
                     AttributeTargets.Event |
                     AttributeTargets.Field |
                     AttributeTargets.Method |
                     AttributeTargets.Module |
                     AttributeTargets.Property |
                     AttributeTargets.Struct,
                     AllowMultiple=true, Inherited=false)]
-    public sealed class RemovedInOSPlatformAttribute : OSPlatformAttribute
+    public sealed class UnsupportedOSPlatformAttribute : OSPlatformAttribute
     {
-        public RemovedInOSPlatformAttribute(string platformName);
+        public UnsupportedOSPlatformAttribute(string platformName);
     }
 
     [AttributeUsage(AttributeTargets.Assembly |
                     AttributeTargets.Class |
                     AttributeTargets.Constructor |
                     AttributeTargets.Enum |
                     AttributeTargets.Event |
                     AttributeTargets.Field |
                     AttributeTargets.Method |
                     AttributeTargets.Module |
                     AttributeTargets.Property |
                     AttributeTargets.Struct,
                     AllowMultiple=true, Inherited=false)]
     public sealed class ObsoletedInOSPlatformAttribute : OSPlatformAttribute
     {
         public ObsoletedInOSPlatformAttribute(string platformName);
         public ObsoletedInOSPlatformAttribute(string platformName, string message);
         public string? Message { get; }
         public string? Url { get; set; }
     }
 }

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions