detekt-config.yml raw
1 build:
2 maxIssues: 0
3 excludeCorrectable: true
4 weights:
5 # complexity: 2
6 # LongParameterList: 1
7 # style: 1
8 # comments: 1
9
10 config:
11 validation: true
12 warningsAsErrors: true
13 checkExhaustiveness: true
14 # when writing own rules with new properties, exclude the property path e.g.: 'my_rule_set,.*>.*>[my_property]'
15 excludes: ''
16
17 processors:
18 active: true
19 exclude:
20 - 'DetektProgressListener'
21 # - 'KtFileCountProcessor'
22 # - 'PackageCountProcessor'
23 # - 'ClassCountProcessor'
24 # - 'FunctionCountProcessor'
25 # - 'PropertyCountProcessor'
26 # - 'ProjectComplexityProcessor'
27 # - 'ProjectCognitiveComplexityProcessor'
28 # - 'ProjectLLOCProcessor'
29 # - 'ProjectCLOCProcessor'
30 # - 'ProjectLOCProcessor'
31 # - 'ProjectSLOCProcessor'
32 # - 'LicenseHeaderLoaderExtension'
33
34 console-reports:
35 active: true
36 exclude:
37 - 'ProjectStatisticsReport'
38 - 'ComplexityReport'
39 - 'NotificationReport'
40 - 'FindingsReport'
41 - 'FileBasedFindingsReport'
42 # - 'LiteFindingsReport'
43
44 output-reports:
45 active: true
46 exclude:
47 # - 'TxtOutputReport'
48 # - 'XmlOutputReport'
49 # - 'HtmlOutputReport'
50 # - 'MdOutputReport'
51 # - 'SarifOutputReport'
52
53 comments:
54 active: true
55 AbsentOrWrongFileLicense:
56 active: false
57 licenseTemplateFile: 'license.template'
58 licenseTemplateIsRegex: true
59 CommentOverPrivateFunction:
60 active: true
61 CommentOverPrivateProperty:
62 active: true
63 DeprecatedBlockTag:
64 active: true
65 EndOfSentenceFormat:
66 active: true
67 endOfSentenceFormat: '([.?!][ \t\n\r\f<])|([.?!:]$)'
68 KDocReferencesNonPublicProperty:
69 active: true
70 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**']
71 OutdatedDocumentation:
72 active: true
73 matchTypeParameters: true
74 matchDeclarationsOrder: true
75 allowParamOnConstructorProperties: true
76 UndocumentedPublicClass:
77 active: false
78 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**']
79 searchInNestedClass: true
80 searchInInnerClass: true
81 searchInInnerObject: true
82 searchInInnerInterface: true
83 searchInProtectedClass: true
84 UndocumentedPublicFunction:
85 active: false
86 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**']
87 searchProtectedFunction: true
88 UndocumentedPublicProperty:
89 active: false
90 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**']
91 searchProtectedProperty: true
92
93 complexity:
94 active: true
95 CognitiveComplexMethod:
96 active: true
97 threshold: 15
98 ComplexCondition:
99 active: true
100 threshold: 4
101 ComplexInterface:
102 active: true
103 threshold: 10
104 includeStaticDeclarations: true
105 includePrivateDeclarations: true
106 ignoreOverloaded: true
107 CyclomaticComplexMethod:
108 active: true
109 threshold: 15
110 ignoreSingleWhenExpression: true
111 ignoreSimpleWhenEntries: true
112 ignoreNestingFunctions: true
113 nestingFunctions:
114 - 'also'
115 - 'apply'
116 - 'forEach'
117 - 'isNotNull'
118 - 'ifNull'
119 - 'let'
120 - 'run'
121 - 'use'
122 - 'with'
123 LabeledExpression:
124 active: true
125 ignoredLabels: []
126 LargeClass:
127 active: true
128 threshold: 600
129 LongMethod:
130 active: true
131 threshold: 60
132 LongParameterList:
133 active: true
134 functionThreshold: 6
135 constructorThreshold: 7
136 ignoreDefaultParameters: true
137 ignoreDataClasses: true
138 ignoreAnnotatedParameter: []
139 MethodOverloading:
140 active: true
141 threshold: 6
142 NamedArguments:
143 active: true
144 threshold: 3
145 ignoreArgumentsMatchingNames: true
146 NestedBlockDepth:
147 active: true
148 threshold: 4
149 NestedScopeFunctions:
150 active: true
151 threshold: 1
152 functions:
153 - 'kotlin.apply'
154 - 'kotlin.run'
155 - 'kotlin.with'
156 - 'kotlin.let'
157 - 'kotlin.also'
158 ReplaceSafeCallChainWithRun:
159 active: true
160 StringLiteralDuplication:
161 active: true
162 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**']
163 threshold: 3
164 ignoreAnnotation: true
165 excludeStringsWithLessThan5Characters: true
166 ignoreStringsRegex: '$^'
167 TooManyFunctions:
168 active: true
169 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**']
170 thresholdInFiles: 11
171 thresholdInClasses: 11
172 thresholdInInterfaces: 11
173 thresholdInObjects: 11
174 thresholdInEnums: 11
175 ignoreDeprecated: true
176 ignorePrivate: true
177 ignoreOverridden: true
178
179 coroutines:
180 active: true
181 GlobalCoroutineUsage:
182 active: true
183 InjectDispatcher:
184 active: true
185 dispatcherNames:
186 - 'IO'
187 - 'Default'
188 - 'Unconfined'
189 RedundantSuspendModifier:
190 active: true
191 SleepInsteadOfDelay:
192 active: true
193 SuspendFunSwallowedCancellation:
194 active: true
195 SuspendFunWithCoroutineScopeReceiver:
196 active: true
197 SuspendFunWithFlowReturnType:
198 active: true
199
200 empty-blocks:
201 active: true
202 EmptyCatchBlock:
203 active: true
204 allowedExceptionNameRegex: '_|(ignore|expected).*'
205 EmptyClassBlock:
206 active: true
207 EmptyDefaultConstructor:
208 active: true
209 EmptyDoWhileBlock:
210 active: true
211 EmptyElseBlock:
212 active: true
213 EmptyFinallyBlock:
214 active: true
215 EmptyForBlock:
216 active: true
217 EmptyFunctionBlock:
218 active: true
219 ignoreOverridden: true
220 EmptyIfBlock:
221 active: true
222 EmptyInitBlock:
223 active: true
224 EmptyKtFile:
225 active: true
226 EmptySecondaryConstructor:
227 active: true
228 EmptyTryBlock:
229 active: true
230 EmptyWhenBlock:
231 active: true
232 EmptyWhileBlock:
233 active: true
234
235 exceptions:
236 active: true
237 ExceptionRaisedInUnexpectedLocation:
238 active: true
239 methodNames:
240 - 'equals'
241 - 'finalize'
242 - 'hashCode'
243 - 'toString'
244 InstanceOfCheckForException:
245 active: true
246 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**']
247 NotImplementedDeclaration:
248 active: true
249 ObjectExtendsThrowable:
250 active: true
251 PrintStackTrace:
252 active: true
253 RethrowCaughtException:
254 active: true
255 ReturnFromFinally:
256 active: true
257 ignoreLabeled: true
258 SwallowedException:
259 active: true
260 ignoredExceptionTypes:
261 - 'InterruptedException'
262 - 'MalformedURLException'
263 - 'NumberFormatException'
264 - 'ParseException'
265 allowedExceptionNameRegex: '_|(ignore|expected).*'
266 ThrowingExceptionFromFinally:
267 active: true
268 ThrowingExceptionInMain:
269 active: true
270 ThrowingExceptionsWithoutMessageOrCause:
271 active: true
272 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**']
273 exceptions:
274 - 'ArrayIndexOutOfBoundsException'
275 - 'Exception'
276 - 'IllegalArgumentException'
277 - 'IllegalMonitorStateException'
278 - 'IllegalStateException'
279 - 'IndexOutOfBoundsException'
280 - 'NullPointerException'
281 - 'RuntimeException'
282 - 'Throwable'
283 ThrowingNewInstanceOfSameException:
284 active: true
285 TooGenericExceptionCaught:
286 active: true
287 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**']
288 exceptionNames:
289 - 'ArrayIndexOutOfBoundsException'
290 - 'Error'
291 - 'Exception'
292 - 'IllegalMonitorStateException'
293 - 'IndexOutOfBoundsException'
294 - 'NullPointerException'
295 - 'RuntimeException'
296 - 'Throwable'
297 allowedExceptionNameRegex: '_|(ignore|expected).*'
298 TooGenericExceptionThrown:
299 active: true
300 exceptionNames:
301 - 'Error'
302 - 'Exception'
303 - 'RuntimeException'
304 - 'Throwable'
305
306 naming:
307 active: true
308 BooleanPropertyNaming:
309 active: true
310 allowedPattern: '^(is|has|are)'
311 ClassNaming:
312 active: true
313 classPattern: '[A-Z][a-zA-Z0-9]*'
314 ConstructorParameterNaming:
315 active: true
316 parameterPattern: '[a-z][A-Za-z0-9]*'
317 privateParameterPattern: '[a-z][A-Za-z0-9]*'
318 excludeClassPattern: '$^'
319 EnumNaming:
320 active: true
321 enumEntryPattern: '[A-Z][_a-zA-Z0-9]*'
322 ForbiddenClassName:
323 active: true
324 forbiddenName: []
325 FunctionMaxLength:
326 active: true
327 maximumFunctionNameLength: 30
328 FunctionMinLength:
329 active: true
330 minimumFunctionNameLength: 3
331 FunctionNaming:
332 active: true
333 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**']
334 functionPattern: '[a-z][a-zA-Z0-9]*'
335 excludeClassPattern: '$^'
336 FunctionParameterNaming:
337 active: true
338 parameterPattern: '[a-z][A-Za-z0-9]*'
339 excludeClassPattern: '$^'
340 InvalidPackageDeclaration:
341 active: true
342 rootPackage: ''
343 requireRootInDeclaration: false
344 LambdaParameterNaming:
345 active: true
346 parameterPattern: '[a-z][A-Za-z0-9]*|_'
347 MatchingDeclarationName:
348 active: true
349 mustBeFirst: true
350 MemberNameEqualsClassName:
351 active: true
352 ignoreOverridden: true
353 NoNameShadowing:
354 active: true
355 NonBooleanPropertyPrefixedWithIs:
356 active: true
357 ObjectPropertyNaming:
358 active: true
359 constantPattern: '[A-Za-z][_A-Za-z0-9]*'
360 propertyPattern: '[A-Za-z][_A-Za-z0-9]*'
361 privatePropertyPattern: '(_)?[A-Za-z][_A-Za-z0-9]*'
362 PackageNaming:
363 active: true
364 packagePattern: '[a-z]+(\.[a-z][A-Za-z0-9]*)*'
365 TopLevelPropertyNaming:
366 active: true
367 constantPattern: '[A-Z][_A-Z0-9]*'
368 propertyPattern: '[A-Za-z][_A-Za-z0-9]*'
369 privatePropertyPattern: '_?[A-Za-z][_A-Za-z0-9]*'
370 VariableMaxLength:
371 active: true
372 maximumVariableNameLength: 64
373 VariableMinLength:
374 active: true
375 minimumVariableNameLength: 1
376 VariableNaming:
377 active: true
378 variablePattern: '[a-z][A-Za-z0-9]*'
379 privateVariablePattern: '(_)?[a-z][A-Za-z0-9]*'
380 excludeClassPattern: '$^'
381
382 performance:
383 active: true
384 ArrayPrimitive:
385 active: true
386 CouldBeSequence:
387 active: true
388 threshold: 3
389 ForEachOnRange:
390 active: true
391 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**']
392 SpreadOperator:
393 active: true
394 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**']
395 UnnecessaryPartOfBinaryExpression:
396 active: true
397 UnnecessaryTemporaryInstantiation:
398 active: true
399
400 potential-bugs:
401 active: true
402 AvoidReferentialEquality:
403 active: true
404 forbiddenTypePatterns:
405 - 'kotlin.String'
406 CastNullableToNonNullableType:
407 active: true
408 CastToNullableType:
409 active: true
410 Deprecation:
411 active: true
412 DontDowncastCollectionTypes:
413 active: true
414 DoubleMutabilityForCollection:
415 active: true
416 mutableTypes:
417 - 'kotlin.collections.MutableList'
418 - 'kotlin.collections.MutableMap'
419 - 'kotlin.collections.MutableSet'
420 - 'java.util.ArrayList'
421 - 'java.util.LinkedHashSet'
422 - 'java.util.HashSet'
423 - 'java.util.LinkedHashMap'
424 - 'java.util.HashMap'
425 ElseCaseInsteadOfExhaustiveWhen:
426 active: true
427 ignoredSubjectTypes: []
428 EqualsAlwaysReturnsTrueOrFalse:
429 active: true
430 EqualsWithHashCodeExist:
431 active: true
432 ExitOutsideMain:
433 active: true
434 ExplicitGarbageCollectionCall:
435 active: true
436 HasPlatformType:
437 active: true
438 IgnoredReturnValue:
439 active: true
440 restrictToConfig: true
441 returnValueAnnotations:
442 - 'CheckResult'
443 - '*.CheckResult'
444 - 'CheckReturnValue'
445 - '*.CheckReturnValue'
446 ignoreReturnValueAnnotations:
447 - 'CanIgnoreReturnValue'
448 - '*.CanIgnoreReturnValue'
449 returnValueTypes:
450 - 'kotlin.sequences.Sequence'
451 - 'kotlinx.coroutines.flow.*Flow'
452 - 'java.util.stream.*Stream'
453 ignoreFunctionCall: []
454 ImplicitDefaultLocale:
455 active: true
456 ImplicitUnitReturnType:
457 active: true
458 allowExplicitReturnType: true
459 InvalidRange:
460 active: true
461 IteratorHasNextCallsNextMethod:
462 active: true
463 IteratorNotThrowingNoSuchElementException:
464 active: true
465 LateinitUsage:
466 active: false
467 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**']
468 ignoreOnClassesPattern: ''
469 MapGetWithNotNullAssertionOperator:
470 active: true
471 MissingPackageDeclaration:
472 active: true
473 excludes: ['**/*.kts']
474 NullCheckOnMutableProperty:
475 active: true
476 NullableToStringCall:
477 active: true
478 PropertyUsedBeforeDeclaration:
479 active: true
480 UnconditionalJumpStatementInLoop:
481 active: true
482 UnnecessaryNotNullCheck:
483 active: true
484 UnnecessaryNotNullOperator:
485 active: true
486 UnnecessarySafeCall:
487 active: true
488 UnreachableCatchBlock:
489 active: true
490 UnreachableCode:
491 active: true
492 UnsafeCallOnNullableType:
493 active: true
494 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**']
495 UnsafeCast:
496 active: true
497 UnusedUnaryOperator:
498 active: true
499 UselessPostfixExpression:
500 active: true
501 WrongEqualsTypeParameter:
502 active: true
503
504 style:
505 active: true
506 AlsoCouldBeApply:
507 active: true
508 BracesOnIfStatements:
509 active: true
510 singleLine: 'never'
511 multiLine: 'always'
512 BracesOnWhenStatements:
513 active: true
514 singleLine: 'necessary'
515 multiLine: 'consistent'
516 CanBeNonNullable:
517 active: true
518 CascadingCallWrapping:
519 active: true
520 includeElvis: true
521 ClassOrdering:
522 active: true
523 CollapsibleIfStatements:
524 active: true
525 DataClassContainsFunctions:
526 active: true
527 conversionFunctionPrefix:
528 - 'to'
529 allowOperators: true
530 DataClassShouldBeImmutable:
531 active: true
532 DestructuringDeclarationWithTooManyEntries:
533 active: true
534 maxDestructuringEntries: 3
535 DoubleNegativeLambda:
536 active: true
537 negativeFunctions:
538 - reason: 'Use `takeIf` instead.'
539 value: 'takeUnless'
540 - reason: 'Use `all` instead.'
541 value: 'none'
542 negativeFunctionNameParts:
543 - 'not'
544 - 'non'
545 EqualsNullCall:
546 active: true
547 EqualsOnSignatureLine:
548 active: true
549 ExplicitCollectionElementAccessMethod:
550 active: true
551 ExplicitItLambdaParameter:
552 active: true
553 ExpressionBodySyntax:
554 active: true
555 includeLineWrapping: true
556 ForbiddenAnnotation:
557 active: true
558 annotations:
559 - reason: 'it is a java annotation. Use `Suppress` instead.'
560 value: 'java.lang.SuppressWarnings'
561 - reason: 'it is a java annotation. Use `kotlin.Deprecated` instead.'
562 value: 'java.lang.Deprecated'
563 - reason: 'it is a java annotation. Use `kotlin.annotation.MustBeDocumented` instead.'
564 value: 'java.lang.annotation.Documented'
565 - reason: 'it is a java annotation. Use `kotlin.annotation.Target` instead.'
566 value: 'java.lang.annotation.Target'
567 - reason: 'it is a java annotation. Use `kotlin.annotation.Retention` instead.'
568 value: 'java.lang.annotation.Retention'
569 - reason: 'it is a java annotation. Use `kotlin.annotation.Repeatable` instead.'
570 value: 'java.lang.annotation.Repeatable'
571 - reason: 'Kotlin does not support @Inherited annotation, see https://youtrack.jetbrains.com/issue/KT-22265'
572 value: 'java.lang.annotation.Inherited'
573 ForbiddenComment:
574 active: true
575 comments:
576 - reason: 'Forbidden FIXME todo marker in comment, please fix the problem.'
577 value: 'FIXME:'
578 - reason: 'Forbidden STOPSHIP todo marker in comment, please address the problem before shipping the code.'
579 value: 'STOPSHIP:'
580 - reason: 'Forbidden TODO todo marker in comment, please do the changes.'
581 value: 'TODO:'
582 allowedPatterns: ''
583 ForbiddenImport:
584 active: true
585 imports: []
586 forbiddenPatterns: ''
587 ForbiddenMethodCall:
588 active: true
589 methods:
590 - reason: 'print does not allow you to configure the output stream. Use a logger instead.'
591 value: 'kotlin.io.print'
592 - reason: 'println does not allow you to configure the output stream. Use a logger instead.'
593 value: 'kotlin.io.println'
594 ForbiddenSuppress:
595 active: true
596 rules: []
597 ForbiddenVoid:
598 active: true
599 ignoreOverridden: true
600 ignoreUsageInGenerics: true
601 FunctionOnlyReturningConstant:
602 active: true
603 ignoreOverridableFunction: true
604 ignoreActualFunction: true
605 excludedFunctions: []
606 LoopWithTooManyJumpStatements:
607 active: true
608 maxJumpCount: 1
609 MagicNumber:
610 active: true
611 excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/jsTest/**', '**/iosTest/**', '**/*.kts']
612 ignoreNumbers:
613 - '-1'
614 - '0'
615 - '1'
616 - '2'
617 ignoreHashCodeFunction: true
618 ignorePropertyDeclaration: true
619 ignoreLocalVariableDeclaration: true
620 ignoreConstantDeclaration: true
621 ignoreCompanionObjectPropertyDeclaration: true
622 ignoreAnnotation: true
623 ignoreNamedArgument: true
624 ignoreEnums: true
625 ignoreRanges: true
626 ignoreExtensionFunctions: true
627 MandatoryBracesLoops:
628 active: true
629 MaxChainedCallsOnSameLine:
630 active: true
631 maxChainedCalls: 5
632 MaxLineLength:
633 active: true
634 maxLineLength: 120
635 excludePackageStatements: true
636 excludeImportStatements: true
637 excludeCommentStatements: true
638 excludeRawStrings: true
639 MayBeConst:
640 active: true
641 ModifierOrder:
642 active: true
643 MultilineLambdaItParameter:
644 active: true
645 MultilineRawStringIndentation:
646 active: true
647 indentSize: 4
648 trimmingMethods:
649 - 'trimIndent'
650 - 'trimMargin'
651 NestedClassesVisibility:
652 active: true
653 NewLineAtEndOfFile:
654 active: true
655 NoTabs:
656 active: true
657 NullableBooleanCheck:
658 active: true
659 ObjectLiteralToLambda:
660 active: true
661 OptionalAbstractKeyword:
662 active: true
663 OptionalUnit:
664 active: true
665 PreferToOverPairSyntax:
666 active: true
667 ProtectedMemberInFinalClass:
668 active: true
669 RedundantExplicitType:
670 active: true
671 RedundantHigherOrderMapUsage:
672 active: true
673 RedundantVisibilityModifierRule:
674 active: true
675 ReturnCount:
676 active: true
677 max: 2
678 excludedFunctions:
679 - 'equals'
680 excludeLabeled: true
681 excludeReturnFromLambda: true
682 excludeGuardClauses: true
683 SafeCast:
684 active: true
685 SerialVersionUIDInSerializableClass:
686 active: true
687 SpacingBetweenPackageAndImports:
688 active: true
689 StringShouldBeRawString:
690 active: true
691 maxEscapedCharacterCount: 2
692 ignoredCharacters: []
693 ThrowsCount:
694 active: true
695 max: 2
696 excludeGuardClauses: true
697 TrailingWhitespace:
698 active: true
699 TrimMultilineRawString:
700 active: true
701 trimmingMethods:
702 - 'trimIndent'
703 - 'trimMargin'
704 UnderscoresInNumericLiterals:
705 active: true
706 acceptableLength: 4
707 allowNonStandardGrouping: true
708 UnnecessaryAbstractClass:
709 active: true
710 UnnecessaryAnnotationUseSiteTarget:
711 active: true
712 UnnecessaryApply:
713 active: true
714 UnnecessaryBackticks:
715 active: true
716 UnnecessaryBracesAroundTrailingLambda:
717 active: true
718 UnnecessaryFilter:
719 active: true
720 UnnecessaryInheritance:
721 active: true
722 UnnecessaryInnerClass:
723 active: true
724 UnnecessaryLet:
725 active: true
726 UnnecessaryParentheses:
727 active: true
728 allowForUnclearPrecedence: true
729 UntilInsteadOfRangeTo:
730 active: true
731 UnusedImports:
732 active: true
733 UnusedParameter:
734 active: true
735 allowedNames: 'ignored|expected'
736 UnusedPrivateClass:
737 active: true
738 UnusedPrivateMember:
739 active: true
740 allowedNames: ''
741 UnusedPrivateProperty:
742 active: true
743 allowedNames: '_|ignored|expected|serialVersionUID'
744 UseAnyOrNoneInsteadOfFind:
745 active: true
746 UseArrayLiteralsInAnnotations:
747 active: true
748 UseCheckNotNull:
749 active: true
750 UseCheckOrError:
751 active: true
752 UseDataClass:
753 active: true
754 allowVars: true
755 UseEmptyCounterpart:
756 active: true
757 UseIfEmptyOrIfBlank:
758 active: true
759 UseIfInsteadOfWhen:
760 active: true
761 ignoreWhenContainingVariableDeclaration: true
762 UseIsNullOrEmpty:
763 active: true
764 UseLet:
765 active: true
766 UseOrEmpty:
767 active: true
768 UseRequire:
769 active: true
770 UseRequireNotNull:
771 active: true
772 UseSumOfInsteadOfFlatMapSize:
773 active: true
774 UselessCallOnNotNull:
775 active: true
776 UtilityClassWithPublicConstructor:
777 active: true
778 VarCouldBeVal:
779 active: true
780 ignoreLateinitVar: true
781 WildcardImport:
782 active: true
783 excludeImports:
784 - 'java.util.*'
785