Skip to content

Commit

Permalink
Active rules by default (#4875)
Browse files Browse the repository at this point in the history
  • Loading branch information
BraisGabin committed Jun 1, 2022
1 parent 8fbcf20 commit 6d2933d
Show file tree
Hide file tree
Showing 32 changed files with 98 additions and 32 deletions.
5 changes: 5 additions & 0 deletions config/detekt/detekt.yml
Expand Up @@ -142,6 +142,11 @@ potential-bugs:
active: true
MapGetWithNotNullAssertionOperator:
active: true
MissingPackageDeclaration:
active: true
excludes:
- '**/*.kts'
- '**/build-logic/**'
UnconditionalJumpStatementInLoop:
active: true
UnreachableCatchBlock:
Expand Down
60 changes: 30 additions & 30 deletions detekt-core/src/main/resources/default-detekt-config.yml
Expand Up @@ -162,19 +162,19 @@ coroutines:
GlobalCoroutineUsage:
active: false
InjectDispatcher:
active: false
active: true
dispatcherNames:
- 'IO'
- 'Default'
- 'Unconfined'
RedundantSuspendModifier:
active: false
active: true
SleepInsteadOfDelay:
active: false
active: true
SuspendFunWithCoroutineScopeReceiver:
active: false
SuspendFunWithFlowReturnType:
active: false
active: true

empty-blocks:
active: true
Expand Down Expand Up @@ -221,7 +221,7 @@ exceptions:
- 'hashCode'
- 'toString'
InstanceOfCheckForException:
active: false
active: true
excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
NotImplementedDeclaration:
active: false
Expand Down Expand Up @@ -321,7 +321,7 @@ naming:
excludeClassPattern: '$^'
ignoreOverridden: true
InvalidPackageDeclaration:
active: false
active: true
rootPackage: ''
requireRootInDeclaration: false
LambdaParameterNaming:
Expand All @@ -334,7 +334,7 @@ naming:
active: true
ignoreOverridden: true
NoNameShadowing:
active: false
active: true
NonBooleanPropertyPrefixedWithIs:
active: false
ObjectPropertyNaming:
Expand Down Expand Up @@ -382,7 +382,7 @@ performance:
potential-bugs:
active: true
AvoidReferentialEquality:
active: false
active: true
forbiddenTypePatterns:
- 'kotlin.String'
CastToNullableType:
Expand All @@ -392,7 +392,7 @@ potential-bugs:
DontDowncastCollectionTypes:
active: false
DoubleMutabilityForCollection:
active: false
active: true
mutableTypes:
- 'kotlin.collections.MutableList'
- 'kotlin.collections.MutableMap'
Expand All @@ -415,9 +415,9 @@ potential-bugs:
ExplicitGarbageCollectionCall:
active: true
HasPlatformType:
active: false
active: true
IgnoredReturnValue:
active: false
active: true
restrictToAnnotatedMethods: true
returnValueAnnotations:
- '*.CheckResult'
Expand All @@ -441,9 +441,9 @@ potential-bugs:
excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
ignoreOnClassesPattern: ''
MapGetWithNotNullAssertionOperator:
active: false
active: true
MissingPackageDeclaration:
active: false
active: true
excludes: ['**/*.kts']
MissingWhenCase:
active: true
Expand All @@ -461,7 +461,7 @@ potential-bugs:
UnnecessarySafeCall:
active: true
UnreachableCatchBlock:
active: false
active: true
UnreachableCode:
active: true
UnsafeCallOnNullableType:
Expand All @@ -470,9 +470,9 @@ potential-bugs:
UnsafeCast:
active: true
UnusedUnaryOperator:
active: false
active: true
UselessPostfixExpression:
active: false
active: true
WrongEqualsTypeParameter:
active: true

Expand All @@ -490,7 +490,7 @@ style:
DataClassShouldBeImmutable:
active: false
DestructuringDeclarationWithTooManyEntries:
active: false
active: true
maxDestructuringEntries: 3
EqualsNullCall:
active: true
Expand All @@ -499,7 +499,7 @@ style:
ExplicitCollectionElementAccessMethod:
active: false
ExplicitItLambdaParameter:
active: false
active: true
ExpressionBodySyntax:
active: false
includeLineWrapping: false
Expand Down Expand Up @@ -527,7 +527,7 @@ style:
- '*.internal'
- '*.internal.*'
ForbiddenVoid:
active: false
active: true
ignoreOverridden: false
ignoreUsageInGenerics: false
FunctionOnlyReturningConstant:
Expand Down Expand Up @@ -587,7 +587,7 @@ style:
NullableBooleanCheck:
active: false
ObjectLiteralToLambda:
active: false
active: true
OptionalAbstractKeyword:
active: true
OptionalUnit:
Expand All @@ -601,7 +601,7 @@ style:
RedundantExplicitType:
active: false
RedundantHigherOrderMapUsage:
active: false
active: true
RedundantVisibilityModifierRule:
active: false
ReturnCount:
Expand Down Expand Up @@ -636,7 +636,7 @@ style:
UnnecessaryBackticks:
active: false
UnnecessaryFilter:
active: false
active: true
UnnecessaryInheritance:
active: true
UnnecessaryInnerClass:
Expand All @@ -655,13 +655,13 @@ style:
active: true
allowedNames: '(_|ignored|expected|serialVersionUID)'
UseAnyOrNoneInsteadOfFind:
active: false
active: true
UseArrayLiteralsInAnnotations:
active: false
active: true
UseCheckNotNull:
active: false
active: true
UseCheckOrError:
active: false
active: true
UseDataClass:
active: false
allowVars: false
Expand All @@ -672,13 +672,13 @@ style:
UseIfInsteadOfWhen:
active: false
UseIsNullOrEmpty:
active: false
active: true
UseOrEmpty:
active: false
active: true
UseRequire:
active: false
active: true
UseRequireNotNull:
active: false
active: true
UselessCallOnNotNull:
active: true
UtilityClassWithPublicConstructor:
Expand Down
Expand Up @@ -8,6 +8,7 @@ import io.gitlab.arturbosch.detekt.api.Issue
import io.gitlab.arturbosch.detekt.api.Rule
import io.gitlab.arturbosch.detekt.api.Severity
import io.gitlab.arturbosch.detekt.api.config
import io.gitlab.arturbosch.detekt.api.internal.ActiveByDefault
import io.gitlab.arturbosch.detekt.api.internal.Configuration
import io.gitlab.arturbosch.detekt.api.internal.RequiresTypeResolution
import io.gitlab.arturbosch.detekt.rules.fqNameOrNull
Expand Down Expand Up @@ -39,6 +40,7 @@ import org.jetbrains.kotlin.types.typeUtil.supertypes
* </compliant>
*/
@RequiresTypeResolution
@ActiveByDefault(since = "1.21.0")
class InjectDispatcher(config: Config) : Rule(config) {

@Configuration("The names of dispatchers to detect by this rule")
Expand Down
Expand Up @@ -7,6 +7,7 @@ import io.gitlab.arturbosch.detekt.api.Entity
import io.gitlab.arturbosch.detekt.api.Issue
import io.gitlab.arturbosch.detekt.api.Rule
import io.gitlab.arturbosch.detekt.api.Severity
import io.gitlab.arturbosch.detekt.api.internal.ActiveByDefault
import io.gitlab.arturbosch.detekt.api.internal.RequiresTypeResolution
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
import org.jetbrains.kotlin.descriptors.Modality
Expand Down Expand Up @@ -54,6 +55,7 @@ import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameSafe
*
*/
@RequiresTypeResolution
@ActiveByDefault(since = "1.21.0")
class RedundantSuspendModifier(config: Config) : Rule(config) {

override val issue = Issue(
Expand Down
Expand Up @@ -7,6 +7,7 @@ import io.gitlab.arturbosch.detekt.api.Entity
import io.gitlab.arturbosch.detekt.api.Issue
import io.gitlab.arturbosch.detekt.api.Rule
import io.gitlab.arturbosch.detekt.api.Severity
import io.gitlab.arturbosch.detekt.api.internal.ActiveByDefault
import io.gitlab.arturbosch.detekt.api.internal.RequiresTypeResolution
import org.jetbrains.kotlin.com.intellij.psi.PsiElement
import org.jetbrains.kotlin.psi.KtCallExpression
Expand Down Expand Up @@ -39,6 +40,7 @@ import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameOrNull
*
*/
@RequiresTypeResolution
@ActiveByDefault(since = "1.21.0")
class SleepInsteadOfDelay(config: Config = Config.empty) : Rule(config) {
override val issue = Issue(
javaClass.simpleName,
Expand Down
Expand Up @@ -7,6 +7,7 @@ import io.gitlab.arturbosch.detekt.api.Entity
import io.gitlab.arturbosch.detekt.api.Issue
import io.gitlab.arturbosch.detekt.api.Rule
import io.gitlab.arturbosch.detekt.api.Severity
import io.gitlab.arturbosch.detekt.api.internal.ActiveByDefault
import io.gitlab.arturbosch.detekt.api.internal.RequiresTypeResolution
import io.gitlab.arturbosch.detekt.rules.fqNameOrNull
import org.jetbrains.kotlin.lexer.KtTokens
Expand Down Expand Up @@ -59,6 +60,7 @@ import org.jetbrains.kotlin.types.typeUtil.supertypes
*
*/
@RequiresTypeResolution
@ActiveByDefault(since = "1.21.0")
class SuspendFunWithFlowReturnType(config: Config) : Rule(config) {

override val issue = Issue(
Expand Down
Expand Up @@ -8,6 +8,7 @@ import io.gitlab.arturbosch.detekt.api.Issue
import io.gitlab.arturbosch.detekt.api.Rule
import io.gitlab.arturbosch.detekt.api.Severity
import io.gitlab.arturbosch.detekt.api.config
import io.gitlab.arturbosch.detekt.api.internal.ActiveByDefault
import io.gitlab.arturbosch.detekt.api.internal.Configuration
import io.gitlab.arturbosch.detekt.api.internal.RequiresTypeResolution
import io.gitlab.arturbosch.detekt.api.internal.SimpleGlob
Expand All @@ -34,6 +35,7 @@ import org.jetbrains.kotlin.resolve.calls.util.getType
* </compliant>
*/
@RequiresTypeResolution
@ActiveByDefault(since = "1.21.0")
class AvoidReferentialEquality(config: Config) : Rule(config) {

override val issue = Issue(
Expand Down
Expand Up @@ -8,6 +8,7 @@ import io.gitlab.arturbosch.detekt.api.Issue
import io.gitlab.arturbosch.detekt.api.Rule
import io.gitlab.arturbosch.detekt.api.Severity
import io.gitlab.arturbosch.detekt.api.config
import io.gitlab.arturbosch.detekt.api.internal.ActiveByDefault
import io.gitlab.arturbosch.detekt.api.internal.Configuration
import io.gitlab.arturbosch.detekt.api.internal.RequiresTypeResolution
import io.gitlab.arturbosch.detekt.rules.fqNameOrNull
Expand Down Expand Up @@ -43,6 +44,7 @@ import org.jetbrains.kotlin.resolve.BindingContext
* </compliant>
*/
@RequiresTypeResolution
@ActiveByDefault(since = "1.21.0")
class DoubleMutabilityForCollection(config: Config = Config.empty) : Rule(config) {

override val defaultRuleIdAliases: Set<String> = setOf("DoubleMutability")
Expand Down
Expand Up @@ -7,6 +7,7 @@ import io.gitlab.arturbosch.detekt.api.Entity
import io.gitlab.arturbosch.detekt.api.Issue
import io.gitlab.arturbosch.detekt.api.Rule
import io.gitlab.arturbosch.detekt.api.Severity
import io.gitlab.arturbosch.detekt.api.internal.ActiveByDefault
import io.gitlab.arturbosch.detekt.api.internal.RequiresTypeResolution
import org.jetbrains.kotlin.descriptors.CallableDescriptor
import org.jetbrains.kotlin.psi.KtCallableDeclaration
Expand Down Expand Up @@ -38,6 +39,7 @@ import org.jetbrains.kotlin.types.isFlexible
*
*/
@RequiresTypeResolution
@ActiveByDefault(since = "1.21.0")
class HasPlatformType(config: Config) : Rule(config) {

override val issue = Issue(
Expand Down
Expand Up @@ -9,6 +9,7 @@ import io.gitlab.arturbosch.detekt.api.Issue
import io.gitlab.arturbosch.detekt.api.Rule
import io.gitlab.arturbosch.detekt.api.Severity
import io.gitlab.arturbosch.detekt.api.config
import io.gitlab.arturbosch.detekt.api.internal.ActiveByDefault
import io.gitlab.arturbosch.detekt.api.internal.Configuration
import io.gitlab.arturbosch.detekt.api.internal.RequiresTypeResolution
import io.gitlab.arturbosch.detekt.api.simplePatternToRegex
Expand Down Expand Up @@ -37,6 +38,7 @@ import org.jetbrains.kotlin.types.typeUtil.isUnit
* </compliant>
*/
@RequiresTypeResolution
@ActiveByDefault(since = "1.21.0")
class IgnoredReturnValue(config: Config = Config.empty) : Rule(config) {

override val issue: Issue = Issue(
Expand Down
Expand Up @@ -7,6 +7,7 @@ import io.gitlab.arturbosch.detekt.api.Entity
import io.gitlab.arturbosch.detekt.api.Issue
import io.gitlab.arturbosch.detekt.api.Rule
import io.gitlab.arturbosch.detekt.api.Severity
import io.gitlab.arturbosch.detekt.api.internal.ActiveByDefault
import org.jetbrains.kotlin.lexer.KtTokens
import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.psi.KtPostfixExpression
Expand Down Expand Up @@ -42,6 +43,7 @@ import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameSafe
* map.getOrElse("key", { "" })
* </compliant>
*/
@ActiveByDefault(since = "1.21.0")
class MapGetWithNotNullAssertionOperator(config: Config) : Rule(config) {

override val issue: Issue =
Expand Down
Expand Up @@ -7,12 +7,14 @@ import io.gitlab.arturbosch.detekt.api.Entity
import io.gitlab.arturbosch.detekt.api.Issue
import io.gitlab.arturbosch.detekt.api.Rule
import io.gitlab.arturbosch.detekt.api.Severity
import io.gitlab.arturbosch.detekt.api.internal.ActiveByDefault
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.psi.KtPackageDirective

/**
* Reports when the package declaration is missing.
*/
@ActiveByDefault(since = "1.21.0")
class MissingPackageDeclaration(config: Config = Config.empty) : Rule(config) {

override val issue = Issue(
Expand Down
Expand Up @@ -7,6 +7,7 @@ import io.gitlab.arturbosch.detekt.api.Entity
import io.gitlab.arturbosch.detekt.api.Issue
import io.gitlab.arturbosch.detekt.api.Rule
import io.gitlab.arturbosch.detekt.api.Severity
import io.gitlab.arturbosch.detekt.api.internal.ActiveByDefault
import io.gitlab.arturbosch.detekt.api.internal.RequiresTypeResolution
import io.gitlab.arturbosch.detekt.rules.safeAs
import org.jetbrains.kotlin.descriptors.ClassDescriptor
Expand Down Expand Up @@ -47,6 +48,7 @@ import org.jetbrains.kotlin.resolve.descriptorUtil.isSubclassOf
*
*/
@RequiresTypeResolution
@ActiveByDefault(since = "1.21.0")
class UnreachableCatchBlock(config: Config = Config.empty) : Rule(config) {
override val issue = Issue(
javaClass.simpleName,
Expand Down

0 comments on commit 6d2933d

Please sign in to comment.