fix(android): migrate detekt block + task types to 2.0 DSL

Three breaking changes I missed when bumping to 2.0.0-alpha.3:

  1. Gradle plugin id changed: io.gitlab.arturbosch.detekt -> dev.detekt
  2. Task FQN changed: io.gitlab.arturbosch.detekt.Detekt
     -> dev.detekt.gradle.Detekt
     (same for DetektCreateBaselineTask)
  3. jvmTarget is now a Property API (.set("17")) instead of var assignment

Also dropped `autoCorrect` from the detekt {} block — it's not in the
2.0 options list per the official getting-started docs.

Per the 2.0 release notes: "the workaround of disabling the new DSL
and built-in Kotlin via gradle.properties for AGP 9.x projects is no
longer required" — so our existing AGP 9 + built-in-Kotlin setup is
expected to work cleanly with detekt 2.0.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-22 08:13:36 -04:00
parent f210cbbc3e
commit a68eb1c533
2 changed files with 10 additions and 10 deletions
+9 -9
View File
@@ -94,18 +94,18 @@ detekt {
config.setFrom(files("$rootDir/config/detekt.yml"))
buildUponDefaultConfig = true
parallel = true
autoCorrect = false
// `autoCorrect` was dropped in detekt 2.0's DSL options list.
}
// detekt 1.23.7 bundles kotlin-compiler-embeddable 1.9.10, which caps
// `--jvm-target` at 22. The runner's JDK is 25 and detekt would auto-
// detect that, so pin the analyzer target to match our actual bytecode
// target (17).
tasks.withType<io.gitlab.arturbosch.detekt.Detekt>().configureEach {
jvmTarget = "17"
// detekt 2.0 moved its task types to the `dev.detekt.gradle` package and
// flipped `jvmTarget` to the Property API. Pin to 17 to match our actual
// bytecode target (compileOptions.targetCompatibility +
// kotlin.compilerOptions.jvmTarget).
tasks.withType<dev.detekt.gradle.Detekt>().configureEach {
jvmTarget.set("17")
}
tasks.withType<io.gitlab.arturbosch.detekt.DetektCreateBaselineTask>().configureEach {
jvmTarget = "17"
tasks.withType<dev.detekt.gradle.DetektCreateBaselineTask>().configureEach {
jvmTarget.set("17")
}
dependencies {
+1 -1
View File
@@ -86,4 +86,4 @@ ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
hilt = { id = "com.google.dagger.hilt.android", version.ref = "hilt" }
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
ktlint = { id = "org.jlleitschuh.gradle.ktlint", version.ref = "ktlint-gradle" }
detekt = { id = "io.gitlab.arturbosch.detekt", version.ref = "detekt" }
detekt = { id = "dev.detekt", version.ref = "detekt" }