From d957c1923fbbc2eaca63b5ad835824b25933afd4 Mon Sep 17 00:00:00 2001 From: Uwe Date: Fri, 5 Dec 2025 08:22:25 +0100 Subject: [PATCH] Add KSP plugin (2.3.3), migrate Room and Dagger to KSP --- app/build.gradle.kts | 18 ++++++++++-------- gradle/libs.versions.toml | 2 ++ 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 33fd4af6b0..ccb54e8692 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -6,6 +6,7 @@ plugins { id("com.android.application") kotlin("android") kotlin("kapt") + alias(libs.plugins.ksp) alias(libs.plugins.compose.compiler) } @@ -38,12 +39,15 @@ kotlin { kapt { arguments { arg("eventBusIndex", "com.battlelancer.seriesguide.SgEventBusIndex") - // Export schema for testing and in case the database ever needs to be built manually - // (like when migrating away from Room). - arg("room.schemaLocation", "$projectDir/schemas") } } +ksp { + // Export schema for testing and in case the database ever needs to be built manually + // (like when migrating away from Room). + arg("room.schemaLocation", "$projectDir/schemas") +} + android { namespace = "com.battlelancer.seriesguide" compileSdk = sgCompileSdk @@ -240,12 +244,10 @@ dependencies { implementation(libs.androidx.room.ktx) // Paging 3 Integration implementation(libs.androidx.room.paging) - // KSP appears deprecated. KSP 2 is still under development. - //noinspection KaptUsageInsteadOfKsp - kapt(libs.androidx.room.compiler) + ksp(libs.androidx.room.compiler) implementation(libs.dagger) - kapt(libs.dagger.compiler) + ksp(libs.dagger.compiler) implementation(libs.greenrobot.eventbus) kapt(libs.greenrobot.eventbus.processor) @@ -309,7 +311,7 @@ dependencies { androidTestImplementation(libs.truth) implementation(libs.findbugs.jsr305) androidTestImplementation(libs.findbugs.jsr305) - kaptAndroidTest(libs.dagger.compiler) + kspAndroidTest(libs.dagger.compiler) androidTestImplementation(libs.androidx.room.testing) // Local unit tests diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 927bce4863..368444659a 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -159,6 +159,8 @@ android = { id = "com.android.application", version = "8.11.2" } # 2.2.21 is compatible with Gradle 7.6.3–8.14 and AGP 7.3.1–8.11.1 kotlin = { id = "org.jetbrains.kotlin.android", version = "2.2.21" } compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version = "2.2.21" } +# https://github.com/google/ksp/releases +ksp = { id = "com.google.devtools.ksp", version = "2.3.3" } # https://github.com/ben-manes/gradle-versions-plugin/releases versions = { id = "com.github.ben-manes.versions", version = "0.51.0" } # https://github.com/gradle-nexus/publish-plugin/releases