From 6b6c2594136da0bf6222b5bf5a3cb7a28609bf2c Mon Sep 17 00:00:00 2001 From: rey Date: Sat, 16 Sep 2023 16:22:35 +0900 Subject: [PATCH 1/4] Migrate Dagger hilt from kapt to ksp --- .../primitive/KmpAndroidHiltPlugin.kt | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KmpAndroidHiltPlugin.kt b/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KmpAndroidHiltPlugin.kt index f407afebc..0d4f839b8 100644 --- a/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KmpAndroidHiltPlugin.kt +++ b/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KmpAndroidHiltPlugin.kt @@ -3,22 +3,21 @@ package io.github.droidkaigi.confsched2023.primitive import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.api.internal.artifacts.dependencies.DefaultExternalModuleDependency -import org.gradle.kotlin.dsl.configure +import org.gradle.kotlin.dsl.dependencies import org.gradle.kotlin.dsl.get -import org.jetbrains.kotlin.gradle.plugin.KaptExtension @Suppress("unused") class KmpAndroidHiltPlugin : Plugin { override fun apply(target: Project) { with(target) { with(pluginManager) { - apply("kotlin-kapt") + apply("com.google.devtools.ksp") apply("dagger.hilt.android.plugin") } kotlin { sourceSets.getByName("androidMain") { - val kaptConfiguration = configurations["kapt"] - kaptConfiguration.dependencies.add( + val kspConfiguration = configurations["ksp"] + kspConfiguration.dependencies.add( libs.library("daggerHiltAndroidCompiler").let { DefaultExternalModuleDependency( it.module.group, @@ -34,8 +33,11 @@ class KmpAndroidHiltPlugin : Plugin { } } } - extensions.configure { - correctErrorTypes = true + + dependencies { + (listOf("CommonMainMetadata", "Android")).forEach { + add("ksp$it", libs.library("daggerHiltAndroid")) + } } } } From 18895e3d58fed32dcc41d2e701869a37788e1f82 Mon Sep 17 00:00:00 2001 From: rey Date: Sat, 16 Sep 2023 16:23:58 +0900 Subject: [PATCH 2/4] Remove. --- .../droidkaigi/confsched2023/primitive/KotlinGradleDsl.kt | 6 ------ 1 file changed, 6 deletions(-) diff --git a/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KotlinGradleDsl.kt b/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KotlinGradleDsl.kt index ab4c2aa2b..99c756a2a 100644 --- a/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KotlinGradleDsl.kt +++ b/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KotlinGradleDsl.kt @@ -6,12 +6,6 @@ import org.gradle.api.plugins.ExtensionAware import org.gradle.kotlin.dsl.DependencyHandlerScope import org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions -fun DependencyHandlerScope.kapt( - artifact: MinimalExternalModuleDependency, -) { - add("kapt", artifact) -} - fun TestedExtension.kotlinOptions(block: KotlinJvmOptions.() -> Unit) { (this as ExtensionAware).extensions.configure("kotlinOptions", block) } From 17830d36adb6e9f68372f9a5a3d247ff9704f0a1 Mon Sep 17 00:00:00 2001 From: rey Date: Sat, 16 Sep 2023 16:29:34 +0900 Subject: [PATCH 3/4] Remove common dependencies. --- .../confsched2023/primitive/KmpAndroidHiltPlugin.kt | 7 ------- 1 file changed, 7 deletions(-) diff --git a/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KmpAndroidHiltPlugin.kt b/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KmpAndroidHiltPlugin.kt index 0d4f839b8..e6542ebaf 100644 --- a/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KmpAndroidHiltPlugin.kt +++ b/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KmpAndroidHiltPlugin.kt @@ -3,7 +3,6 @@ package io.github.droidkaigi.confsched2023.primitive import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.api.internal.artifacts.dependencies.DefaultExternalModuleDependency -import org.gradle.kotlin.dsl.dependencies import org.gradle.kotlin.dsl.get @Suppress("unused") @@ -33,12 +32,6 @@ class KmpAndroidHiltPlugin : Plugin { } } } - - dependencies { - (listOf("CommonMainMetadata", "Android")).forEach { - add("ksp$it", libs.library("daggerHiltAndroid")) - } - } } } } From 7499a095811faeed47770f2a80c2368364327e08 Mon Sep 17 00:00:00 2001 From: rey Date: Sun, 17 Sep 2023 17:18:14 +0900 Subject: [PATCH 4/4] Fix iOS build failed. --- .../droidkaigi/confsched2023/primitive/KmpAndroidHiltPlugin.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KmpAndroidHiltPlugin.kt b/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KmpAndroidHiltPlugin.kt index e6542ebaf..6a28f860d 100644 --- a/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KmpAndroidHiltPlugin.kt +++ b/build-logic/src/main/kotlin/io/github/droidkaigi/confsched2023/primitive/KmpAndroidHiltPlugin.kt @@ -15,7 +15,7 @@ class KmpAndroidHiltPlugin : Plugin { } kotlin { sourceSets.getByName("androidMain") { - val kspConfiguration = configurations["ksp"] + val kspConfiguration = configurations["kspAndroid"] kspConfiguration.dependencies.add( libs.library("daggerHiltAndroidCompiler").let { DefaultExternalModuleDependency(