# NOTE: Requires **VS2019 16.7** or later

# 'Design' Rules from '8.0' release with 'All' analysis mode escalated to 'error' severity
# Description: 'Design' Rules with enabled-by-default state from '8.0' release with 'All' analysis mode. Rules that are first released in a version later than '8.0' are disabled. Enabled rules with 'warning' severity are escalated to 'error' severity to respect 'CodeAnalysisTreatWarningsAsErrors' MSBuild property.

is_global = true

global_level = -99


# CA1000: Do not declare static members on generic types
dotnet_diagnostic.CA1000.severity = error

# CA1001: Types that own disposable fields should be disposable
dotnet_diagnostic.CA1001.severity = error

# CA1002: Do not expose generic lists
dotnet_diagnostic.CA1002.severity = error

# CA1003: Use generic event handler instances
dotnet_diagnostic.CA1003.severity = error

# CA1008: Enums should have zero value
dotnet_diagnostic.CA1008.severity = error

# CA1010: Generic interface should also be implemented
dotnet_diagnostic.CA1010.severity = error

# CA1012: Abstract types should not have public constructors
dotnet_diagnostic.CA1012.severity = error

# CA1016: Mark assemblies with assembly version
dotnet_diagnostic.CA1016.severity = error

# CA1018: Mark attributes with AttributeUsageAttribute
dotnet_diagnostic.CA1018.severity = error

# CA1019: Define accessors for attribute arguments
dotnet_diagnostic.CA1019.severity = error

# CA1024: Use properties where appropriate
dotnet_diagnostic.CA1024.severity = error

# CA1027: Mark enums with FlagsAttribute
dotnet_diagnostic.CA1027.severity = error

# CA1028: Enum Storage should be Int32
dotnet_diagnostic.CA1028.severity = error

# CA1030: Use events where appropriate
dotnet_diagnostic.CA1030.severity = error

# CA1031: Do not catch general exception types
dotnet_diagnostic.CA1031.severity = error

# CA1032: Implement standard exception constructors
dotnet_diagnostic.CA1032.severity = error

# CA1033: Interface methods should be callable by child types
dotnet_diagnostic.CA1033.severity = error

# CA1034: Nested types should not be visible
dotnet_diagnostic.CA1034.severity = error

# CA1036: Override methods on comparable types
dotnet_diagnostic.CA1036.severity = error

# CA1040: Avoid empty interfaces
dotnet_diagnostic.CA1040.severity = error

# CA1041: Provide ObsoleteAttribute message
dotnet_diagnostic.CA1041.severity = error

# CA1043: Use Integral Or String Argument For Indexers
dotnet_diagnostic.CA1043.severity = error

# CA1044: Properties should not be write only
dotnet_diagnostic.CA1044.severity = error

# CA1046: Do not overload equality operator on reference types
dotnet_diagnostic.CA1046.severity = error

# CA1047: Do not declare protected member in sealed type
dotnet_diagnostic.CA1047.severity = error

# CA1050: Declare types in namespaces
dotnet_diagnostic.CA1050.severity = error

# CA1051: Do not declare visible instance fields
dotnet_diagnostic.CA1051.severity = error

# CA1052: Static holder types should be Static or NotInheritable
dotnet_diagnostic.CA1052.severity = error

# CA1054: URI-like parameters should not be strings
dotnet_diagnostic.CA1054.severity = error

# CA1055: URI-like return values should not be strings
dotnet_diagnostic.CA1055.severity = error

# CA1056: URI-like properties should not be strings
dotnet_diagnostic.CA1056.severity = error

# CA1058: Types should not extend certain base types
dotnet_diagnostic.CA1058.severity = error

# CA1061: Do not hide base class methods
dotnet_diagnostic.CA1061.severity = error

# CA1062: Validate arguments of public methods
dotnet_diagnostic.CA1062.severity = error

# CA1063: Implement IDisposable Correctly
dotnet_diagnostic.CA1063.severity = error

# CA1064: Exceptions should be public
dotnet_diagnostic.CA1064.severity = error

# CA1065: Do not raise exceptions in unexpected locations
dotnet_diagnostic.CA1065.severity = error

# CA1066: Implement IEquatable when overriding Object.Equals
dotnet_diagnostic.CA1066.severity = error

# CA1067: Override Object.Equals(object) when implementing IEquatable<T>
dotnet_diagnostic.CA1067.severity = error

# CA1068: CancellationToken parameters must come last
dotnet_diagnostic.CA1068.severity = error

# CA1069: Enums values should not be duplicated
dotnet_diagnostic.CA1069.severity = error

# CA1070: Do not declare event fields as virtual
dotnet_diagnostic.CA1070.severity = error
