Releases: Vannevelj/SharpSource
Releases · Vannevelj/SharpSource
1.24.0
1.23.4
UnnecessaryEnumerableMaterialization
: If the instance is of typeIQueryable
then the analyzer will no longer trigger
1.23.3
GetHashCodeRefersToMutableMember
: No longer triggers oninit
property setters
1.23.2
AsyncOverloadsAvailable
: Will no longer pass through theCancellationToken
if it's inside a static local functionAsyncOverloadsAvailable
: Will correctly identify overloads if the synchronous variant returns aTask
-like type
1.23.1
StringConcatenatedInLoop
: No longer triggers a warning if the string is retrieved through an indexer (e.g.myList[i]
)DisposeAsyncDisposable
: Preserves leading and trailing trivia when the code fix is appliedTestMethodWithoutTestAttribute
: Will no longer consider methods withTask<T>
andValueTask<T>
return types as potential test methods
1.23.0
DisposeAsyncDisposable
: An object implementsIAsyncDisposable
and can be disposed of asynchronously in the context it is used.PointlessCollectionToString
:ImmutableDictionary
is also includedTestMethodWithoutTestAttribute
: Reduced false negatives by extending the diagnostic to methods that have certain attributes (Xunit.ClassData
,Xunit.InlineData
,Microsoft.DataRow
,NUnit.TestCase
,NUnit.TestCaseSource
)
1.22.2
ComparingStringsWithoutStringComparison
: Don't trigger when the same symbol is referenced in both operandsSwitchDoesNotHandleAllEnumOptions
: When adefault
clause is present, the analyzer will become an INFO diagnostic rather than a WARN
1.22.1
ThreadSleepInAsyncMethod
: Fixed aNullReferenceException
if symbols weren't loaded
1.22.0
StringConcatenatedInLoop
: No longer triggers if concatenation is immediately followed by areturn
orbreak
clauseAsyncOverloadsAvailable
: Doesn't trigger inside a synchronous local functionSynchronousTaskWait
: Now also supports anonymous functionsThreadSleepInAsyncMethod
: Now also supports anonymous functions
1.21.6
StructWithoutElementaryMethodsOverridden
: Generates anEquals(object? o)
method when nullable reference types are enabledEqualsAndGetHashcodeNotImplementedTogether
: Generates anEquals(object? o)
method when nullable reference types are enabled