-
-
Notifications
You must be signed in to change notification settings - Fork 117
Expand file tree
/
Copy pathdetekt-config.yml
More file actions
163 lines (150 loc) · 3.2 KB
/
Copy pathdetekt-config.yml
File metadata and controls
163 lines (150 loc) · 3.2 KB
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
build:
maxIssues: 0
excludeCorrectable: false
weights:
complexity: 2
LongParameterList: 1
style: 1
comments: 1
config:
validation: true
warningsAsErrors: false
processors:
active: true
console-reports:
active: true
output-reports:
active: true
exclude:
- 'TxtOutputReport'
comments:
active: true
CommentOverPrivateFunction:
active: false
UndocumentedPublicClass:
active: false
UndocumentedPublicFunction:
active: false
complexity:
active: true
CyclomaticComplexMethod:
active: true
threshold: 18
ignoreAnnotated: ['Composable']
LargeClass:
active: true
threshold: 2000 # NativeReticulumProtocol: 93 override methods from ReticulumProtocol interface
excludes: ['**/test/**', '**/androidTest/**']
LongMethod:
active: true
threshold: 80
ignoreAnnotated: ['Composable']
LongParameterList:
active: true
functionThreshold: 8
constructorThreshold: 10
ignoreAnnotated: ['Composable']
NestedBlockDepth:
active: true
threshold: 5
TooManyFunctions:
active: true
thresholdInFiles: 15
thresholdInClasses: 20
thresholdInInterfaces: 25
thresholdInObjects: 15
thresholdInEnums: 15
ignoreOverridden: true
coroutines:
active: true
GlobalCoroutineUsage:
active: true
SuspendFunWithFlowReturnType:
active: true
naming:
active: true
FunctionNaming:
active: true
functionPattern: '[a-z][a-zA-Z0-9]*'
ignoreAnnotated: ['Composable']
VariableNaming:
active: true
variablePattern: '[a-z][A-Za-z0-9]*'
TopLevelPropertyNaming:
active: true
constantPattern: '[A-Z][_A-Z0-9]*'
performance:
active: true
ForEachOnRange:
active: true
SpreadOperator:
active: true
potential-bugs:
active: true
EqualsAlwaysReturnsTrueOrFalse:
active: true
EqualsWithHashCodeExist:
active: true
ExplicitGarbageCollectionCall:
active: true
UnreachableCode:
active: true
exceptions:
active: true
TooGenericExceptionCaught:
active: true
exceptionNames:
- 'ArrayIndexOutOfBoundsException'
- 'Error'
- 'IllegalMonitorStateException'
- 'IndexOutOfBoundsException'
- 'NullPointerException'
- 'RuntimeException'
- 'Throwable'
allowedExceptionNameRegex: '_|(ignore|expected).*'
SwallowedException:
active: true
ignoredExceptionTypes:
- 'InterruptedException'
- 'MalformedURLException'
- 'NumberFormatException'
- 'ParseException'
allowedExceptionNameRegex: '_|(ignore|expected).*'
columba:
active: true
BleLoggingTag:
active: true
DiscardedConcurrencyReturn:
active: true
NoRelaxedMocks:
active: true
NoVerifyOnlyTests:
active: true
ReflectivelyKeptRequired:
active: true
StateFlowPollingLoop:
active: true
style:
active: true
ForbiddenComment:
active: false
MagicNumber:
active: false
MaxLineLength:
active: true
maxLineLength: 200
ReturnCount:
active: true
max: 3
ThrowsCount:
active: true
max: 2
UnusedPrivateMember:
active: true
UseCheckOrError:
active: true
UseRequire:
active: true
WildcardImport:
active: true
excludes: ['**/test/**', '**/androidTest/**']