Skip to content

Commit d4b1f8d

Browse files
authored
Kapt to Ksp migration (#315)
1 parent d29e050 commit d4b1f8d

File tree

8 files changed

+25
-19
lines changed

8 files changed

+25
-19
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,4 +135,5 @@ crashlytics-build.properties
135135
jacoco.exec
136136

137137
# Fastlane
138-
fastlane/report.xml
138+
fastlane/report.xml
139+
.kotlin

app/build.gradle.kts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,3 @@ dependencies {
7979
implementation(libs.shifthackz.catppuccin.legacy)
8080
implementation(libs.androidx.work.runtime)
8181
}
82-
83-
kapt {
84-
correctErrorTypes = true
85-
}

build-logic/convention/src/main/kotlin/ApplicationConventionPlugin.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ class ApplicationConventionPlugin : Plugin<Project> {
1515
with(pluginManager) {
1616
apply("com.android.application")
1717
apply("org.jetbrains.kotlin.android")
18-
apply("org.jetbrains.kotlin.kapt")
1918
apply("generic.jacoco")
2019
apply("org.jetbrains.kotlin.plugin.serialization")
2120
}

build-logic/convention/src/main/kotlin/com/shifthackz/aisdv1/buildlogic/Android.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import com.android.build.api.dsl.CommonExtension
44
import org.gradle.api.JavaVersion
55
import org.gradle.api.Project
66
import org.gradle.kotlin.dsl.withType
7+
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
78
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
89

910
internal fun Project.configureKotlinAndroid(
@@ -43,8 +44,8 @@ internal fun Project.configureKotlinAndroid(
4344

4445
private fun Project.configureKotlin() {
4546
tasks.withType<KotlinCompile>().configureEach {
46-
kotlinOptions {
47-
jvmTarget = JavaVersion.VERSION_17.toString()
47+
compilerOptions {
48+
jvmTarget.set(JvmTarget.JVM_17)
4849
}
4950
}
5051
}

build.gradle.kts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,6 @@ plugins {
44
alias(libs.plugins.jetbrains.kotlin.android) apply false
55
alias(libs.plugins.jetbrains.kotlin.serialization) apply false
66
alias(libs.plugins.compose.compiler) apply false
7+
alias(libs.plugins.google.ksp) apply false
8+
alias(libs.plugins.androidx.room) apply false
79
}

gradle/libs.versions.toml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ compileSdk = "34"
66
minSdk = "24"
77
agp = "8.6.1"
88
kotlin = "2.0.20"
9+
ksp = "2.0.20-1.0.25"
910
appcompat = "1.7.0"
1011
composeCompiler = "1.5.7"
1112
composeBom = "2024.08.00"
@@ -117,9 +118,10 @@ kotlinx-serialization-json = { group = "org.jetbrains.kotlinx", name = "kotlinx-
117118
[plugins]
118119
android-application = { id = "com.android.application", version.ref = "agp" }
119120
android-library = { id = "com.android.library", version.ref = "agp" }
121+
androidx-room = { id = "androidx.room", version.ref = "room" }
120122
jetbrains-kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
121-
jetbrains-kotlin-kapt = { id = "org.jetbrains.kotlin.kapt", version = "unspecified" }
122123
jetbrains-kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
124+
google-ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
123125
generic-flavors = { id = "generic.flavors", version = "unspecified" }
124126
generic-library = { id = "generic.library", version = "unspecified" }
125127
generic-baseline-profm = { id = "generic.baseline.profm", version = "unspecified" }

network/src/main/java/com/shifthackz/aisdv1/network/di/NetworkModule.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package com.shifthackz.aisdv1.network.di
22

33
import com.google.gson.Gson
44
import com.google.gson.GsonBuilder
5+
import com.google.gson.Strictness
56
import com.shifthackz.aisdv1.network.api.automatic1111.Automatic1111RestApi
67
import com.shifthackz.aisdv1.network.api.horde.HordeRestApi
78
import com.shifthackz.aisdv1.network.api.huggingface.HuggingFaceApi
@@ -43,7 +44,11 @@ private const val HTTP_TIMEOUT = 10L
4344

4445
val networkModule = module {
4546

46-
single<Gson> { GsonBuilder().setLenient().create() }
47+
single<Gson> {
48+
GsonBuilder()
49+
.setStrictness(Strictness.LENIENT)
50+
.create()
51+
}
4752

4853
single { RestAuthenticator(get()) }
4954

storage/build.gradle.kts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,20 @@
11
plugins {
22
alias(libs.plugins.generic.library)
3-
kotlin("kapt")
3+
alias(libs.plugins.google.ksp)
4+
alias(libs.plugins.androidx.room)
45
}
56

67
android {
78
namespace = "com.shifthackz.aisdv1.storage"
89
defaultConfig {
9-
kapt {
10-
arguments {
11-
arg("room.schemaLocation", "$projectDir/schemas")
12-
arg("room.incremental", "true")
13-
arg("room.expandProjection", "true")
14-
}
10+
ksp {
11+
arg("room.incremental", "true")
12+
arg("room.expandProjection", "true")
1513
}
1614
}
15+
room {
16+
schemaDirectory("$projectDir/schemas")
17+
}
1718
}
1819

1920
dependencies {
@@ -22,6 +23,5 @@ dependencies {
2223
implementation(libs.google.gson)
2324
implementation(libs.androidx.room.runtime)
2425
implementation(libs.androidx.room.rx)
25-
//ToDo migrate to KSP
26-
kapt(libs.androidx.room.compiler)
26+
ksp(libs.androidx.room.compiler)
2727
}

0 commit comments

Comments
 (0)