72 lines
2.2 KiB
YAML
72 lines
2.2 KiB
YAML
# Конфигурация detekt для LMS. Значения подобраны под текущий стиль кода:
|
||
# базовые правила включены (buildUponDefaultConfig = true), шумные отключены или ослаблены.
|
||
build:
|
||
maxIssues: 0
|
||
weights: {}
|
||
|
||
config:
|
||
validation: true
|
||
warningsAsErrors: false
|
||
|
||
complexity:
|
||
# Все правила сложности — строго на значениях detekt по умолчанию. Крупные агрегаты
|
||
# раздроблены: ApiClient — по доменам, AdminController — AdminSupport + 5 контроллеров,
|
||
# импорт — ContentImporter, авторинг/порядок и оценки — отдельные сервисы, submissions —
|
||
# отдельный контроллер; MVC-формы связаны через @ModelAttribute-DTO.
|
||
LongMethod:
|
||
threshold: 60
|
||
LongParameterList:
|
||
functionThreshold: 6
|
||
constructorThreshold: 7
|
||
ignoreDefaultParameters: true
|
||
TooManyFunctions:
|
||
thresholdInFiles: 20
|
||
thresholdInClasses: 20
|
||
thresholdInInterfaces: 20
|
||
thresholdInObjects: 20
|
||
thresholdInEnums: 20
|
||
LargeClass:
|
||
threshold: 600
|
||
ComplexCondition:
|
||
threshold: 4
|
||
CyclomaticComplexMethod:
|
||
threshold: 15
|
||
|
||
style:
|
||
MagicNumber:
|
||
active: false
|
||
MaxLineLength:
|
||
active: false
|
||
ReturnCount:
|
||
max: 4
|
||
WildcardImport:
|
||
active: true
|
||
UnusedPrivateMember:
|
||
active: true
|
||
LoopWithTooManyJumpStatements:
|
||
maxJumpCount: 2
|
||
# MVC-контроллеры возвращают имя шаблона — это не «магическая константа».
|
||
FunctionOnlyReturningConstant:
|
||
ignoreAnnotated:
|
||
- 'GetMapping'
|
||
- 'PostMapping'
|
||
|
||
performance:
|
||
# runApplication<App>(*args) — идиоматичная точка входа Spring Boot.
|
||
SpreadOperator:
|
||
active: false
|
||
|
||
naming:
|
||
FunctionNaming:
|
||
ignoreAnnotated:
|
||
- 'Test'
|
||
MatchingDeclarationName:
|
||
active: false
|
||
# Enum-значения хранятся в БД и API строками в lowerCamelCase.
|
||
EnumNaming:
|
||
active: false
|
||
|
||
empty-blocks:
|
||
EmptyCatchBlock:
|
||
allowedExceptionNameRegex: 'ignored|expected|_'
|