Releases: SergeyTeplyakov/ErrorProne.NET
Releases · SergeyTeplyakov/ErrorProne.NET
Version 0.3.0
Core Analyzers
- EPC17: warns when async void delegate is accidentally created where
Action
should be used. - ERP031: warns when some unsafe methods are used for
ConcurrentDictionary
instance likeToArray
.
Struct Analyzers
- EPS07: detects that a struct that does not override
Equals
orGetHashCode
is used as the key in the dictionary or in a hashset. - EPS08: detects that the default
ValueType.Equals
orValueType.GetHashCode
are used in the implmentation of theEquals
orGetHashCode
for a custom struct. - EPS09: detects that
in
modifier can be explicitely specified in a method call. - EPS10: detects attempts of constructing non-defaultable structs by using
new T
,default
or similar. - EPS11: detects that a non-defaultable struct is embedded in a defaultable struct.
- Various bug fixes.
Many thanks to @sharwell!
Nuget Packages
Initial release
Supported analyzers
- EPS01: detects that a struct could be made readonly;
- EPS02: detects that a struct not suitable for readonly contexts is passed using 'in'-parameter
- EPS03: detects that a struct not suitable for readonly contexts is returned by ref readonly reference.
- EPS04: detects that a struct not suitable for readonly contexts is stored in ref readonly local.
- EPS05: detects that a struct could be passed using 'in'-modifier for performance reasons.
- EPS06: detects that the compiler emits a defensive copy for a given expression.
Nuget package: https://t.co/3qxdBPBQjR
Extension on the VS marketplace: https://t.co/j4eDEoEy2d
Blogpost about the analyzers: https://t.co/oUF8bgvyvT