detekt
detektKotlin の静的解析ツール。ルールの有効・無効は YAML の設定ファイルに書く。
detekt では、ルールの有効・無効やしきい値を YAML の設定ファイルで設定できます。
設定ファイルとベースラインも、アーキテクチャ定義に書いて katachi に伝えておくのがおすすめです。
@file:OptIn(ExperimentalKatachiApi::class)
import me.tbsten.katachi.ExperimentalKatachiApiimport me.tbsten.katachi.dsl.architecture
val projectArchitecture = architecture { "Tools".group { detekt() }}
// roles/Detekt.kt@file:OptIn(ExperimentalKatachiApi::class)
import me.tbsten.katachi.ExperimentalKatachiApiimport me.tbsten.katachi.dsl.DeclarationContainerScope
private const val detektConfigDir = "config/detekt"
fun DeclarationContainerScope.detekt() = "Detekt".group { "Config" { title = "detekt の設定ファイル" summary = "detekt のルールの有効・無効としきい値を書く YAML" layout { detektConfigDir / "*.yml".file() } }
"Baseline" { title = "detekt のベースライン" summary = "既存の指摘を許容するための baseline.xml(無くてもよい)" layout { detektConfigDir / "baseline.xml".file().optional() } } }