-
Notifications
You must be signed in to change notification settings - Fork 9
/
detekt.yml
246 lines (239 loc) · 4.83 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
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
build:
maxIssues: 100
complexity:
active: true
ComplexCondition:
active: true
ComplexMethod:
active: true
threshold: 20
ignoreSimpleWhenEntries: true
LargeClass:
threshold: 250
active: true
TooManyFunctions:
active: true
thresholdInFiles: 30
thresholdInClasses: 30
thresholdInInterfaces: 30
thresholdInObjects: 25
LongParameterList:
active: true
NestedBlockDepth:
active: true
threshold: 4
StringLiteralDuplication:
active: true
empty-blocks:
active: true
EmptyCatchBlock:
active: true
EmptyClassBlock:
active: true
EmptyDefaultConstructor:
active: true
EmptyDoWhileBlock:
active: true
EmptyElseBlock:
active: true
EmptyFinallyBlock:
active: true
EmptyForBlock:
active: true
EmptyFunctionBlock:
active: true
EmptyIfBlock:
active: true
EmptyInitBlock:
active: true
EmptyKtFile:
active: true
EmptySecondaryConstructor:
active: true
EmptyWhenBlock:
active: true
EmptyWhileBlock:
active: true
exceptions:
active: true
ExceptionRaisedInUnexpectedLocation:
active: true
InstanceOfCheckForException:
active: true
ReturnFromFinally:
active: true
TooGenericExceptionCaught:
active: false
SwallowedException:
active: true
ignoredExceptionTypes: 'CancellationException'
ThrowingExceptionFromFinally:
active: true
ThrowingExceptionsWithoutMessageOrCause:
active: true
ThrowingNewInstanceOfSameException:
active: true
TooGenericExceptionThrown:
active: true
naming:
active: true
ClassNaming:
active: true
ConstructorParameterNaming:
active: true
EnumNaming:
active: true
ForbiddenClassName:
active: true
FunctionMaxLength:
active: true
maximumFunctionNameLength: 35
FunctionMinLength:
active: true
FunctionNaming:
active: true
FunctionParameterNaming:
active: true
MatchingDeclarationName:
active: true
MemberNameEqualsClassName:
active: true
ObjectPropertyNaming:
active: true
PackageNaming:
active: true
TopLevelPropertyNaming:
active: true
VariableMaxLength:
active: true
maximumVariableNameLength: 50
VariableMinLength:
active: true
VariableNaming:
active: true
performance:
ArrayPrimitive:
active: true
ForEachOnRange:
active: true
SpreadOperator:
active: true
UnnecessaryTemporaryInstantiation:
active: true
potential-bugs:
active: true
DuplicateCaseInWhenExpression:
active: true
EqualsAlwaysReturnsTrueOrFalse:
active: true
EqualsWithHashCodeExist:
active: true
ExplicitGarbageCollectionCall:
active: true
InvalidRange:
active: true
IteratorHasNextCallsNextMethod:
active: true
IteratorNotThrowingNoSuchElementException:
active: true
UnconditionalJumpStatementInLoop:
active: true
UnreachableCode:
active: true
UnsafeCallOnNullableType:
active: true
UnsafeCast:
active: true
UselessPostfixExpression:
active: true
WrongEqualsTypeParameter:
active: true
style:
active: true
MaxLineLength:
active: false
CollapsibleIfStatements:
active: true
DataClassContainsFunctions:
active: false
EqualsNullCall:
active: true
ExplicitItLambdaParameter:
active: true
ExpressionBodySyntax:
active: true
ForbiddenComment:
active: true
ForbiddenImport:
active: true
ForbiddenVoid:
active: true
FunctionOnlyReturningConstant:
active: true
LoopWithTooManyJumpStatements:
active: true
MagicNumber:
active: true
MandatoryBracesIfStatements:
active: true
MayBeConst:
active: true
ModifierOrder:
active: true
NestedClassesVisibility:
active: false
NewLineAtEndOfFile:
active: true
NoTabs:
active: true
OptionalAbstractKeyword:
active: true
OptionalUnit:
active: true
OptionalWhenBraces:
active: true
PreferToOverPairSyntax:
active: false
ProtectedMemberInFinalClass:
active: true
RedundantVisibilityModifierRule:
active: true
ReturnCount:
active: true
max: 4
SafeCast:
active: true
SerialVersionUIDInSerializableClass:
active: true
SpacingBetweenPackageAndImports:
active: true
ThrowsCount:
active: true
TrailingWhitespace:
active: true
UnnecessaryAbstractClass:
active: false
ignoreAnnotated: ["dagger.Module,android.arch.persistence.room.Dao"]
UnnecessaryApply:
active: false # wait for fix
UnnecessaryInheritance:
active: true
UnnecessaryLet:
active: true
UnnecessaryParentheses:
active: true
UntilInsteadOfRangeTo:
active: true
UnusedImports:
active: false
UnusedPrivateMember:
active: true
UseDataClass:
active: true
UtilityClassWithPublicConstructor:
active: true
VarCouldBeVal:
active: true
WildcardImport:
active: true
excludeImports: 'kotlinx.android.synthetic.*'