Categorization
Currently, there are two categories in Shimmering.Analyzers
: ShimmeringUsage and ShimmeringStyle. The Shimmering
prefix allows you to easily set the same severity for all diagnostics in this NuGet package.
- ShimmeringUsage: These rules have ID
SHIMMER1XXX
and aim to enforce better usage of .NET APIs and C# constructs. If your code is flagged, it means there's likely a more idiomatic, efficient, or modern way to achieve the same result in .NET. - ShimmeringStyle: These rules have ID
SHIMMER2XXX
and aim to enforce a consistent, but subjective, style throughout the code base. enforce the correct usage of .NET APIs and C# constructs.
All Shimmering rules are enabled by default, but some are hidden by default. See here to understand the differences.
Table
Rule ID | Category | Severity | Since | Notes |
---|---|---|---|---|
SHIMMER1000 | ShimmeringUsage | Warning | 1.0.0 | NullableCancellationTokenAnalyzer, Documentation |
SHIMMER1001 | ShimmeringUsage | Info | 1.0.0 | MissingCancellationTokenAnalyzer, Documentation |
SHIMMER1010 | ShimmeringUsage | Warning | 1.0.0 | ToListForEachAnalyzer, Documentation |
SHIMMER1011 | ShimmeringUsage | Warning | 1.0.0 | ToArrayOrToListFollowedByLinqMethodAnalyzer, Documentation |
SHIMMER1012 | ShimmeringUsage | Warning | 1.0.0 | ArrayOrArrayReturningMethodFollowedByToArrayAnalyzer, Documentation |
SHIMMER1015 | ShimmeringUsage | Hidden | 1.0.0 | SingleUseIEnumerableMaterializationAnalyzer, Documentation |
SHIMMER1020 | ShimmeringUsage | Warning | 1.0.0 | RedundantSpreadElementAnalyzer, Documentation |
SHIMMER1030 | ShimmeringUsage | Info | 1.0.0 | MissingRemoveEmptyEntriesAnalyzer, Documentation |
SHIMMER1100 | ShimmeringUsage | Warning | 1.0.0 | MisusedOrDefaultAnalyzer, Documentation |
SHIMMER1101 | ShimmeringUsage | Info | 1.0.0 | SingleElementConcatAnalyzer, Documentation |
SHIMMER1102 | ShimmeringUsage | Hidden | 1.0.0 | UniqueNonSetCollectionAnalyzer, Documentation |
SHIMMER2000 | ShimmeringStyle | Info | 1.0.0 | VerboseLinqChainAnalyzer, Documentation |
SHIMMER2010 | ShimmeringStyle | Info | 1.0.0 | NegatedTernaryConditionAnalyzer, Documentation |
SHIMMER2020 | ShimmeringStyle | Info | 1.0.0 | RedundantOutVariableAnalyzer, Documentation |
SHIMMER2030 | ShimmeringStyle | Hidden | 1.0.0 | PrimaryConstructorParameterReassignmentAnalyzer, Documentation |