1
# Top level entry required to mark this as a global AnalyzerConfig file
4
# Set precedence one lower than default to allow subsets of projects to override values
5
# from this file with more specific configurations
8
# Microsoft.Analyzers.ManagedCodeAnalysis
9
# Description: Microsoft.Analyzers.ManagedCodeAnalysis
12
# Analyzer threw an exception
13
dotnet_diagnostic.AD0001.severity = warning
15
# Ensure minimum API surface is respected
16
dotnet_diagnostic.BCL0001.severity = warning
18
# AppContext default value expected to be true
19
dotnet_diagnostic.BCL0010.severity = warning
21
# AppContext default value defined in if statement with incorrect pattern
22
dotnet_diagnostic.BCL0011.severity = warning
24
# AppContext default value defined in if statement at root of switch case
25
dotnet_diagnostic.BCL0012.severity = warning
27
# Invalid P/Invoke call
28
dotnet_diagnostic.BCL0015.severity = none
30
# Invalid SR.Format call
31
dotnet_diagnostic.BCL0020.severity = warning
33
# Do not declare static members on generic types
34
dotnet_diagnostic.CA1000.severity = none
36
# Types that own disposable fields should be disposable
37
dotnet_diagnostic.CA1001.severity = none
39
# Do not expose generic lists
40
dotnet_diagnostic.CA1002.severity = none
42
# Use generic event handler instances
43
dotnet_diagnostic.CA1003.severity = none
45
# Avoid excessive parameters on generic types
46
dotnet_diagnostic.CA1005.severity = none
48
# Enums should have zero value
49
dotnet_diagnostic.CA1008.severity = none
51
# Generic interface should also be implemented
52
dotnet_diagnostic.CA1010.severity = none
54
# Abstract types should not have constructors
55
dotnet_diagnostic.CA1012.severity = none
57
# Mark assemblies with CLSCompliant
58
dotnet_diagnostic.CA1014.severity = none
60
# Mark assemblies with assembly version
61
dotnet_diagnostic.CA1016.severity = none
63
# Mark assemblies with ComVisible
64
dotnet_diagnostic.CA1017.severity = none
66
# Mark attributes with AttributeUsageAttribute
67
dotnet_diagnostic.CA1018.severity = warning
69
# Define accessors for attribute arguments
70
dotnet_diagnostic.CA1019.severity = none
72
# Use properties where appropriate
73
dotnet_diagnostic.CA1024.severity = none
75
# Mark enums with FlagsAttribute
76
dotnet_diagnostic.CA1027.severity = none
78
# Enum Storage should be Int32
79
dotnet_diagnostic.CA1028.severity = none
81
# Use events where appropriate
82
dotnet_diagnostic.CA1030.severity = none
84
# Do not catch general exception types
85
dotnet_diagnostic.CA1031.severity = none
87
dotnet_diagnostic.CA1032.severity = none
89
# Interface methods should be callable by child types
90
dotnet_diagnostic.CA1033.severity = none
92
dotnet_diagnostic.CA1034.severity = none
94
# Override methods on comparable types
95
dotnet_diagnostic.CA1036.severity = none
97
# Avoid empty interfaces
98
dotnet_diagnostic.CA1040.severity = none
100
# Provide ObsoleteAttribute message
101
dotnet_diagnostic.CA1041.severity = none
103
# Use Integral Or String Argument For Indexers
104
dotnet_diagnostic.CA1043.severity = none
106
# Properties should not be write only
107
dotnet_diagnostic.CA1044.severity = none
109
# Do not overload equality operator on reference types
110
dotnet_diagnostic.CA1046.severity = none
112
# Do not declare protected member in sealed type
113
dotnet_diagnostic.CA1047.severity = warning
115
# Declare types in namespaces
116
dotnet_diagnostic.CA1050.severity = warning
118
# Do not declare visible instance fields
119
dotnet_diagnostic.CA1051.severity = none
121
# Static holder types should be Static or NotInheritable
122
dotnet_diagnostic.CA1052.severity = none
124
# Uri parameters should not be strings
125
dotnet_diagnostic.CA1054.severity = none
127
# Uri return values should not be strings
128
dotnet_diagnostic.CA1055.severity = none
130
# Uri properties should not be strings
131
dotnet_diagnostic.CA1056.severity = none
133
# Types should not extend certain base types
134
dotnet_diagnostic.CA1058.severity = none
136
# Do not hide base class methods
137
dotnet_diagnostic.CA1061.severity = none
139
# Validate arguments of public methods
140
dotnet_diagnostic.CA1062.severity = none
142
# Implement IDisposable Correctly
143
dotnet_diagnostic.CA1063.severity = none
145
# Exceptions should be public
146
dotnet_diagnostic.CA1064.severity = none
148
# Do not raise exceptions in unexpected locations
149
dotnet_diagnostic.CA1065.severity = none
151
# Implement IEquatable when overriding Object.Equals
152
dotnet_diagnostic.CA1066.severity = none
154
# Override Object.Equals(object) when implementing IEquatable<T>
155
dotnet_diagnostic.CA1067.severity = none
157
# CancellationToken parameters must come last
158
dotnet_diagnostic.CA1068.severity = none
160
# Enums values should not be duplicated
161
dotnet_diagnostic.CA1069.severity = none
163
# Do not declare event fields as virtual
164
dotnet_diagnostic.CA1070.severity = warning
166
# Avoid using cref tags with a prefix
167
dotnet_diagnostic.CA1200.severity = warning
169
# Do not pass literals as localized parameters
170
dotnet_diagnostic.CA1303.severity = none
173
dotnet_diagnostic.CA1304.severity = none
175
# Specify IFormatProvider
176
dotnet_diagnostic.CA1305.severity = none
178
# Specify StringComparison
179
dotnet_diagnostic.CA1307.severity = none
181
# Normalize strings to uppercase
182
dotnet_diagnostic.CA1308.severity = none
184
# Use ordinal stringcomparison
185
dotnet_diagnostic.CA1309.severity = none
187
# P/Invokes should not be visible
188
dotnet_diagnostic.CA1401.severity = warning
190
# Do not use 'OutAttribute' on string parameters for P/Invokes
191
dotnet_diagnostic.CA1417.severity = warning
193
# Avoid excessive complexity
194
dotnet_diagnostic.CA1502.severity = none
196
# Avoid unmaintainable code
197
dotnet_diagnostic.CA1505.severity = none
199
# Avoid excessive class coupling
200
dotnet_diagnostic.CA1506.severity = none
202
# Use nameof to express symbol names
203
dotnet_diagnostic.CA1507.severity = warning
205
# Avoid dead conditional code
206
dotnet_diagnostic.CA1508.severity = none
208
# Invalid entry in code metrics rule specification file
209
dotnet_diagnostic.CA1509.severity = none
211
# Do not name enum values 'Reserved'
212
dotnet_diagnostic.CA1700.severity = none
214
dotnet_diagnostic.CA1707.severity = none
216
# Identifiers should have correct suffix
217
dotnet_diagnostic.CA1710.severity = none
219
# Identifiers should not have incorrect suffix
220
dotnet_diagnostic.CA1711.severity = none
222
# Do not prefix enum values with type name
223
dotnet_diagnostic.CA1712.severity = none
225
dotnet_diagnostic.CA1714.severity = none
227
# Identifiers should have correct prefix
228
dotnet_diagnostic.CA1715.severity = none
230
# Identifiers should not match keywords
231
dotnet_diagnostic.CA1716.severity = none
233
dotnet_diagnostic.CA1717.severity = none
235
# Identifier contains type name
236
dotnet_diagnostic.CA1720.severity = none
238
# Property names should not match get methods
239
dotnet_diagnostic.CA1721.severity = none
241
# Type names should not match namespaces
242
dotnet_diagnostic.CA1724.severity = none
244
# Review unused parameters
245
dotnet_diagnostic.CA1801.severity = none
247
# Use literals where appropriate
248
dotnet_diagnostic.CA1802.severity = warning
250
# Do not initialize unnecessarily
251
dotnet_diagnostic.CA1805.severity = none
253
dotnet_diagnostic.CA1806.severity = none
255
# Initialize reference type static fields inline
256
dotnet_diagnostic.CA1810.severity = warning
258
# Avoid uninstantiated internal classes
259
dotnet_diagnostic.CA1812.severity = none
261
dotnet_diagnostic.CA1814.severity = none
263
dotnet_diagnostic.CA1815.severity = none
265
# Dispose methods should call SuppressFinalize
266
dotnet_diagnostic.CA1816.severity = none
268
dotnet_diagnostic.CA1819.severity = none
270
# Test for empty strings using string length
271
dotnet_diagnostic.CA1820.severity = none
273
# Remove empty Finalizers
274
dotnet_diagnostic.CA1821.severity = warning
276
# Mark members as static
277
dotnet_diagnostic.CA1822.severity = none
279
# Avoid unused private fields
280
dotnet_diagnostic.CA1823.severity = warning
282
# Mark assemblies with NeutralResourcesLanguageAttribute
283
dotnet_diagnostic.CA1824.severity = warning
285
# Avoid zero-length array allocations.
286
dotnet_diagnostic.CA1825.severity = warning
288
# Do not use Count() or LongCount() when Any() can be used
289
dotnet_diagnostic.CA1827.severity = warning
291
# Do not use CountAsync() or LongCountAsync() when AnyAsync() can be used
292
dotnet_diagnostic.CA1828.severity = warning
294
# Use Length/Count property instead of Count() when available
295
dotnet_diagnostic.CA1829.severity = warning
297
# Prefer strongly-typed Append and Insert method overloads on StringBuilder.
298
dotnet_diagnostic.CA1830.severity = warning
300
# Use AsSpan or AsMemory instead of Range-based indexers when appropriate
301
dotnet_diagnostic.CA1831.severity = warning
303
# Use AsSpan or AsMemory instead of Range-based indexers when appropriate
304
dotnet_diagnostic.CA1832.severity = warning
306
# Use AsSpan or AsMemory instead of Range-based indexers when appropriate
307
dotnet_diagnostic.CA1833.severity = warning
309
# Consider using 'StringBuilder.Append(char)' when applicable.
310
dotnet_diagnostic.CA1834.severity = warning
312
# Prefer the 'Memory'-based overloads for 'ReadAsync' and 'WriteAsync'
313
dotnet_diagnostic.CA1835.severity = warning
315
# Prefer IsEmpty over Count
316
dotnet_diagnostic.CA1836.severity = warning
318
# Use 'Environment.ProcessId'
319
dotnet_diagnostic.CA1837.severity = suggestion
321
# Avoid 'StringBuilder' parameters for P/Invokes
322
dotnet_diagnostic.CA1838.severity = warning
324
# Do not lock on objects with weak identity
325
dotnet_diagnostic.CA2002.severity = none
327
# Consider calling ConfigureAwait on the awaited task
328
dotnet_diagnostic.CA2007.severity = suggestion
330
# Do not create tasks without passing a TaskScheduler
331
dotnet_diagnostic.CA2008.severity = suggestion
333
# Do not call ToImmutableCollection on an ImmutableCollection value
334
dotnet_diagnostic.CA2009.severity = warning
336
# Avoid infinite recursion
337
dotnet_diagnostic.CA2011.severity = warning
339
# Use ValueTasks correctly
340
dotnet_diagnostic.CA2012.severity = warning
342
# Do not use ReferenceEquals with value types
343
dotnet_diagnostic.CA2013.severity = warning
345
# Do not use stackalloc in loops.
346
dotnet_diagnostic.CA2014.severity = warning
348
# Do not define finalizers for types derived from MemoryManager<T>
349
dotnet_diagnostic.CA2015.severity = warning
351
# Forward the 'CancellationToken' parameter to methods that take one
352
dotnet_diagnostic.CA2016.severity = warning
354
# Review SQL queries for security vulnerabilities
355
dotnet_diagnostic.CA2100.severity = none
357
# Specify marshaling for P/Invoke string arguments
358
dotnet_diagnostic.CA2101.severity = none
360
# Review visible event handlers
361
dotnet_diagnostic.CA2109.severity = none
363
# Seal methods that satisfy private interfaces
364
dotnet_diagnostic.CA2119.severity = none
366
# Do Not Catch Corrupted State Exceptions
367
dotnet_diagnostic.CA2153.severity = none
369
# Do not raise reserved exception types
370
dotnet_diagnostic.CA2201.severity = none
372
# Instantiate argument exceptions correctly
373
dotnet_diagnostic.CA2208.severity = suggestion
375
# Non-constant fields should not be visible
376
dotnet_diagnostic.CA2211.severity = none
378
# Disposable fields should be disposed
379
dotnet_diagnostic.CA2213.severity = none
381
# Dispose methods should call base class dispose
382
dotnet_diagnostic.CA2215.severity = none
384
# Disposable types should declare finalizer
385
dotnet_diagnostic.CA2216.severity = none
387
dotnet_diagnostic.CA2219.severity = none
389
# Override Equals on overloading operator equals
390
dotnet_diagnostic.CA2224.severity = none
392
# Operator overloads have named alternates
393
dotnet_diagnostic.CA2225.severity = none
395
# Operators should have symmetrical overloads
396
dotnet_diagnostic.CA2226.severity = none
398
# Collection properties should be read only
399
dotnet_diagnostic.CA2227.severity = none
401
# Overload operator equals on overriding value type Equals
402
dotnet_diagnostic.CA2231.severity = none
404
# Pass system uri objects instead of strings
405
dotnet_diagnostic.CA2234.severity = none
407
# Mark all non-serializable fields
408
dotnet_diagnostic.CA2235.severity = none
410
# Provide correct arguments to formatting methods
411
dotnet_diagnostic.CA2241.severity = warning
413
# Test for NaN correctly
414
dotnet_diagnostic.CA2242.severity = warning
416
# Attribute string literals should parse correctly
417
dotnet_diagnostic.CA2243.severity = none
419
# Do not duplicate indexed element initializations
420
dotnet_diagnostic.CA2244.severity = none
422
# Do not assign a property to itself.
423
dotnet_diagnostic.CA2245.severity = warning
425
# Assigning symbol and its member in the same statement.
426
dotnet_diagnostic.CA2246.severity = none
428
# Argument passed to TaskCompletionSource constructor should be TaskCreationOptions enum instead of TaskContinuationOptions enum.
429
dotnet_diagnostic.CA2247.severity = warning
431
# Provide correct 'enum' argument to 'Enum.HasFlag'
432
dotnet_diagnostic.CA2248.severity = warning
434
# Consider using 'string.Contains' instead of 'string.IndexOf'
435
dotnet_diagnostic.CA2249.severity = suggestion
437
# Do not use insecure deserializer BinaryFormatter
438
dotnet_diagnostic.CA2300.severity = none
440
# Do not call BinaryFormatter.Deserialize without first setting BinaryFormatter.Binder
441
dotnet_diagnostic.CA2301.severity = none
443
# Ensure BinaryFormatter.Binder is set before calling BinaryFormatter.Deserialize
444
dotnet_diagnostic.CA2302.severity = none
446
# Do not use insecure deserializer LosFormatter
447
dotnet_diagnostic.CA2305.severity = none
449
# Do not use insecure deserializer NetDataContractSerializer
450
dotnet_diagnostic.CA2310.severity = none
452
# Do not deserialize without first setting NetDataContractSerializer.Binder
453
dotnet_diagnostic.CA2311.severity = none
455
# Ensure NetDataContractSerializer.Binder is set before deserializing
456
dotnet_diagnostic.CA2312.severity = none
458
# Do not use insecure deserializer ObjectStateFormatter
459
dotnet_diagnostic.CA2315.severity = none
461
# Do not deserialize with JavaScriptSerializer using a SimpleTypeResolver
462
dotnet_diagnostic.CA2321.severity = none
464
# Ensure JavaScriptSerializer is not initialized with SimpleTypeResolver before deserializing
465
dotnet_diagnostic.CA2322.severity = none
467
# Do not use TypeNameHandling values other than None
468
dotnet_diagnostic.CA2326.severity = none
470
# Do not use DataTable.ReadXml() with untrusted data
471
dotnet_diagnostic.CA2350.severity = none
473
# Do not use DataSet.ReadXml() with untrusted data
474
dotnet_diagnostic.CA2351.severity = none
476
# Unsafe DataSet or DataTable in serializable type can be vulnerable to remote code execution attacks
477
dotnet_diagnostic.CA2352.severity = none
479
# Unsafe DataSet or DataTable in serializable type
480
dotnet_diagnostic.CA2353.severity = none
482
# Unsafe DataSet or DataTable in deserialized object graph can be vulnerable to remote code execution attacks
483
dotnet_diagnostic.CA2354.severity = none
485
# Unsafe DataSet or DataTable type found in deserializable object graph
486
dotnet_diagnostic.CA2355.severity = none
488
# Unsafe DataSet or DataTable type in web deserializable object graph
489
dotnet_diagnostic.CA2356.severity = none
491
# Ensure autogenerated class containing DataSet.ReadXml() is not used with untrusted data
492
dotnet_diagnostic.CA2361.severity = none
494
# Unsafe DataSet or DataTable in autogenerated serializable type can be vulnerable to remote code execution attacks
495
dotnet_diagnostic.CA2362.severity = none
497
# Review code for SQL injection vulnerabilities
498
dotnet_diagnostic.CA3001.severity = none
500
# Review code for XSS vulnerabilities
501
dotnet_diagnostic.CA3002.severity = none
503
# Review code for file path injection vulnerabilities
504
dotnet_diagnostic.CA3003.severity = none
506
# Review code for information disclosure vulnerabilities
507
dotnet_diagnostic.CA3004.severity = none
509
# Review code for LDAP injection vulnerabilities
510
dotnet_diagnostic.CA3005.severity = none
512
# Review code for process command injection vulnerabilities
513
dotnet_diagnostic.CA3006.severity = none
515
# Review code for open redirect vulnerabilities
516
dotnet_diagnostic.CA3007.severity = none
518
# Review code for XPath injection vulnerabilities
519
dotnet_diagnostic.CA3008.severity = none
521
# Review code for XML injection vulnerabilities
522
dotnet_diagnostic.CA3009.severity = none
524
# Review code for XAML injection vulnerabilities
525
dotnet_diagnostic.CA3010.severity = none
527
# Review code for DLL injection vulnerabilities
528
dotnet_diagnostic.CA3011.severity = none
530
# Review code for regex injection vulnerabilities
531
dotnet_diagnostic.CA3012.severity = none
533
# Do Not Add Schema By URL
534
dotnet_diagnostic.CA3061.severity = warning
536
# Insecure DTD processing in XML
537
dotnet_diagnostic.CA3075.severity = suggestion
539
# Insecure XSLT script processing.
540
dotnet_diagnostic.CA3076.severity = suggestion
542
# Insecure Processing in API Design, XmlDocument and XmlTextReader
543
dotnet_diagnostic.CA3077.severity = suggestion
545
# Mark Verb Handlers With Validate Antiforgery Token
546
dotnet_diagnostic.CA3147.severity = warning
548
# Do Not Use Weak Cryptographic Algorithms
549
dotnet_diagnostic.CA5350.severity = warning
551
# Do Not Use Broken Cryptographic Algorithms
552
dotnet_diagnostic.CA5351.severity = warning
554
# Review cipher mode usage with cryptography experts
555
dotnet_diagnostic.CA5358.severity = none
557
# Do Not Disable Certificate Validation
558
dotnet_diagnostic.CA5359.severity = warning
560
# Do Not Call Dangerous Methods In Deserialization
561
dotnet_diagnostic.CA5360.severity = warning
563
# Do Not Disable SChannel Use of Strong Crypto
564
dotnet_diagnostic.CA5361.severity = warning
566
# Potential reference cycle in deserialized object graph
567
dotnet_diagnostic.CA5362.severity = none
569
# Do Not Disable Request Validation
570
dotnet_diagnostic.CA5363.severity = warning
572
# Do Not Use Deprecated Security Protocols
573
dotnet_diagnostic.CA5364.severity = warning
575
# Do Not Disable HTTP Header Checking
576
dotnet_diagnostic.CA5365.severity = warning
578
# Use XmlReader For DataSet Read Xml
579
dotnet_diagnostic.CA5366.severity = none
581
# Do Not Serialize Types With Pointer Fields
582
dotnet_diagnostic.CA5367.severity = none
584
# Set ViewStateUserKey For Classes Derived From Page
585
dotnet_diagnostic.CA5368.severity = warning
587
# Use XmlReader For Deserialize
588
dotnet_diagnostic.CA5369.severity = none
590
# Use XmlReader For Validating Reader
591
dotnet_diagnostic.CA5370.severity = warning
593
# Use XmlReader For Schema Read
594
dotnet_diagnostic.CA5371.severity = none
596
# Use XmlReader For XPathDocument
597
dotnet_diagnostic.CA5372.severity = none
599
# Do not use obsolete key derivation function
600
dotnet_diagnostic.CA5373.severity = warning
602
# Do Not Use XslTransform
603
dotnet_diagnostic.CA5374.severity = warning
605
# Do Not Use Account Shared Access Signature
606
dotnet_diagnostic.CA5375.severity = none
608
# Use SharedAccessProtocol HttpsOnly
609
dotnet_diagnostic.CA5376.severity = warning
611
# Use Container Level Access Policy
612
dotnet_diagnostic.CA5377.severity = warning
614
# Do not disable ServicePointManagerSecurityProtocols
615
dotnet_diagnostic.CA5378.severity = warning
617
# Do Not Use Weak Key Derivation Function Algorithm
618
dotnet_diagnostic.CA5379.severity = warning
620
# Do Not Add Certificates To Root Store
621
dotnet_diagnostic.CA5380.severity = warning
623
# Ensure Certificates Are Not Added To Root Store
624
dotnet_diagnostic.CA5381.severity = warning
626
# Use Secure Cookies In ASP.Net Core
627
dotnet_diagnostic.CA5382.severity = none
629
# Ensure Use Secure Cookies In ASP.Net Core
630
dotnet_diagnostic.CA5383.severity = none
632
# Do Not Use Digital Signature Algorithm (DSA)
633
dotnet_diagnostic.CA5384.severity = suggestion
635
# Use Rivest–Shamir–Adleman (RSA) Algorithm With Sufficient Key Size
636
dotnet_diagnostic.CA5385.severity = warning
638
# Avoid hardcoding SecurityProtocolType value
639
dotnet_diagnostic.CA5386.severity = none
641
# Do Not Use Weak Key Derivation Function With Insufficient Iteration Count
642
dotnet_diagnostic.CA5387.severity = none
644
# Ensure Sufficient Iteration Count When Using Weak Key Derivation Function
645
dotnet_diagnostic.CA5388.severity = none
647
# Do Not Add Archive Item's Path To The Target File System Path
648
dotnet_diagnostic.CA5389.severity = none
650
# Do not hard-code encryption key
651
dotnet_diagnostic.CA5390.severity = none
653
# Use antiforgery tokens in ASP.NET Core MVC controllers
654
dotnet_diagnostic.CA5391.severity = none
656
# Use DefaultDllImportSearchPaths attribute for P/Invokes
657
dotnet_diagnostic.CA5392.severity = none
659
# Do not use unsafe DllImportSearchPath value
660
dotnet_diagnostic.CA5393.severity = none
662
# Do not use insecure randomness
663
dotnet_diagnostic.CA5394.severity = none
665
# Miss HttpVerb attribute for action methods
666
dotnet_diagnostic.CA5395.severity = none
668
# Set HttpOnly to true for HttpCookie
669
dotnet_diagnostic.CA5396.severity = none
671
# Do not use deprecated SslProtocols values
672
dotnet_diagnostic.CA5397.severity = none
674
# Avoid hardcoded SslProtocols values
675
dotnet_diagnostic.CA5398.severity = none
677
# HttpClients should enable certificate revocation list checks
678
dotnet_diagnostic.CA5399.severity = none
680
# Ensure HttpClient certificate revocation list check is not disabled
681
dotnet_diagnostic.CA5400.severity = none
683
# Do not use CreateEncryptor with non-default IV
684
dotnet_diagnostic.CA5401.severity = none
686
# Use CreateEncryptor with the default IV
687
dotnet_diagnostic.CA5402.severity = none
689
# Do not hard-code certificate
690
dotnet_diagnostic.CA5403.severity = none
692
# Avoid using accessing Assembly file path when publishing as a single-file
693
dotnet_diagnostic.IL3000.severity = none
695
# Avoid using accessing Assembly file path when publishing as a single-file
696
dotnet_diagnostic.IL3001.severity = none
699
dotnet_diagnostic.SA0001.severity = suggestion
701
dotnet_diagnostic.SA1000.severity = none
703
dotnet_diagnostic.SA1001.severity = none
705
# Semicolons should not be preceded by a space
706
dotnet_diagnostic.SA1002.severity = warning
708
dotnet_diagnostic.SA1003.severity = none
710
# Documentation line should begin with a space
711
dotnet_diagnostic.SA1004.severity = warning
713
# Single line comment should begin with a space
714
dotnet_diagnostic.SA1005.severity = warning
716
# Region should not be preceded by a space
717
dotnet_diagnostic.SA1006.severity = warning
719
# Opening parenthesis should not be preceded by a space
720
dotnet_diagnostic.SA1008.severity = suggestion
722
# Closing parenthesis should not be followed by a space
723
dotnet_diagnostic.SA1009.severity = suggestion
725
# Opening square brackets should not be preceded by a space
726
dotnet_diagnostic.SA1010.severity = warning
728
# Closing square bracket should be followed by a space
729
dotnet_diagnostic.SA1011.severity = suggestion
731
# Opening brace should be followed by a space
732
dotnet_diagnostic.SA1012.severity = suggestion
734
# Closing brace should be preceded by a space
735
dotnet_diagnostic.SA1013.severity = suggestion
737
# Opening generic brackets should not be preceded by a space
738
dotnet_diagnostic.SA1014.severity = warning
740
# Closing generic bracket should not be followed by a space
741
dotnet_diagnostic.SA1015.severity = warning
743
dotnet_diagnostic.SA1019.severity = none
745
# Increment symbol '++' should not be preceded by a space
746
dotnet_diagnostic.SA1020.severity = warning
748
# Negative sign should be preceded by a space
749
dotnet_diagnostic.SA1021.severity = suggestion
751
# Dereference symbol '*' should not be preceded by a space.
752
dotnet_diagnostic.SA1023.severity = warning
754
# Colon should be followed by a space
755
dotnet_diagnostic.SA1024.severity = warning
757
# Code should not contain multiple whitespace characters in a row
758
dotnet_diagnostic.SA1025.severity = suggestion
760
dotnet_diagnostic.SA1026.severity = none
762
dotnet_diagnostic.SA1027.severity = none
764
dotnet_diagnostic.SA1028.severity = none
766
# Do not prefix calls with base unless local implementation exists
767
dotnet_diagnostic.SA1100.severity = suggestion
769
dotnet_diagnostic.SA1101.severity = none
771
dotnet_diagnostic.SA1102.severity = warning
773
# Code should not contain empty statements
774
dotnet_diagnostic.SA1106.severity = suggestion
776
# Code should not contain multiple statements on one line
777
dotnet_diagnostic.SA1107.severity = suggestion
779
dotnet_diagnostic.SA1108.severity = none
781
# Opening parenthesis or bracket should be on declaration line
782
dotnet_diagnostic.SA1110.severity = warning
784
# Closing parenthesis should be on line of last parameter
785
dotnet_diagnostic.SA1111.severity = warning
787
dotnet_diagnostic.SA1112.severity = none
789
dotnet_diagnostic.SA1113.severity = none
791
# Parameter list should follow declaration
792
dotnet_diagnostic.SA1114.severity = suggestion
794
dotnet_diagnostic.SA1115.severity = none
796
# Split parameters should start on line after declaration
797
dotnet_diagnostic.SA1116.severity = suggestion
799
# Parameters should be on same line or separate lines
800
dotnet_diagnostic.SA1117.severity = suggestion
802
dotnet_diagnostic.SA1118.severity = none
804
dotnet_diagnostic.SA1119.severity = none
806
# Comments should contain text
807
dotnet_diagnostic.SA1120.severity = suggestion
809
dotnet_diagnostic.SA1121.severity = none
811
# Use string.Empty for empty strings
812
dotnet_diagnostic.SA1122.severity = none
814
# Region should not be located within a code element
815
dotnet_diagnostic.SA1123.severity = suggestion
817
dotnet_diagnostic.SA1124.severity = none
819
# Use shorthand for nullable types
820
dotnet_diagnostic.SA1125.severity = warning
822
# Generic type constraints should be on their own line
823
dotnet_diagnostic.SA1127.severity = suggestion
825
# Put constructor initializers on their own line
826
dotnet_diagnostic.SA1128.severity = suggestion
828
dotnet_diagnostic.SA1129.severity = none
831
dotnet_diagnostic.SA1130.severity = suggestion
833
# Constant values should appear on the right-hand side of comparisons
834
dotnet_diagnostic.SA1131.severity = suggestion
836
# Do not combine fields
837
dotnet_diagnostic.SA1132.severity = warning
839
# Do not combine attributes
840
dotnet_diagnostic.SA1133.severity = warning
842
# Each attribute should be placed on its own line of code
843
dotnet_diagnostic.SA1134.severity = warning
845
# Using directive should be qualified
846
dotnet_diagnostic.SA1135.severity = warning
848
# Enum values should be on separate lines
849
dotnet_diagnostic.SA1136.severity = suggestion
851
# Elements should have the same indentation
852
dotnet_diagnostic.SA1137.severity = suggestion
854
dotnet_diagnostic.SA1139.severity = none
856
dotnet_diagnostic.SA1200.severity = none
858
# Elements should appear in the correct order
859
dotnet_diagnostic.SA1201.severity = suggestion
861
# Elements should be ordered by access
862
dotnet_diagnostic.SA1202.severity = suggestion
864
# Constants should appear before fields
865
dotnet_diagnostic.SA1203.severity = suggestion
867
# Static elements should appear before instance elements
868
dotnet_diagnostic.SA1204.severity = suggestion
870
dotnet_diagnostic.SA1205.severity = none
872
dotnet_diagnostic.SA1206.severity = none
874
# Using directive ordering
875
dotnet_diagnostic.SA1208.severity = suggestion
877
# Using alias directives should be placed after all using namespace directives
878
dotnet_diagnostic.SA1209.severity = suggestion
880
# Using directives should be ordered alphabetically by the namespaces
881
dotnet_diagnostic.SA1210.severity = suggestion
883
# Using alias directive ordering
884
dotnet_diagnostic.SA1211.severity = suggestion
886
dotnet_diagnostic.SA1212.severity = none
888
# Readonly fields should appear before non-readonly fields
889
dotnet_diagnostic.SA1214.severity = suggestion
891
# Using static directives should be placed at the correct location
892
dotnet_diagnostic.SA1216.severity = warning
894
# The using static directives within a C# code file are not sorted alphabetically by full type name.
895
dotnet_diagnostic.SA1217.severity = suggestion
897
# Element should begin with an uppercase letter
898
dotnet_diagnostic.SA1300.severity = suggestion
900
# Interface names should begin with I
901
dotnet_diagnostic.SA1302.severity = warning
903
# Const field names should begin with upper-case letter
904
dotnet_diagnostic.SA1303.severity = suggestion
906
# Non-private readonly fields should begin with upper-case letter
907
dotnet_diagnostic.SA1304.severity = suggestion
909
# Field should begin with lower-case letter
910
dotnet_diagnostic.SA1306.severity = suggestion
912
dotnet_diagnostic.SA1307.severity = none
914
# Field should not begin with the prefix 's_'
915
dotnet_diagnostic.SA1308.severity = suggestion
917
dotnet_diagnostic.SA1309.severity = none
919
dotnet_diagnostic.SA1310.severity = none
921
# Static readonly fields should begin with upper-case letter
922
dotnet_diagnostic.SA1311.severity = suggestion
924
# Variable should begin with lower-case letter
925
dotnet_diagnostic.SA1312.severity = suggestion
927
# Parameter should begin with lower-case letter
928
dotnet_diagnostic.SA1313.severity = suggestion
930
dotnet_diagnostic.SA1314.severity = none
932
# Tuple element names should use correct casing
933
dotnet_diagnostic.SA1316.severity = suggestion
935
dotnet_diagnostic.SA1400.severity = none
937
# Fields should be private
938
dotnet_diagnostic.SA1401.severity = suggestion
940
# File may only contain a single type
941
dotnet_diagnostic.SA1402.severity = suggestion
943
# File may only contain a single namespace
944
dotnet_diagnostic.SA1403.severity = suggestion
946
# Code analysis suppression should have justification
947
dotnet_diagnostic.SA1404.severity = suggestion
949
# Debug.Assert should provide message text
950
dotnet_diagnostic.SA1405.severity = suggestion
952
# Arithmetic expressions should declare precedence
953
dotnet_diagnostic.SA1407.severity = suggestion
955
# Conditional expressions should declare precedence
956
dotnet_diagnostic.SA1408.severity = warning
958
dotnet_diagnostic.SA1410.severity = none
960
dotnet_diagnostic.SA1411.severity = none
962
# Use trailing comma in multi-line initializers
963
dotnet_diagnostic.SA1413.severity = suggestion
965
# Tuple types in signatures should have element names
966
dotnet_diagnostic.SA1414.severity = suggestion
968
# Braces for multi-line statements should not share line
969
dotnet_diagnostic.SA1500.severity = suggestion
971
# Statement should not be on a single line
972
dotnet_diagnostic.SA1501.severity = suggestion
974
# Element should not be on a single line
975
dotnet_diagnostic.SA1502.severity = suggestion
977
# Braces should not be omitted
978
dotnet_diagnostic.SA1503.severity = suggestion
980
# All accessors should be single-line or multi-line
981
dotnet_diagnostic.SA1504.severity = warning
983
# An opening brace should not be followed by a blank line
984
dotnet_diagnostic.SA1505.severity = suggestion
986
# Element documentation headers should not be followed by blank line
987
dotnet_diagnostic.SA1506.severity = warning
989
# Code should not contain multiple blank lines in a row
990
dotnet_diagnostic.SA1507.severity = suggestion
992
# A closing brace should not be preceded by a blank line
993
dotnet_diagnostic.SA1508.severity = warning
995
# Opening braces should not be preceded by blank line
996
dotnet_diagnostic.SA1509.severity = warning
998
# 'else' statement should not be preceded by a blank line
999
dotnet_diagnostic.SA1510.severity = warning
1001
# Single-line comments should not be followed by blank line
1002
dotnet_diagnostic.SA1512.severity = suggestion
1004
# Closing brace should be followed by blank line
1005
dotnet_diagnostic.SA1513.severity = suggestion
1007
# Element documentation header should be preceded by blank line
1008
dotnet_diagnostic.SA1514.severity = suggestion
1010
# Single-line comment should be preceded by blank line
1011
dotnet_diagnostic.SA1515.severity = suggestion
1013
# Elements should be separated by blank line
1014
dotnet_diagnostic.SA1516.severity = suggestion
1016
dotnet_diagnostic.SA1517.severity = none
1018
# Code should not contain blank lines at the end of the file
1019
dotnet_diagnostic.SA1518.severity = suggestion
1021
# Braces should not be omitted from multi-line child statement
1022
dotnet_diagnostic.SA1519.severity = warning
1024
# Use braces consistently
1025
dotnet_diagnostic.SA1520.severity = warning
1027
dotnet_diagnostic.SA1600.severity = none
1029
# Partial elements should be documented
1030
dotnet_diagnostic.SA1601.severity = suggestion
1032
# Enumeration items should be documented
1033
dotnet_diagnostic.SA1602.severity = suggestion
1035
# Element documentation should have summary
1036
dotnet_diagnostic.SA1604.severity = suggestion
1038
# Partial element documentation should have summary
1039
dotnet_diagnostic.SA1605.severity = suggestion
1041
# Element documentation should have summary text
1042
dotnet_diagnostic.SA1606.severity = suggestion
1044
# Element documentation should not have default summary
1045
dotnet_diagnostic.SA1608.severity = suggestion
1047
# Property documentation should have value text
1048
dotnet_diagnostic.SA1610.severity = suggestion
1050
# The documentation for parameter 'message' is missing
1051
dotnet_diagnostic.SA1611.severity = suggestion
1053
# The parameter documentation is at incorrect position
1054
dotnet_diagnostic.SA1612.severity = suggestion
1056
# Element parameter documentation should have text
1057
dotnet_diagnostic.SA1614.severity = suggestion
1059
dotnet_diagnostic.SA1615.severity = none
1061
# Element return value documentation should have text
1062
dotnet_diagnostic.SA1616.severity = suggestion
1064
dotnet_diagnostic.SA1617.severity = none
1066
# The documentation for type parameter is missing
1067
dotnet_diagnostic.SA1618.severity = suggestion
1069
# The documentation for type parameter is missing
1070
dotnet_diagnostic.SA1619.severity = suggestion
1072
# Generic type parameter documentation should have text
1073
dotnet_diagnostic.SA1622.severity = suggestion
1075
# Property documentation text
1076
dotnet_diagnostic.SA1623.severity = suggestion
1078
# Because the property only contains a visible get accessor, the documentation summary text should begin with 'Gets'
1079
dotnet_diagnostic.SA1624.severity = suggestion
1081
dotnet_diagnostic.SA1625.severity = none
1083
# Single-line comments should not use documentation style slashes
1084
dotnet_diagnostic.SA1626.severity = suggestion
1086
# The documentation text within the \'exception\' tag should not be empty
1087
dotnet_diagnostic.SA1627.severity = suggestion
1089
# Documentation text should end with a period
1090
dotnet_diagnostic.SA1629.severity = suggestion
1092
# File should have header
1093
# Superseded by IDE0073
1094
dotnet_diagnostic.SA1633.severity = none
1096
# Constructor summary documentation should begin with standard text
1097
dotnet_diagnostic.SA1642.severity = suggestion
1099
# Destructor summary documentation should begin with standard text
1100
dotnet_diagnostic.SA1643.severity = suggestion
1102
# File name should match first type name
1103
dotnet_diagnostic.SA1649.severity = suggestion
1105
dotnet_diagnostic.SA1652.severity = none
1107
# Do not use equality check to check for collection size.
1108
dotnet_diagnostic.xUnit2013.severity = none