forked from detekt/detekt
/
detekt.yml
140 lines (132 loc) · 3.1 KB
/
detekt.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
build:
maxIssues: 1
comments:
CommentOverPrivateProperty:
active: true
UndocumentedPublicClass:
active: true
excludes: "**/*.kt"
includes: "**/detekt-api/src/main/**/api/*.kt"
UndocumentedPublicFunction:
active: true
excludes: "**/*.kt"
includes: "**/detekt-api/src/main/**/api/*.kt"
complexity:
StringLiteralDuplication:
active: true
excludes: "**/test/**,**/*.Test.kt,**/*.Spec.kt"
threshold: 5
ignoreAnnotation: true
excludeStringsWithLessThan5Characters: true
ignoreStringsRegex: '$^'
ComplexInterface:
active: true
threshold: 10
includeStaticDeclarations: false
ComplexMethod:
active: true
ignoreSingleWhenExpression: true
MethodOverloading:
active: true
exceptions:
NotImplementedDeclaration:
active: true
InstanceOfCheckForException:
active: true
RethrowCaughtException:
active: true
ReturnFromFinally:
active: true
SwallowedException:
active: false
ThrowingExceptionFromFinally:
active: true
ThrowingExceptionsWithoutMessageOrCause:
active: true
ThrowingNewInstanceOfSameException:
active: true
formatting:
active: true
android: false
autoCorrect: true
MaximumLineLength:
active: false
naming:
MemberNameEqualsClassName:
active: true
VariableNaming:
active: true
variablePattern: '[a-z][A-Za-z0-9]*'
privateVariablePattern: '(_)?[a-z][A-Za-z0-9]*'
excludeClassPattern: '$^'
performance:
ArrayPrimitive:
active: true
potential-bugs:
EqualsAlwaysReturnsTrueOrFalse:
active: true
InvalidRange:
active: true
IteratorHasNextCallsNextMethod:
active: true
IteratorNotThrowingNoSuchElementException:
active: true
MissingWhenCase:
active: true
RedundantElseInWhen:
active: true
UnsafeCallOnNullableType:
active: true
UnsafeCast:
active: true
excludes: "**/test/**,**/*.Test.kt,**/*.Spec.kt"
UselessPostfixExpression:
active: true
WrongEqualsTypeParameter:
active: true
style:
CollapsibleIfStatements:
active: true
EqualsNullCall:
active: true
ForbiddenComment:
active: true
values: 'TODO:,FIXME:,STOPSHIP:,@author'
FunctionOnlyReturningConstant:
active: true
LoopWithTooManyJumpStatements:
active: true
LibraryCodeMustSpecifyReturnType:
active: true
excludes: "**/*.kt"
includes: "**/detekt-api/src/main/**/api/*.kt"
MaxLineLength:
excludes: "**/test/**,**/*.Test.kt,**/*.Spec.kt"
excludeCommentStatements: true
MagicNumber:
ignoreHashCodeFunction: true
ignorePropertyDeclaration: true
ignoreAnnotation: true
ignoreEnums: true
ignoreNumbers: '-1,0,1,2,100,1000'
MayBeConst:
active: true
NestedClassesVisibility:
active: true
ProtectedMemberInFinalClass:
active: true
SpacingBetweenPackageAndImports:
active: true
UnnecessaryAbstractClass:
active: true
UnnecessaryInheritance:
active: true
UnusedPrivateClass:
active: true
UnusedPrivateMember:
active: true
allowedNames: "(_|ignored|expected)"
UselessCallOnNotNull:
active: true
UtilityClassWithPublicConstructor:
active: true