Skip to content

Releases: SergeyTeplyakov/ErrorProne.NET

Version 0.3.0

13 May 03:04
6ae11e0
Compare
Choose a tag to compare

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 like ToArray.

Struct Analyzers

  • EPS07: detects that a struct that does not override Equals or GetHashCode is used as the key in the dictionary or in a hashset.
  • EPS08: detects that the default ValueType.Equals or ValueType.GetHashCode are used in the implmentation of the Equals or GetHashCode 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

03 May 04:21
Compare
Choose a tag to compare

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