From 7936fe4fbe025eda18f03e9ffa6c472f71401920 Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Mon, 14 Apr 2025 14:47:54 +0900 Subject: [PATCH 1/5] Remove ApplicationCompose, LibraryCompose, ApplicationJacoco and LibraryJacoco. Change-Id: I97d7d1e5f9bb720508667192f5967e41756dcd45 --- ...droidApplicationComposeConventionPlugin.kt | 35 ---------------- ...ndroidApplicationJacocoConventionPlugin.kt | 40 ------------------- .../AndroidLibraryComposeConventionPlugin.kt | 35 ---------------- .../AndroidLibraryJacocoConventionPlugin.kt | 40 ------------------- 4 files changed, 150 deletions(-) delete mode 100644 build-logic/convention/src/main/kotlin/AndroidApplicationComposeConventionPlugin.kt delete mode 100644 build-logic/convention/src/main/kotlin/AndroidApplicationJacocoConventionPlugin.kt delete mode 100644 build-logic/convention/src/main/kotlin/AndroidLibraryComposeConventionPlugin.kt delete mode 100644 build-logic/convention/src/main/kotlin/AndroidLibraryJacocoConventionPlugin.kt diff --git a/build-logic/convention/src/main/kotlin/AndroidApplicationComposeConventionPlugin.kt b/build-logic/convention/src/main/kotlin/AndroidApplicationComposeConventionPlugin.kt deleted file mode 100644 index a8b1b1779..000000000 --- a/build-logic/convention/src/main/kotlin/AndroidApplicationComposeConventionPlugin.kt +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright 2022 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import com.android.build.api.dsl.ApplicationExtension -import com.google.samples.apps.nowinandroid.configureAndroidCompose -import org.gradle.api.Plugin -import org.gradle.api.Project -import org.gradle.kotlin.dsl.apply -import org.gradle.kotlin.dsl.getByType - -class AndroidApplicationComposeConventionPlugin : Plugin { - override fun apply(target: Project) { - with(target) { - apply(plugin = "com.android.application") - apply(plugin = "org.jetbrains.kotlin.plugin.compose") - - val extension = extensions.getByType() - configureAndroidCompose(extension) - } - } - -} diff --git a/build-logic/convention/src/main/kotlin/AndroidApplicationJacocoConventionPlugin.kt b/build-logic/convention/src/main/kotlin/AndroidApplicationJacocoConventionPlugin.kt deleted file mode 100644 index b0eece41d..000000000 --- a/build-logic/convention/src/main/kotlin/AndroidApplicationJacocoConventionPlugin.kt +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright 2022 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import com.android.build.api.dsl.ApplicationExtension -import com.android.build.api.variant.ApplicationAndroidComponentsExtension -import com.google.samples.apps.nowinandroid.configureJacoco -import org.gradle.api.Plugin -import org.gradle.api.Project -import org.gradle.kotlin.dsl.apply -import org.gradle.kotlin.dsl.getByType - -class AndroidApplicationJacocoConventionPlugin : Plugin { - override fun apply(target: Project) { - with(target) { - apply(plugin = "jacoco") - - val androidExtension = extensions.getByType() - - androidExtension.buildTypes.configureEach { - enableAndroidTestCoverage = true - enableUnitTestCoverage = true - } - - configureJacoco(extensions.getByType()) - } - } -} diff --git a/build-logic/convention/src/main/kotlin/AndroidLibraryComposeConventionPlugin.kt b/build-logic/convention/src/main/kotlin/AndroidLibraryComposeConventionPlugin.kt deleted file mode 100644 index 19fabf549..000000000 --- a/build-logic/convention/src/main/kotlin/AndroidLibraryComposeConventionPlugin.kt +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright 2022 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import com.android.build.gradle.LibraryExtension -import com.google.samples.apps.nowinandroid.configureAndroidCompose -import org.gradle.api.Plugin -import org.gradle.api.Project -import org.gradle.kotlin.dsl.apply -import org.gradle.kotlin.dsl.getByType - -class AndroidLibraryComposeConventionPlugin : Plugin { - override fun apply(target: Project) { - with(target) { - apply(plugin = "com.android.library") - apply(plugin = "org.jetbrains.kotlin.plugin.compose") - - val extension = extensions.getByType() - configureAndroidCompose(extension) - } - } - -} diff --git a/build-logic/convention/src/main/kotlin/AndroidLibraryJacocoConventionPlugin.kt b/build-logic/convention/src/main/kotlin/AndroidLibraryJacocoConventionPlugin.kt deleted file mode 100644 index d249e4cbf..000000000 --- a/build-logic/convention/src/main/kotlin/AndroidLibraryJacocoConventionPlugin.kt +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright 2022 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import com.android.build.api.dsl.LibraryExtension -import com.android.build.api.variant.LibraryAndroidComponentsExtension -import com.google.samples.apps.nowinandroid.configureJacoco -import org.gradle.api.Plugin -import org.gradle.api.Project -import org.gradle.kotlin.dsl.apply -import org.gradle.kotlin.dsl.getByType - -class AndroidLibraryJacocoConventionPlugin : Plugin { - override fun apply(target: Project) { - with(target) { - apply(plugin = "jacoco") - - val androidExtension = extensions.getByType() - - androidExtension.buildTypes.configureEach { - enableAndroidTestCoverage = true - enableUnitTestCoverage = true - } - - configureJacoco(extensions.getByType()) - } - } -} From 4ba51e6c00874ce276005e68babb6037b93dc7bd Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Mon, 14 Apr 2025 14:48:27 +0900 Subject: [PATCH 2/5] Create AndroidComposeConventionPlugin.kt Change-Id: I20da77ff85c1d913a84b9b18711080381ba36722 --- .../kotlin/AndroidComposeConventionPlugin.kt | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 build-logic/convention/src/main/kotlin/AndroidComposeConventionPlugin.kt diff --git a/build-logic/convention/src/main/kotlin/AndroidComposeConventionPlugin.kt b/build-logic/convention/src/main/kotlin/AndroidComposeConventionPlugin.kt new file mode 100644 index 000000000..57f8b5482 --- /dev/null +++ b/build-logic/convention/src/main/kotlin/AndroidComposeConventionPlugin.kt @@ -0,0 +1,38 @@ +import com.android.build.api.dsl.ApplicationExtension +import com.android.build.api.dsl.CommonExtension +import com.android.build.api.dsl.LibraryExtension +import com.google.samples.apps.nowinandroid.configureAndroidCompose +import org.gradle.api.Plugin +import org.gradle.api.Project +import org.gradle.kotlin.dsl.apply +import org.gradle.kotlin.dsl.the + +/* + * Copyright 2025 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +class AndroidComposeConventionPlugin : Plugin { + override fun apply(target: Project) { + with(target) { + apply(plugin = "org.jetbrains.kotlin.plugin.compose") + val extension: CommonExtension<*, *, *, *, *, *> = when { + pluginManager.hasPlugin("com.android.application") -> the() + pluginManager.hasPlugin("com.android.library") -> the() + else -> TODO("This plugin is dependent on either nowinandroid.android.application or nowinandroid.android.library. Apply one of those plugins first.") + } + configureAndroidCompose(extension) + } + } +} From f80e8801ea7f174baf21988a1ee5db39484e7905 Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Mon, 14 Apr 2025 14:48:36 +0900 Subject: [PATCH 3/5] Create AndroidJacocoConventionPlugin.kt Change-Id: I6d41fcc4a4cc757b87d875030fd660414e71855d --- .../kotlin/AndroidJacocoConventionPlugin.kt | 60 +++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 build-logic/convention/src/main/kotlin/AndroidJacocoConventionPlugin.kt diff --git a/build-logic/convention/src/main/kotlin/AndroidJacocoConventionPlugin.kt b/build-logic/convention/src/main/kotlin/AndroidJacocoConventionPlugin.kt new file mode 100644 index 000000000..92bb6cdb8 --- /dev/null +++ b/build-logic/convention/src/main/kotlin/AndroidJacocoConventionPlugin.kt @@ -0,0 +1,60 @@ +import com.android.build.api.dsl.CommonExtension +import com.android.build.api.dsl.LibraryExtension +import com.android.build.api.variant.AndroidComponentsExtension +import com.android.build.api.variant.ApplicationAndroidComponentsExtension +import com.android.build.api.variant.LibraryAndroidComponentsExtension +import com.android.build.gradle.internal.dsl.BaseAppModuleExtension +import com.google.samples.apps.nowinandroid.configureJacoco +import org.gradle.api.Plugin +import org.gradle.api.Project +import org.gradle.kotlin.dsl.apply +import org.gradle.kotlin.dsl.the + +/* + * Copyright 2025 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +class AndroidJacocoConventionPlugin : Plugin { + override fun apply(target: Project) { + with(target) { + apply(plugin = "jacoco") + + val androidExtension: CommonExtension<*, *, *, *, *, *> + val jacocoExtension: AndroidComponentsExtension<*, *, *> + + when { + pluginManager.hasPlugin("com.android.application") -> { + androidExtension = the() + jacocoExtension = the() + } + + pluginManager.hasPlugin("com.android.library") -> { + androidExtension = the() + jacocoExtension = the() + } + + else -> + TODO("This plugin is dependent on either nowinandroid.android.application or nowinandroid.android.library. Apply one of those plugins first.") + } + + androidExtension.buildTypes.configureEach { + enableAndroidTestCoverage = true + enableUnitTestCoverage = true + } + + configureJacoco(jacocoExtension) + } + } +} From 5daf0dcc09a3888baa72b02c3e1e16ff46ef2018 Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Mon, 14 Apr 2025 14:49:16 +0900 Subject: [PATCH 4/5] Replace application and library plugins to merged one. Change-Id: I757804fe0ea69ce0b1c33c0d0ac56b636f156c88 --- app-nia-catalog/build.gradle.kts | 2 +- app/build.gradle.kts | 4 ++-- build-logic/README.md | 3 +-- build-logic/convention/build.gradle.kts | 22 +++++++--------------- core/analytics/build.gradle.kts | 2 +- core/data/build.gradle.kts | 2 +- core/database/build.gradle.kts | 2 +- core/datastore/build.gradle.kts | 2 +- core/designsystem/build.gradle.kts | 4 ++-- core/domain/build.gradle.kts | 4 ++-- core/network/build.gradle.kts | 2 +- core/screenshot-testing/build.gradle.kts | 2 +- core/ui/build.gradle.kts | 4 ++-- feature/bookmarks/build.gradle.kts | 4 ++-- feature/foryou/build.gradle.kts | 4 ++-- feature/interests/build.gradle.kts | 4 ++-- feature/search/build.gradle.kts | 5 ++--- feature/settings/build.gradle.kts | 4 ++-- feature/topic/build.gradle.kts | 6 +++--- gradle/libs.versions.toml | 6 ++---- sync/work/build.gradle.kts | 2 +- 21 files changed, 39 insertions(+), 51 deletions(-) diff --git a/app-nia-catalog/build.gradle.kts b/app-nia-catalog/build.gradle.kts index 94d55b81c..84e6db6a8 100644 --- a/app-nia-catalog/build.gradle.kts +++ b/app-nia-catalog/build.gradle.kts @@ -33,7 +33,7 @@ import com.google.samples.apps.nowinandroid.NiaFlavor */ plugins { alias(libs.plugins.nowinandroid.android.application) - alias(libs.plugins.nowinandroid.android.application.compose) + alias(libs.plugins.nowinandroid.android.compose) } android { diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 6aec2d1bc..14e49adea 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -17,9 +17,9 @@ import com.google.samples.apps.nowinandroid.NiaBuildType plugins { alias(libs.plugins.nowinandroid.android.application) - alias(libs.plugins.nowinandroid.android.application.compose) + alias(libs.plugins.nowinandroid.android.compose) alias(libs.plugins.nowinandroid.android.application.flavors) - alias(libs.plugins.nowinandroid.android.application.jacoco) + alias(libs.plugins.nowinandroid.android.jacoco) alias(libs.plugins.nowinandroid.android.application.firebase) alias(libs.plugins.nowinandroid.hilt) id("com.google.android.gms.oss-licenses-plugin") diff --git a/build-logic/README.md b/build-logic/README.md index 0458b4fb1..2f0451054 100644 --- a/build-logic/README.md +++ b/build-logic/README.md @@ -33,6 +33,5 @@ Current list of convention plugins: [`nowinandroid.android.library`](convention/src/main/kotlin/AndroidLibraryConventionPlugin.kt), [`nowinandroid.android.test`](convention/src/main/kotlin/AndroidTestConventionPlugin.kt): Configures common Android and Kotlin options. -- [`nowinandroid.android.application.compose`](convention/src/main/kotlin/AndroidApplicationComposeConventionPlugin.kt), - [`nowinandroid.android.library.compose`](convention/src/main/kotlin/AndroidLibraryComposeConventionPlugin.kt): +- [`nowinandroid.android.compose`](convention/src/main/kotlin/AndroidComposeConventionPlugin.kt): Configures Jetpack Compose options diff --git a/build-logic/convention/build.gradle.kts b/build-logic/convention/build.gradle.kts index 6d0237010..ce347cbe8 100644 --- a/build-logic/convention/build.gradle.kts +++ b/build-logic/convention/build.gradle.kts @@ -58,33 +58,25 @@ tasks { gradlePlugin { plugins { - register("androidApplicationCompose") { - id = libs.plugins.nowinandroid.android.application.compose.get().pluginId - implementationClass = "AndroidApplicationComposeConventionPlugin" - } register("androidApplication") { id = libs.plugins.nowinandroid.android.application.asProvider().get().pluginId implementationClass = "AndroidApplicationConventionPlugin" } - register("androidApplicationJacoco") { - id = libs.plugins.nowinandroid.android.application.jacoco.get().pluginId - implementationClass = "AndroidApplicationJacocoConventionPlugin" - } - register("androidLibraryCompose") { - id = libs.plugins.nowinandroid.android.library.compose.get().pluginId - implementationClass = "AndroidLibraryComposeConventionPlugin" + register("androidCompose") { + id = libs.plugins.nowinandroid.android.compose.get().pluginId + implementationClass = "AndroidComposeConventionPlugin" } register("androidLibrary") { - id = libs.plugins.nowinandroid.android.library.asProvider().get().pluginId + id = libs.plugins.nowinandroid.android.library.get().pluginId implementationClass = "AndroidLibraryConventionPlugin" } register("androidFeature") { id = libs.plugins.nowinandroid.android.feature.get().pluginId implementationClass = "AndroidFeatureConventionPlugin" } - register("androidLibraryJacoco") { - id = libs.plugins.nowinandroid.android.library.jacoco.get().pluginId - implementationClass = "AndroidLibraryJacocoConventionPlugin" + register("androidJacoco") { + id = libs.plugins.nowinandroid.android.jacoco.get().pluginId + implementationClass = "AndroidJacocoConventionPlugin" } register("androidTest") { id = libs.plugins.nowinandroid.android.test.get().pluginId diff --git a/core/analytics/build.gradle.kts b/core/analytics/build.gradle.kts index 72f7620b0..64a00e408 100644 --- a/core/analytics/build.gradle.kts +++ b/core/analytics/build.gradle.kts @@ -15,7 +15,7 @@ */ plugins { alias(libs.plugins.nowinandroid.android.library) - alias(libs.plugins.nowinandroid.android.library.compose) + alias(libs.plugins.nowinandroid.android.compose) alias(libs.plugins.nowinandroid.hilt) } diff --git a/core/data/build.gradle.kts b/core/data/build.gradle.kts index 8c839fa8e..ff2b83af5 100644 --- a/core/data/build.gradle.kts +++ b/core/data/build.gradle.kts @@ -15,7 +15,7 @@ */ plugins { alias(libs.plugins.nowinandroid.android.library) - alias(libs.plugins.nowinandroid.android.library.jacoco) + alias(libs.plugins.nowinandroid.android.jacoco) alias(libs.plugins.nowinandroid.hilt) id("kotlinx-serialization") } diff --git a/core/database/build.gradle.kts b/core/database/build.gradle.kts index 8bab355b4..37b2f8aa2 100644 --- a/core/database/build.gradle.kts +++ b/core/database/build.gradle.kts @@ -16,7 +16,7 @@ plugins { alias(libs.plugins.nowinandroid.android.library) - alias(libs.plugins.nowinandroid.android.library.jacoco) + alias(libs.plugins.nowinandroid.android.jacoco) alias(libs.plugins.nowinandroid.android.room) alias(libs.plugins.nowinandroid.hilt) } diff --git a/core/datastore/build.gradle.kts b/core/datastore/build.gradle.kts index 0d4ba37c5..b5a2b26e8 100644 --- a/core/datastore/build.gradle.kts +++ b/core/datastore/build.gradle.kts @@ -16,7 +16,7 @@ plugins { alias(libs.plugins.nowinandroid.android.library) - alias(libs.plugins.nowinandroid.android.library.jacoco) + alias(libs.plugins.nowinandroid.android.jacoco) alias(libs.plugins.nowinandroid.hilt) } diff --git a/core/designsystem/build.gradle.kts b/core/designsystem/build.gradle.kts index aac2ddb8f..df000d1c2 100644 --- a/core/designsystem/build.gradle.kts +++ b/core/designsystem/build.gradle.kts @@ -15,8 +15,8 @@ */ plugins { alias(libs.plugins.nowinandroid.android.library) - alias(libs.plugins.nowinandroid.android.library.compose) - alias(libs.plugins.nowinandroid.android.library.jacoco) + alias(libs.plugins.nowinandroid.android.compose) + alias(libs.plugins.nowinandroid.android.jacoco) alias(libs.plugins.roborazzi) } diff --git a/core/domain/build.gradle.kts b/core/domain/build.gradle.kts index 191877459..da2881e94 100644 --- a/core/domain/build.gradle.kts +++ b/core/domain/build.gradle.kts @@ -15,7 +15,7 @@ */ plugins { alias(libs.plugins.nowinandroid.android.library) - alias(libs.plugins.nowinandroid.android.library.jacoco) + alias(libs.plugins.nowinandroid.android.jacoco) id("com.google.devtools.ksp") } @@ -30,4 +30,4 @@ dependencies { implementation(libs.javax.inject) testImplementation(projects.core.testing) -} \ No newline at end of file +} diff --git a/core/network/build.gradle.kts b/core/network/build.gradle.kts index d12482a56..fdb564753 100644 --- a/core/network/build.gradle.kts +++ b/core/network/build.gradle.kts @@ -16,7 +16,7 @@ plugins { alias(libs.plugins.nowinandroid.android.library) - alias(libs.plugins.nowinandroid.android.library.jacoco) + alias(libs.plugins.nowinandroid.android.jacoco) alias(libs.plugins.nowinandroid.hilt) id("kotlinx-serialization") id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") diff --git a/core/screenshot-testing/build.gradle.kts b/core/screenshot-testing/build.gradle.kts index 57a43a200..612873f3c 100644 --- a/core/screenshot-testing/build.gradle.kts +++ b/core/screenshot-testing/build.gradle.kts @@ -15,7 +15,7 @@ */ plugins { alias(libs.plugins.nowinandroid.android.library) - alias(libs.plugins.nowinandroid.android.library.compose) + alias(libs.plugins.nowinandroid.android.compose) alias(libs.plugins.nowinandroid.hilt) } diff --git a/core/ui/build.gradle.kts b/core/ui/build.gradle.kts index 5606cb5d1..9c452fe62 100644 --- a/core/ui/build.gradle.kts +++ b/core/ui/build.gradle.kts @@ -15,8 +15,8 @@ */ plugins { alias(libs.plugins.nowinandroid.android.library) - alias(libs.plugins.nowinandroid.android.library.compose) - alias(libs.plugins.nowinandroid.android.library.jacoco) + alias(libs.plugins.nowinandroid.android.compose) + alias(libs.plugins.nowinandroid.android.jacoco) } android { diff --git a/feature/bookmarks/build.gradle.kts b/feature/bookmarks/build.gradle.kts index 51a15ce7a..2f1c67321 100644 --- a/feature/bookmarks/build.gradle.kts +++ b/feature/bookmarks/build.gradle.kts @@ -16,8 +16,8 @@ plugins { alias(libs.plugins.nowinandroid.android.feature) - alias(libs.plugins.nowinandroid.android.library.compose) - alias(libs.plugins.nowinandroid.android.library.jacoco) + alias(libs.plugins.nowinandroid.android.compose) + alias(libs.plugins.nowinandroid.android.jacoco) } android { diff --git a/feature/foryou/build.gradle.kts b/feature/foryou/build.gradle.kts index 59f6844cf..be3dea3da 100644 --- a/feature/foryou/build.gradle.kts +++ b/feature/foryou/build.gradle.kts @@ -16,8 +16,8 @@ plugins { alias(libs.plugins.nowinandroid.android.feature) - alias(libs.plugins.nowinandroid.android.library.compose) - alias(libs.plugins.nowinandroid.android.library.jacoco) + alias(libs.plugins.nowinandroid.android.compose) + alias(libs.plugins.nowinandroid.android.jacoco) alias(libs.plugins.roborazzi) } diff --git a/feature/interests/build.gradle.kts b/feature/interests/build.gradle.kts index 2b84b135f..0b3e5acf4 100644 --- a/feature/interests/build.gradle.kts +++ b/feature/interests/build.gradle.kts @@ -16,8 +16,8 @@ plugins { alias(libs.plugins.nowinandroid.android.feature) - alias(libs.plugins.nowinandroid.android.library.compose) - alias(libs.plugins.nowinandroid.android.library.jacoco) + alias(libs.plugins.nowinandroid.android.compose) + alias(libs.plugins.nowinandroid.android.jacoco) } android { namespace = "com.google.samples.apps.nowinandroid.feature.interests" diff --git a/feature/search/build.gradle.kts b/feature/search/build.gradle.kts index 5bb659c35..0129cbd69 100644 --- a/feature/search/build.gradle.kts +++ b/feature/search/build.gradle.kts @@ -16,8 +16,8 @@ plugins { alias(libs.plugins.nowinandroid.android.feature) - alias(libs.plugins.nowinandroid.android.library.compose) - alias(libs.plugins.nowinandroid.android.library.jacoco) + alias(libs.plugins.nowinandroid.android.compose) + alias(libs.plugins.nowinandroid.android.jacoco) } android { @@ -33,4 +33,3 @@ dependencies { androidTestImplementation(libs.bundles.androidx.compose.ui.test) androidTestImplementation(projects.core.testing) } - diff --git a/feature/settings/build.gradle.kts b/feature/settings/build.gradle.kts index 15d65204d..6e6517f16 100644 --- a/feature/settings/build.gradle.kts +++ b/feature/settings/build.gradle.kts @@ -16,8 +16,8 @@ plugins { alias(libs.plugins.nowinandroid.android.feature) - alias(libs.plugins.nowinandroid.android.library.compose) - alias(libs.plugins.nowinandroid.android.library.jacoco) + alias(libs.plugins.nowinandroid.android.compose) + alias(libs.plugins.nowinandroid.android.jacoco) } android { diff --git a/feature/topic/build.gradle.kts b/feature/topic/build.gradle.kts index bd8b59ec8..68a7b8d23 100644 --- a/feature/topic/build.gradle.kts +++ b/feature/topic/build.gradle.kts @@ -16,8 +16,8 @@ plugins { alias(libs.plugins.nowinandroid.android.feature) - alias(libs.plugins.nowinandroid.android.library.compose) - alias(libs.plugins.nowinandroid.android.library.jacoco) + alias(libs.plugins.nowinandroid.android.compose) + alias(libs.plugins.nowinandroid.android.jacoco) } android { @@ -32,4 +32,4 @@ dependencies { androidTestImplementation(libs.bundles.androidx.compose.ui.test) androidTestImplementation(projects.core.testing) -} \ No newline at end of file +} diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 477dde916..270642188 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -185,14 +185,12 @@ secrets = { id = "com.google.android.libraries.mapsplatform.secrets-gradle-plugi # Plugins defined by this project nowinandroid-android-application = { id = "nowinandroid.android.application" } -nowinandroid-android-application-compose = { id = "nowinandroid.android.application.compose" } nowinandroid-android-application-firebase = { id = "nowinandroid.android.application.firebase" } nowinandroid-android-application-flavors = { id = "nowinandroid.android.application.flavors" } -nowinandroid-android-application-jacoco = { id = "nowinandroid.android.application.jacoco" } +nowinandroid-android-compose = { id = "nowinandroid.android.compose" } nowinandroid-android-feature = { id = "nowinandroid.android.feature" } +nowinandroid-android-jacoco = { id = "nowinandroid.android.jacoco" } nowinandroid-android-library = { id = "nowinandroid.android.library" } -nowinandroid-android-library-compose = { id = "nowinandroid.android.library.compose" } -nowinandroid-android-library-jacoco = { id = "nowinandroid.android.library.jacoco" } nowinandroid-android-lint = { id = "nowinandroid.android.lint" } nowinandroid-android-room = { id = "nowinandroid.android.room" } nowinandroid-android-test = { id = "nowinandroid.android.test" } diff --git a/sync/work/build.gradle.kts b/sync/work/build.gradle.kts index 7b4b55a18..64d60e929 100644 --- a/sync/work/build.gradle.kts +++ b/sync/work/build.gradle.kts @@ -15,7 +15,7 @@ */ plugins { alias(libs.plugins.nowinandroid.android.library) - alias(libs.plugins.nowinandroid.android.library.jacoco) + alias(libs.plugins.nowinandroid.android.jacoco) alias(libs.plugins.nowinandroid.hilt) } From cffa7dacdc4151e9a718ddb685cd8e754ed2655a Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Mon, 14 Apr 2025 14:56:45 +0900 Subject: [PATCH 5/5] Replace to ApplicationExtension. Change-Id: I8132b88a8a2e67a919456df49429a263964e6a9c --- .../src/main/kotlin/AndroidJacocoConventionPlugin.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build-logic/convention/src/main/kotlin/AndroidJacocoConventionPlugin.kt b/build-logic/convention/src/main/kotlin/AndroidJacocoConventionPlugin.kt index 92bb6cdb8..b6caeb546 100644 --- a/build-logic/convention/src/main/kotlin/AndroidJacocoConventionPlugin.kt +++ b/build-logic/convention/src/main/kotlin/AndroidJacocoConventionPlugin.kt @@ -1,9 +1,9 @@ +import com.android.build.api.dsl.ApplicationExtension import com.android.build.api.dsl.CommonExtension import com.android.build.api.dsl.LibraryExtension import com.android.build.api.variant.AndroidComponentsExtension import com.android.build.api.variant.ApplicationAndroidComponentsExtension import com.android.build.api.variant.LibraryAndroidComponentsExtension -import com.android.build.gradle.internal.dsl.BaseAppModuleExtension import com.google.samples.apps.nowinandroid.configureJacoco import org.gradle.api.Plugin import org.gradle.api.Project @@ -36,7 +36,7 @@ class AndroidJacocoConventionPlugin : Plugin { when { pluginManager.hasPlugin("com.android.application") -> { - androidExtension = the() + androidExtension = the() jacocoExtension = the() }