diff --git a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/KotlinCommonPlugin.kt b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/KotlinCommonPlugin.kt index c615e3b3..7e886e3e 100644 --- a/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/KotlinCommonPlugin.kt +++ b/build-logic/src/main/kotlin/dev/msfjarvis/claw/gradle/KotlinCommonPlugin.kt @@ -17,11 +17,11 @@ import org.gradle.kotlin.dsl.withType import org.jetbrains.kotlin.gradle.dsl.KotlinVersion import org.jetbrains.kotlin.gradle.tasks.KotlinCompile -@Suppress("Unused") +@Suppress("Unused", "UnstableApiUsage") class KotlinCommonPlugin : Plugin { override fun apply(project: Project) { - if (project.rootProject == project) { + if (project.isolated.rootProject == project.isolated) { LintConfig.configureRootProject(project) } else if (project.name != "benchmark") { LintConfig.configureSubProject(project) 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 004e5ba7..130abb2c 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 @@ -16,11 +16,11 @@ import org.gradle.kotlin.dsl.apply import org.gradle.kotlin.dsl.configure import org.gradle.kotlin.dsl.withType -@Suppress("Unused") +@Suppress("Unused", "UnstableApiUsage") class SpotlessPlugin : Plugin { override fun apply(project: Project) { - if (project.rootProject != project) { + if (project.isolated.rootProject != project.isolated) { throw GradleException("Spotless plugin must only be applied to the root project.") } project.pluginManager.apply(SpotlessPlugin::class) 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 15b0ed90..268ff702 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 @@ -14,8 +14,9 @@ import org.gradle.api.Project 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) + val keystoreConfigFile = isolated.rootProject.projectDirectory.file(KEYSTORE_CONFIG_PATH) if (keystoreConfigFile.asFile.exists()) { extensions.configure>("android") { val contents = providers.fileContents(keystoreConfigFile).asText @@ -25,7 +26,10 @@ internal fun Project.configureBuildSigning() { signingConfigs.register("release") { keyAlias = keystoreProperties["keyAlias"] as String keyPassword = keystoreProperties["keyPassword"] as String - storeFile = rootProject.file(keystoreProperties["storeFile"] as String) + storeFile = + isolated.rootProject.projectDirectory + .file(keystoreProperties["storeFile"] as String) + .asFile storePassword = keystoreProperties["storePassword"] as String } buildTypes.configureEach { signingConfig = releaseSigningConfig.get() }