Releases: dotnet/roslynator
Releases · dotnet/roslynator
v4.2.0
Added
- Add Arm64 VS 2022 extension support (#990 by @snickler)
- Add analyzer "Add/remove blank line after file scoped namespace declaration" (RCS0060) (#993)
- Required option:
roslynator_blank_line_after_file_scoped_namespace_declaration = true|false - Not enabled by default.
- Required option:
- Add analyzer "Simplify argument null check" (RCS1255) (#994)
- Use
ArgumentNullException.ThrowIfNullinstead ofifnull check. - Not enabled by default.
- Use
- Add analyzer "Invalid argument null check" (RCS1256) (#888)
- This analyzer reports null checks of arguments that are:
- annotated as nullable reference type.
- optional and its default value is
null.
- This analyzer reports null checks of arguments that are:
- Add package
Roslynator.Testing.CSharp.MSTest(#997)
Changed
- Disable RCS1080 by default (#980)
- [CLI] Bump Roslyn to 4.4.0 (#998)
- [CLI] Add support for .NET 7 and remove support for .NET 5 (#985)
Fixed
- Fix RCS1080 when collection is derived from
List<T>(#986) - Fix retrieving of trusted platform assemblies - separator differs by OS (#987)
- Fix refactoring (RR0014) (#988)
- Fix refactoring (RR0180) (#988)
- Recognize
ArgumentNullException.ThrowIfNull(RCS1227) (#992) - Detect pattern matching in RCS1146 (#999)
- Handle
usingdirective that starts withglobal::RCS0015 (#1000) - [VS Extension] Reference all assemblies as 'Analyzer' and 'MefComponent' in vsix manifest (#1002)
- Fixes
AD0001withSystem.IO.FileNotFoundExceptionon Visual Studio 17.4 and later.
- Fixes
v4.1.2
Added
- Convert more syntax to implicit object creation (RCS1250) (#910)
- Add code fix for CS0037 (#929)
- [CLI] Generate reference documentation that can be published with Docusaurus (#918)
roslynator generate-doc --host docusaurus
- [CLI] Generate reference documentation that can be published with Sphinx (#961)
roslynator generate-doc --host sphinx
- [CLI] Basic support for
<inheritdoc />when generating documentation (generate-doccommand) (#972) - [CLI] Add option
ignored-title-parts(generate-doccommand) (#975) - Publish Roslynator to Open VSX Registry (#820)
Changed
- Rename default branch to
main. - Format changelog according to 'Keep a Changelog' (#915)
- [CLI] Improve release build of command-line tool (#912)
- Do not sort properties in an initializer (RR0216)
- [CLI] Bump Roslyn to 4.3.1 (#969)
- [CLI] Bump Microsoft.Build.Locator to 1.5.5 (#969)
Fixed
- [CLI] Fix filtering of projects (relates to
--projectsor--ignored-projectsparameter) (#914) - Refactoring "Add using directive" (RR0014) now works when file-scoped namespace is used (#932)
- Add parentheses if necessary in a code fix for RCS1197 (#928 by @karl-sjogren)
- Do not simplify default expression if it would change semantics (RCS1244) (#939)
- Fix NullReferenceException in RCS1198 (#940
- Order named arguments even if optional arguments are not specified RCS1205 (#941), (#965)
- Prefix identifier with
@if necessary (RCS1220) (#943) - Do not suggest to make local variable a const when it is used in ref extension method (RCS1118) (#948)
- Fix formatting of argument list (#952)
- Do not remove async/await when 'using declaration' is used (#953)
- Convert if-else to return statement when pattern matching is used (RCS1073) (#956)
- [CLI] Include compiler diagnostics in the xml output file of the
roslynator analyzecommand (#964 by @PeterKaszab) - Do not simplify 'default' expression if the type is inferred (RCS1244) (#966)
- Use explicit type from lambda expression (RCS1008) (#967
- Do not remove constructor if it is decorated with 'UsedImplicitlyAttribute' (RCS1074) (#968)
- Detect argument null check in the form of
ArgumentNullException.ThrowIfNull(RR0025, RCS1227) (#974) - Do not make generic class static if it's inherited (RCS1102) (#978)
v4.1.1
- Bug fixes
v4.1.0
- 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)
v4.0.2
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)
v4.0.0
-
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
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
!= nulltois not null(RCS1248) (commit)