diff --git a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/AndroidCommonPlugin.kt b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/AndroidCommonPlugin.kt index ca8ad9d9..39727af0 100644 --- a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/AndroidCommonPlugin.kt +++ b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/AndroidCommonPlugin.kt @@ -8,17 +8,18 @@ package dev.msfjarvis.claw.gradle +import com.android.build.api.dsl.ApplicationExtension import com.android.build.api.dsl.LibraryExtension import com.android.build.api.dsl.Lint import com.android.build.api.variant.ApplicationAndroidComponentsExtension import com.android.build.api.variant.LibraryAndroidComponentsExtension import com.android.build.gradle.BaseExtension -import com.android.build.gradle.internal.dsl.BaseAppModuleExtension import org.gradle.android.AndroidCacheFixPlugin import org.gradle.api.JavaVersion import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.kotlin.dsl.apply +import org.gradle.kotlin.dsl.configure import org.gradle.kotlin.dsl.findByType private const val SLIM_TESTS_PROPERTY = "slimTests" @@ -34,7 +35,7 @@ class AndroidCommonPlugin : Plugin { override fun apply(project: Project) { project.configureSlimTests() project.pluginManager.apply(AndroidCacheFixPlugin::class) - project.extensions.findByType()?.run { + project.extensions.configure { compileSdkVersion(COMPILE_SDK) defaultConfig { minSdk = MIN_SDK @@ -60,7 +61,7 @@ class AndroidCommonPlugin : Plugin { unitTests.isReturnDefaultValues = true } } - project.extensions.findByType()?.run { lint.configureLint(project) } + project.extensions.findByType()?.run { lint.configureLint(project) } project.extensions.findByType()?.run { lint.configureLint(project) } } } diff --git a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/ApplicationPlugin.kt b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/ApplicationPlugin.kt index 6d4e0d23..320b8112 100644 --- a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/ApplicationPlugin.kt +++ b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/ApplicationPlugin.kt @@ -8,13 +8,13 @@ package dev.msfjarvis.claw.gradle +import com.android.build.api.dsl.ApplicationExtension import com.android.build.gradle.AppPlugin -import com.android.build.gradle.internal.dsl.BaseAppModuleExtension import dev.msfjarvis.claw.gradle.signing.configureBuildSigning import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.kotlin.dsl.apply -import org.gradle.kotlin.dsl.getByType +import org.gradle.kotlin.dsl.configure @Suppress("Unused") class ApplicationPlugin : Plugin { @@ -22,8 +22,8 @@ class ApplicationPlugin : Plugin { override fun apply(project: Project) { project.pluginManager.apply(AppPlugin::class) project.pluginManager.apply(AndroidCommonPlugin::class) - project.extensions.getByType().run { - adbOptions.installOptions("--user 0") + project.extensions.configure { + installation.installOptions("--user 0") dependenciesInfo { includeInBundle = false diff --git a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/DependencyUpdatesPlugin.kt b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/DependencyUpdatesPlugin.kt index f7372477..f0006674 100644 --- a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/DependencyUpdatesPlugin.kt +++ b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/DependencyUpdatesPlugin.kt @@ -13,7 +13,7 @@ import nl.littlerobots.vcu.plugin.VersionCatalogUpdatePlugin import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.kotlin.dsl.apply -import org.gradle.kotlin.dsl.getByType +import org.gradle.kotlin.dsl.configure import org.gradle.kotlin.dsl.withType @Suppress("Unused") @@ -31,7 +31,7 @@ class DependencyUpdatesPlugin : Plugin { } checkForGradleUpdate = true } - project.extensions.getByType().run { + project.extensions.configure { keep.keepUnusedLibraries.set(true) } } diff --git a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/KotlinKaptPlugin.kt b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/KotlinKaptPlugin.kt index 8946e2a0..6f406731 100644 --- a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/KotlinKaptPlugin.kt +++ b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/KotlinKaptPlugin.kt @@ -9,7 +9,7 @@ package dev.msfjarvis.claw.gradle import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.kotlin.dsl.apply -import org.gradle.kotlin.dsl.getByType +import org.gradle.kotlin.dsl.configure import org.jetbrains.kotlin.gradle.internal.Kapt3GradleSubplugin import org.jetbrains.kotlin.gradle.plugin.KaptExtension import org.jetbrains.kotlin.gradle.plugin.KotlinAndroidPluginWrapper @@ -23,7 +23,7 @@ class KotlinKaptPlugin : Plugin { apply(Kapt3GradleSubplugin::class) } project.afterEvaluate { - project.extensions.getByType().run { + project.extensions.configure { javacOptions { if (hasDaggerCompilerDependency()) { // https://dagger.dev/dev-guide/compiler-options#fastinit-mode diff --git a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/RenameArtifactsPlugin.kt b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/RenameArtifactsPlugin.kt index c65d0b3b..e6218774 100644 --- a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/RenameArtifactsPlugin.kt +++ b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/RenameArtifactsPlugin.kt @@ -14,7 +14,7 @@ import dev.msfjarvis.claw.gradle.artifacts.CollectBundleTask import java.util.Locale import org.gradle.api.Plugin import org.gradle.api.Project -import org.gradle.kotlin.dsl.getByType +import org.gradle.kotlin.dsl.configure import org.gradle.kotlin.dsl.register @Suppress("Unused") @@ -22,7 +22,7 @@ class RenameArtifactsPlugin : Plugin { override fun apply(project: Project) { project.pluginManager.withPlugin("com.android.application") { - project.extensions.getByType().run { + project.extensions.configure { onVariants { variant -> val taskPrefix = "collect${variant.name.capitalize(Locale.ROOT)}" project.tasks.register("${taskPrefix}Apks") { diff --git a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/SpotlessPlugin.kt b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/SpotlessPlugin.kt index f84571a0..628b9dba 100644 --- a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/SpotlessPlugin.kt +++ b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/SpotlessPlugin.kt @@ -12,7 +12,7 @@ import org.gradle.api.GradleException import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.kotlin.dsl.apply -import org.gradle.kotlin.dsl.getByType +import org.gradle.kotlin.dsl.configure @Suppress("Unused") class SpotlessPlugin : Plugin { @@ -22,7 +22,7 @@ class SpotlessPlugin : Plugin { throw GradleException("Spotless plugin must only be applied to the root project.") } project.pluginManager.apply(SpotlessPlugin::class) - project.extensions.getByType().run { + project.extensions.configure { kotlin { ktfmt(KTFMT_VERSION).googleStyle() target("**/*.kt") diff --git a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/versioning/VersioningPlugin.kt b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/versioning/VersioningPlugin.kt index f1c9fb14..c9ea344c 100644 --- a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/versioning/VersioningPlugin.kt +++ b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/versioning/VersioningPlugin.kt @@ -14,7 +14,7 @@ import java.util.Properties import java.util.concurrent.atomic.AtomicBoolean import org.gradle.api.Plugin import org.gradle.api.Project -import org.gradle.kotlin.dsl.getByType +import org.gradle.kotlin.dsl.configure import org.gradle.kotlin.dsl.register import org.gradle.kotlin.dsl.withType @@ -46,11 +46,15 @@ class VersioningPlugin : Plugin { } project.plugins.withType { androidAppPluginApplied.set(true) - extensions.getByType().onVariants { variant -> - val mainOutput = - variant.outputs.single { it.outputType == VariantOutputConfiguration.OutputType.SINGLE } - mainOutput.versionName.set(versionName) - mainOutput.versionCode.set(versionCode) + extensions.configure { + onVariants { variant -> + val mainOutput = + variant.outputs.single { + it.outputType == VariantOutputConfiguration.OutputType.SINGLE + } + mainOutput.versionName.set(versionName) + mainOutput.versionCode.set(versionCode) + } } } val version = Semver(versionName)