Releases: dotnet/roslynator
Releases · dotnet/roslynator
v1.4.52
Code Fixes
- New code fixes for CS0115, CS1106, CS1621, CS1988.
v1.4.51
Refactorings
- MarkContainingClassAsAbstract (RR0073) has been replaced with code fix.
New Refactorings
- FormatWhereConstraint (RR0187)
- ReplaceForEachWithForAndReverseLoop (RR0188)
Code Fixes
New Code Fixes
Code fixes has been added for the following compiler diagnostics:
- NamespaceAlreadyContainsDefinition (CS0101)
- TypeAlreadyContainsDefinition (CS0102)
- TypeOfConditionalExpressionCannotBeDetermined (CS0173)
- OutParameterMustBeAssignedToBeforeControlLeavesCurrentMethod (CS0177)
- NewConstraintMustBeLastConstraintSpecified (CS0401)
- DuplicateConstraintForTypeParameter (CS0405)
- ConstraintClauseHasAlreadyBeenSpecified (CS0409)
- ClassOrStructConstraintMustComeBeforeAnyOtherConstraints (CS0449)
- CannotSpecifyBothConstraintClassAndClassOrStructConstraint (CS0450)
- NewConstraintCannotBeUsedWithStructConstraint (CS0451)
- TypeParameterHasSameNameAsTypeParameterFromOuterType (CS0693)
- StaticTypesCannotBeUsedAsTypeArguments (CS0718)
- PartialMethodCannotHaveAccessModifiersOrVirtualAbstractOverrideNewSealedOrExternModifiers (CS0750)
- NoDefiningDeclarationFoundForImplementingDeclarationOfPartialMethod (CS0759)
- PartialMethodsMustHaveVoidReturnType (CS0766)
- MethodHasParameterModifierThisWhichIsNotOnFirstParameter (CS1100)
- ExtensionMethodMustBeStatic (CS1105)
- ElementsDefinedInNamespaceCannotBeExplicitlyDeclaredAsPrivateProtectedOrProtectedInternal (CS1527)
- AsyncModifierCanOnlyBeUsedInMethodsThatHaveBody (CS1994)
v1.4.50
- Add code fixes that fix 80+ compiler diagnostics (like 'CS0001')
Analyzers
-
Following analyzers have been replaced with code fixes:
- ReplaceReturnStatementWithExpressionStatement (RCS1115)
- AddBreakStatementToSwitchSection (RCS1116)
- AddReturnStatementThatReturnsDefaultValue (RCS1117)
- AddMissingSemicolon (RCS1122)
- MarkMemberAsStatic (RCS1125)
- ReplaceReturnWithYieldReturn (RCS1131)
- AddDocumentationComment (RCS1137)
- MarkContainingClassAsAbstract (RCS1144)
- RemoveInapplicableModifier (RCS1147)
- RemoveUnreachableCode (RCS1148)
- RemoveImplementationFromAbstractMember (RCS1149)
- MemberTypeMustMatchOverriddenMemberType (RCS1152)
- OverridingMemberCannotChangeAccessModifiers (RCS1176)
Refactorings
-
Following refactorings have been replaced with code fixes:
- AddBooleanComparison (RR0001)
- ExtractDeclarationFromUsingStatement (RR0042)
- MarkMemberAsStatic (RR0072)
- ReplaceCountWithLengthOrLengthWitCount (RR0122)
- ReplaceStringLiteralWithCharacterLiteral (RR0146)
New Refactorings
- ChangeAccessibility (RR0186)
v1.4.13
Analyzers
New Analyzers
- OptimizeStringBuilderAppendCall (RCS1197)
- AvoidBoxingOfValueType (RCS1198)
v1.4.12
Analyzers
New Analyzers
- UseRegularStringLiteralInsteadOfVerbatimStringLiteral (RCS1192)
- OverridingMemberCannotChangeParamsModifier (RCS1193)
- ImplementExceptionConstructors (RCS1194)
- UseExclusiveOrOperator (RCS1195)
- CallExtensionMethodAsInstanceMethod (RCS1196)
Refactorings
New Refactorings
- UseListInsteadOfYield (RR0183)
- SplitIfStatement (RR0184)
- ReplaceObjectCreationWithDefaultValue (RR0185)
v1.4.1
Analyzers
New Analyzers
- DeclareEnumValueAsCombinationOfNames (RCS1191)
- MergeStringExpressions (RCS1190)
- AddOrRemoveRegionName (RCS1189)
- RemoveRedundantAutoPropertyInitialization (RCS1188)
- MarkFieldAsConst (RCS1187)
- UseRegexInstanceInsteadOfStaticMethod (RCS1186)
Refactorings
New Refactorings
- UseStringBuilderInsteadOfConcatenation (RR0182)
- InlineConstant (RR0181)
v1.4.0
Analyzers
- Delete analyzer MergeLocalDeclarationWithReturnStatement (RCS1054) - Its functionality is incorporated into analyzer InlineLocalVariable (RCS1124).
- Disable analyzer FormatAccessorList (RCS1024) by default.
- Disable analyzer FormatEmptyBlock (RCS1023) by default.
- Modify analyzer RemoveEmptyRegion (RCS1091) - Change default severity from Info to Hidden.
- Modify analyzer CompositeEnumValueContainsUndefinedFlag (RCS1157) - Change default severity from Warning to Info.
- Modify analyzer RemoveRedundantParentheses (RCS1032) - Exclude following syntaxes from analyzer:
- AssignmentExpression.Right
- ForEachExpression.Expression
- EqualsValueClause.Value
Refactorings
- Modify refactoring CheckExpressionForNull (RR0024) - Do not add empty line.
v1.3.11
- A lot of bug fixes and improvements.
v1.3.10
Analyzers
- Improve analyzer RemoveInapplicableModifier (RCS1147) - Analyze local function.
- Improve analyzer SimplifyMethodChain (RCS1077) - Merge combination of Where and Any.
- Improve analyzer StaticMemberInGenericTypeShouldUseTypeParameter (RCS1158) - Member must be public, internal or protected internal.
New Analyzers
- CallDebugFailInsteadOfDebugAssert (RCS1178)
- UseReturnInsteadOfAssignment (RCS1179)
- InlineLazyInitialization (RCS1180)
- ReplaceCommentWithDocumentationComment (RCS1181)
- RemoveRedundantBaseInterface (RCS1182)
- FormatInitializerWithSingleExpressionOnSingleLine (RCS1183)
- FormatConditionalExpression (RCS1184)
- AvoidSingleLineBlock (RCS1185)
v1.3.0
- Add support for configuration file.
Analyzers
- Disable UseVarInsteadOfExplicitTypeWhenTypeIsNotObvious (RCS1176) by default.
- Disable UseVarInsteadOfExplicitTypeInForEach (RCS1177) by default.