roslynator

Roslynator is a set of code analysis tools for C#, powered by Roslyn.

OTHER License

Stars
3K
Committers
42

Bot releases are hidden (Show)

roslynator -

Published by JosefPihrt over 2 years ago

  • Add analyzer RCS1254 (Normalize format of enum flag value)
  • Add analyzer RCS1253 (Format documentation comment summary)
  • Add analyzer RCS1252 (Normalize usage of infinite loop)
  • Add analyzer RCS1251 (Remove unnecessary braces from record declaration)
  • Add refactoring Deconstruct foreach variable (RR0217)
  • Add code fix for CS8602, CS8604
  • Add suggestion to call AddRange instead of Add (RCS1235)
  • Put back refactoring "Split local declaration and assignment" (RR0194) (issue)
  • Adopt activation events in VS Code extension (issue) (thanks to ProphetLamb)
  • Fix: Get config value from global AnalyzerConfig if available (issue)
  • Fix: Do not suggest using null-forgiving operator for parameter default value (CS8625)
  • Fix: Check if equality operator is overloaded (RCS1171)
  • Fix: Do not remove field initialization in struct with constructor(s) (RCS1129)
roslynator -

Published by JosefPihrt over 2 years ago

4.0.2 (2022-01-29)

  • Disable analyzer ROS003 by default (commit)
  • Analyzers that require option to be set should disabled by default (RCS1018, RCS1096, RCS1250) (commit)

Bug fixes

  • Fix analyzer RCS1014 (Use explicitly/implicitly typed array) (commit)
  • Fix analyzer RCS1016 (Use block body or expression body) (commit)
  • Fix refactoring AddUsingDirective (RR0013) (commit)
  • Propagate some options from .roslynatorconfig (commit)
  • Enable ROS analyzers to be set from .roslynatorconfig (commit)
  • Files generated with source generators have relative paths (commit)
roslynator -

Published by JosefPihrt almost 3 years ago

  • Bump Roslyn version to 4.0.1

  • Change category of all analyzers to 'Roslynator'

  • Migrate all options to EditorConfig

    • Enable/disable all analyzers
    • Enable/disable all refactorings
    • Enable/disable specific refactoring
    • Enable/disable all compiler diagnostics fixes
    • Enable/disable specific compiler diagnostic fix
  • Add analyzer RCS0057 (Normalize whitespace at the beginning of a file)

  • Add analyzer RCS0058 (Normalize whitespace at the end of a file)

  • Add analyzer RCS0059 (Place new line after/before null-conditional operator)

  • Add analyzer RCS1249 (Unnecessary null-forgiving operator)

  • Add analyzer RCS1250 (Use implicit/explicit object creation)

  • Add refactoring ExpandPositionalRecord (RR0215)

  • Add refactoring AddAllPropertiesToInitializer (RR0216)

  • Add code fix for CS8403, CS8618 and CS8625

roslynator -

Published by JosefPihrt almost 3 years ago

  • Bunch of bug fixes and small improvements
  • Disable analyzers RCS1079 and RCS1090 by default
roslynator -

Published by JosefPihrt about 3 years ago

  • Ensure that shared assemblies with be loaded properly on .NET Core (issue)
roslynator -

Published by JosefPihrt over 3 years ago

  • Publish Roslynator for Visual Studio 2022 Preview
  • Bug fixes and various improvements
roslynator -

Published by JosefPihrt over 3 years ago

Analyzers

Code Fixes

  • Add code fix for CS7036 (commit)
  • Add code fix for CS8632 (commit)
  • Improve code fix for CS0029, CS0246 (commit)
  • Add option for code fix for CS1591 (commit)
roslynator -

Published by JosefPihrt almost 4 years ago

  • Add analyzer RCS0056 (Line is too long)
  • Add option to suppress diagnostic from Unity script methods (RCS1213)
  • Consider syntax var foo = Foo.Parse(value) as having obvious type Foo
  • Update references to Roslyn API to 3.7.0
roslynator -

Published by JosefPihrt about 4 years ago

  • Add analyzer RCS0055 (Fix formatting of a binary expression chain)

  • Add analyzer RCS0054 (Fix formatting of a call chain)

  • Add analyzer RCS0053 (Fix formatting of a list)

  • Add analyzer RCS0052 (Add newline before equals sign instead of after it (or vice versa))

  • Add analyzer RCS1248 (Use 'is null' pattern instead of comparison (or vice versa)) (issue)

  • Add analyzer RCS1247 (Fix documentation comment tag)

  • Add analyzer option RCS1207i (Convert method group to anonymous function)

  • Add analyzer option RCS1090i (Remove call to 'ConfigureAwait')

  • Add analyzer option RCS1018i (Remove accessibility modifiers) (issue)

  • Add analyzer option RCS1014i (Use implicitly typed array)

  • Add analyzer option RCS1014a (Use implicitly typed array (when type is obvious))

  • Add analyzer option RCS1078i (Use string.Empty instead of "")

  • Add analyzer option RCS1016a (Convert expression-body to block body when expression is multi-line)

  • Add analyzer option RCS1016b (Convert expression-body to block body when declaration is multi-line)

  • Disable by default analyzer RCS1207i (Convert method group to anonymous function)

  • Remove analyzer RCS1219 (Call 'Enumerable.Skip' and 'Enumerable.Any' instead of 'Enumerable.Count')

  • Rename analyzer "Avoid 'null' on left side of binary expression" to "Constant values should be placed on right side of comparisons" RCS1098

  • Rename analyzer "Simplify boolean expression" to "Unncessary null check" RCS1199 (issue)

  • More syntax is considered as having obvious type:

    • string literal
    • character literal
    • boolean literal
    • implicit array creation that contains only expressions whose type is obvious
roslynator -

Published by JosefPihrt over 4 years ago

roslynator -

Published by JosefPihrt over 4 years ago

  • Switch to Roslyn 3.x libraries
  • Add Directory.Build.props file
  • Add open configuration commands to Command Palette (VS Code) (PR)

Bug Fixes

  • Fix key duplication/handle camel case names in omnisharp.json (PR)
  • Use prefix unary operator instead of postfix unary operator (RCS1089) (issue)
  • Cast of this to its interface cannot be null (RCS1202) (issue)
  • Do not remove braces in switch section if it contains 'using variable' (RCS1031) (issue)

New Analyzers

  • RCS1242 (DoNotPassNonReadOnlyStructByReadOnlyReference).
  • RCS1243 (DuplicateWordInComment).
  • RCS1244 (SimplifyDefaultExpression).
  • RCS1245 (SimplifyConditionalExpression2) (issue).

Analyzers

  • Disable analyzer RCS1057 by default (issue).
  • Merge analyzer RCS1156 with RCS1113 (issue).
    • x == "" should be replaced with string.IsNullOrEmpty(x)
  • Improve analyzer RCS1215 (commit).
    • x == double.NaN should be replaced with double.IsNaN(x)
  • Enable RCS1169 and RCS1170 if the type is read-only struct (commit).
  • Improve analyzer RCS1077 (commit).
    • x.OrderBy(y => y).Reverse() can be simplified to x.OrderByDescending(y => y)
    • x.SelectMany(y => y).Count() can be simplified to x.Sum(y => y.Count) if x has Count or Length property
  • Improve analyzer RCS1161 - Declare explicit enum value using << operator (commit).
  • Improve analyzer RCS1036 - remove empty line between documentation comment and declaration (commit).
  • Improve analyzer RCS1037 - remove trailing white-space from documentation comment (commit).
  • Improve analyzer RCS1143 (commit)
    • x?.M() ?? default(int?) can be simplified to x?.M() if x is a nullable struct.
  • Improve analyzer RCS1206 (commit)
    • (x != null) ? x.M() : default(int?) can be simplified to x?.M() if x is a nullable struct.
roslynator -

Published by JosefPihrt almost 5 years ago

  • Last release of package Roslynator.Analyzers (2.3.0) that references Roslyn 2.x (VS 2017)
roslynator -

Published by JosefPihrt almost 5 years ago

  • Last release of Roslynator for VS 2017
roslynator -

Published by JosefPihrt almost 5 years ago

  • Add set of formatting analyzers (RCS0...).
roslynator -

Published by JosefPihrt about 5 years ago

Analyzers

roslynator -

Published by JosefPihrt about 5 years ago

Analyzers

Refactorings

roslynator -

Published by JosefPihrt over 5 years ago

Analyzers

Refactorings

roslynator -

Published by JosefPihrt over 5 years ago

  • Export/import Visual Studio options.

Analyzers

Code Fixes

  • Add code fixes for CS0191, CS0192, CS1012.
roslynator -

Published by JosefPihrt almost 6 years ago

  • First release of Roslynator 2019 (for Visual Studio 2019)

New Features

  • Support global suppression of diagnostics.
    • Go to Visual Studio Tools > Options > Roslynator > Global Suppressions

Analyzers

Refactorings

Code Fixes

  • Add code fix for CS0029, CS0131, CS0621, CS3000, CS3001, CS3002, CS3003, CS3005, CS3006, CS3007, CS3008, CS3009, CS3016, CS3024, CS3027.
roslynator -

Published by JosefPihrt almost 6 years ago

Analyzers