diff --git a/build-logic/lint-baseline.xml b/build-logic/lint-baseline.xml
index bb8fe114..fb7b1470 100644
--- a/build-logic/lint-baseline.xml
+++ b/build-logic/lint-baseline.xml
@@ -1,26 +1,4 @@
-
-
-
-
-
-
-
-
diff --git a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/signing/AppSigning.kt b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/signing/AppSigning.kt
index 553f7bb4..15b0ed90 100644
--- a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/signing/AppSigning.kt
+++ b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/signing/AppSigning.kt
@@ -6,32 +6,29 @@
*/
package dev.msfjarvis.claw.gradle.signing
-import com.android.build.gradle.internal.dsl.BaseAppModuleExtension
+import com.android.build.api.dsl.ApplicationBuildType
+import com.android.build.api.dsl.CommonExtension
import java.util.Properties
import org.gradle.api.Project
-import org.gradle.kotlin.dsl.configure
private const val KEYSTORE_CONFIG_PATH = "keystore.properties"
/** Configure signing for all build types. */
-@Suppress("UnstableApiUsage")
internal fun Project.configureBuildSigning() {
val keystoreConfigFile = rootProject.layout.projectDirectory.file(KEYSTORE_CONFIG_PATH)
if (keystoreConfigFile.asFile.exists()) {
- extensions.configure {
+ extensions.configure>("android") {
val contents = providers.fileContents(keystoreConfigFile).asText
val keystoreProperties = Properties()
keystoreProperties.load(contents.get().byteInputStream())
- signingConfigs {
- register("release") {
+ val releaseSigningConfig =
+ signingConfigs.register("release") {
keyAlias = keystoreProperties["keyAlias"] as String
keyPassword = keystoreProperties["keyPassword"] as String
storeFile = rootProject.file(keystoreProperties["storeFile"] as String)
storePassword = keystoreProperties["storePassword"] as String
}
- }
- val signingConfig = signingConfigs.getByName("release")
- buildTypes.configureEach { setSigningConfig(signingConfig) }
+ buildTypes.configureEach { signingConfig = releaseSigningConfig.get() }
}
}
}
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 4f4b61af..99425904 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
@@ -8,7 +8,6 @@ package dev.msfjarvis.claw.gradle.versioning
import com.android.build.api.variant.ApplicationAndroidComponentsExtension
import com.android.build.api.variant.VariantOutputConfiguration
-import com.android.build.gradle.internal.plugins.AppPlugin
import com.github.zafarkhaja.semver.Version
import java.util.Properties
import java.util.concurrent.atomic.AtomicBoolean
@@ -16,13 +15,12 @@ import org.gradle.api.Plugin
import org.gradle.api.Project
import org.gradle.kotlin.dsl.configure
import org.gradle.kotlin.dsl.register
-import org.gradle.kotlin.dsl.withType
/**
- * A Gradle [Plugin] that takes a [Project] with the [AppPlugin] applied and dynamically sets the
- * versionCode and versionName properties based on values read from a [VERSIONING_PROP_FILE] file in
- * the [Project.getProjectDir] directory. It also adds Gradle tasks to bump the major, minor, and
- * patch versions along with one to prepare the next snapshot.
+ * A Gradle [Plugin] that takes a [Project] with the `com.android.application` applied and
+ * dynamically sets the versionCode and versionName properties based on values read from a
+ * [VERSIONING_PROP_FILE] file in the [Project.getProjectDir] directory. It also adds Gradle tasks
+ * to bump the major, minor, and patch versions along with one to prepare the next snapshot.
*/
@Suppress("Unused")
class VersioningPlugin : Plugin {
@@ -54,7 +52,7 @@ class VersioningPlugin : Plugin {
)
.map(String::toInt)
- project.plugins.withType {
+ project.pluginManager.withPlugin("com.android.application") {
androidAppPluginApplied.set(true)
extensions.configure {
onVariants { variant ->