Releases: dotnet/roslynator
v3.3.0
- Bunch of bug fixes and small improvements
- Disable analyzers RCS1079 and RCS1090 by default
v3.2.2
v3.2.1
- Publish Roslynator for Visual Studio 2022 Preview
- Bug fixes and various improvements
v3.2.0
- Publish Roslynator Testing Framework
- Support editorconfig to configure analyzer options (commit)
- Update references to Roslyn API to 3.8.0
- A bunch of bug fixes
Analyzers
- Add option to invert analyzer RCS1016 (commit)
- Add more cases to analyzer RCS1218 (commit)
- Convert
!= null
tois not null
(RCS1248) (commit)
Code Fixes
v3.1.0
v3.0.1
-
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
v3.0.0
- Update references to Roslyn API to 3.5.0
- Release .NET Core Global Tool Roslynator.DotNet.Cli
- Introduce concept of "Analyzer Options"
- Reassign ID for some analyzers.
- Remove references to Roslynator assemblies from omnisharp.json on uninstall (VS Code)
v2.9.0
- 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 withstring.IsNullOrEmpty(x)
- Improve analyzer RCS1215 (commit).
x == double.NaN
should be replaced withdouble.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 tox.OrderByDescending(y => y)
x.SelectMany(y => y).Count()
can be simplified tox.Sum(y => y.Count)
ifx
hasCount
orLength
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 tox?.M()
ifx
is a nullable struct.
- Improve analyzer RCS1206 (commit)
(x != null) ? x.M() : default(int?)
can be simplified tox?.M()
ifx
is a nullable struct.
v2.3.1
- Last release of package Roslynator.Analyzers (2.3.0) that references Roslyn 2.x (VS 2017)
v2.3.0
- Last release of Roslynator for VS 2017