Skip to content

Releases: dotnet/roslynator

v0.9.70

23 Jun 11:35
Compare
Choose a tag to compare

Analyzers

Changes
  • analyzer "MergeIfStatementWithContainedIfStatement" renamed to "MergeIfStatementWithNestedIfStatement"

Refactorings

New Refactorings
  • MarkMemberAsStatic
  • MarkAllMembersAsStatic
  • FormatAccessorBracesOnSingleLine
  • GenerateSwitchSections
  • ConvertStringLiteralToCharacterLiteral
Changes
  • refactoring "ReverseForLoop" is available within 'for' keyword.
  • refactoring "SwapExpressionsInBinaryExpression" is available only for logical and/or expression.
  • refactoring "AddCastAccordingToParameterType" can offer more than one cast.
  • refactorings "SwapParameters" and "SwapArguments" removed (these are covered by "Change signature..." dialog)
  • refactorings "RemoveMember" and "DuplicateMember" are available only at opening/closing brace
Bug Fixes
  • refactoring "RemoveAllRegions" is available inside #endregion directive.
  • refactoring "RenameMethodAccordingToTypeName" handles properly async method.

v0.9.60

14 Jun 20:13
Compare
Choose a tag to compare

Analyzers

Changes
  • UseNameOfOperator analyzer:
    • only quote marks (and at sign) are faded out.
    • analyzer detects property name in property setter.
  • SimplifyLambdaExpressionParameterList analyzer - parenthesized lambda with parameter list with a single parameter without type can be simplified to simple lambda
Bug Fixes
  • UseExpressionBodiedMember analyzer

Refactorings

New Refactorings
  • Duplicate argument
  • Add cast to return statement's expression
  • Add cast to variable declaration
  • Merge string literals
  • Merge string literals into multiline string literal
  • Convert regular string literal to verbatim string literal
  • Convert verbatim string literal to regular string literal
  • Convert verbatim string literal to regular string literals
  • Use expression-bodied member
Changes
  • "Extract expression from parentheses" refactoring is available when cursor is on opening/closing parenthesis.
Bug Fixes
  • "Check parameter for null" refactoring is available for lambda expression and anonymous method.
  • "Remove comment" and "Remove all comments" refactorings is available when cursor is inside xml documentation comment.
  • "Convert foreach to for" refactoring is available for string expression.

v0.9.40

24 May 16:15
Compare
Choose a tag to compare

Analyzers

  • NEW - "RemoveEmptyFinallyClause" analyzer and code fix added
  • NEW - "RemoveEmptyArgumentList" analyzer and code fix added
  • NEW - "SimplifyLogicalNotExpression" analyzer and code fix added
  • NEW - "RemoveUnnecessaryCaseLabel" analyzer and code fix added
  • NEW - "RemoveRedundantDefaultSwitchSection" analyzer and code fix added
  • NEW - "RemoveRedundantBaseConstructorCall" analyzer and code fix added
  • NEW - "RemoveEmptyNamespaceDeclaration" analyzer and code fix added
  • NEW - "SimplifyIfStatementToReturnStatement" analyzer and code fix added
  • NEW - "RemoveRedundantConstructor" analyzer and code fix added
  • NEW - "AvoidEmptyCatchClauseThatCatchesSystemException" analyzer and code fix added
  • NEW - "FormatDeclarationBraces" analyzer and code fix added
  • NEW - "SimplifyLinqMethodChain" analyzer and code fix added
  • NEW - "AvoidUsageOfStringEmpty" analyzer and code fix added
  • NEW - "ThrowingOfNewNotImplementedException" analyzer added
  • NEW - "UseCountOrLengthPropertyInsteadOfAnyMethod" analyzer and code fix added

Refactorings

  • NEW - "Swap arguments" refactoring added
  • NEW - "Swap expressions" refactoring added
  • NEW - "Swap parameters" refactoring added
  • NEW - "Duplicate parameter" refactoring added
  • NEW - "Access element using '[]' instead of 'First/Last/ElementAt' method" refactoring added
  • NEW - "Introduce constructor from selected member(s)" refactoring added
  • "Remove member" refactoring removes xml comment that belongs to a member
  • "Add boolean comparison" refactoring works for return statement in method/property/indexer
  • "Convert string literal to interpolated string" refactoring adds empty interpolation
  • Bug fixed in "Rename field according to property name" refactoring
  • Bug fixed in "Convert foreach to for" refactoring

v0.9.30

16 May 00:40
Compare
Choose a tag to compare

Analyzers

  • NEW - UseForStatementToCreateInfiniteLoop analyzer and code fix added
  • NEW - UseWhileStatementToCreateInfiniteLoop analyzer and code fix added
  • NEW - AvoidUsageOfDoStatementToCreateInfiniteLoop analyzer and code fix added
  • NEW - UseStringLiteralInsteadOfInterpolatedString analyzer and code fix added
  • RemoveRedundantEmptyLine analyzer enhanced
  • FormatAccessorList analyzer now works for auto-property accessor list
  • MergeLocalDeclarationWithReturnStatement code fix now works when cursor is in return statement
  • MergeIfStatementWithContainedIfStatement code fix improved (unnecessary parentheses are not added)
  • bug fixed in SimplifyAssignmentExpression analyzer

Refactorings

  • "Extract statement(s) from if statement" refactoring now works for topmost if statement that has else clause
  • "Format binary expression on multiple lines" refactoring now works for a single binary expression
  • "Negate binary expression" refactoring now works properly for a chain of logical and/or expressions
  • "Remove parameter name from each argument" refactoring now works when any argument has parameter name
  • "Expand property and add backing field" improved (accessor is on a single line)

v0.9.21

09 May 04:07
Compare
Choose a tag to compare
  • bug fixed in "MergeIfStatementWithContainedIfStatement" analyzer

v0.9.20

09 May 03:24
Compare
Choose a tag to compare

Analyzers

  • "MergeIfStatementWithContainedIfStatement" analyzer and code fix added
  • "DeclareEachTypeInSeparateFile" analyzer added
  • "AvoidLockingOnPubliclyAccessibleInstance" analyzer and code fix added (without batch fixer)
  • "SimplifyAssignmentExpression" analyzer and code fix added
  • "AddEmptyLinesBetweenDeclarations" analyzer and code fix added
  • "AvoidUsingAliasDirective" analyzer added
  • "AvoidSemicolonAtEndOfDeclaration" analyzer and code fix added
  • "UseLogicalNotOperator" analyzer renamed to "SimplifyBooleanComparison" and improved
  • "RemoveRedundantBooleanLiteral" analyzer now works for "&& true" and "|| false"

Refactorings

  • "Add boolean comparison" refactoring added
  • "Convert interpolated string to string literal" refactoring added
  • "Convert string literal to interpolated string" refactoring added
  • "Change 'Any/All' to 'All/Any'" refactoring added
  • "Format all parameters on a single line" refactoring now works for parameter list with a single parameter
  • "Convert to constant" refactoring now works only for predefined types (except object)
  • "Remove comment/comments" refactorings now work for comments that are inside trivia
  • "Make member abstract" refactoring now work only for non-abstract indexer/method/property that is in abstract class
  • "Add/remove parameter name (to/from each argument)" refactorings now work when cursor is right behind the parameter
  • Bug fixed in "Uncomment" refactoring

v0.9.11

30 Apr 17:12
Compare
Choose a tag to compare
  • bug fixes and minor improvements