From a31e7e64d020ea254a91302ba8229a29014761ed Mon Sep 17 00:00:00 2001 From: Kyle Isom Date: Tue, 24 Mar 2026 14:30:15 -0700 Subject: [PATCH] Upgrade to Gradle 9.4.1, AGP 9.1.0, Kotlin 2.3.20 - Gradle wrapper 8.14.2 -> 9.4.1 - AGP 8.10.1 -> 9.1.0 (built-in Kotlin, no separate kotlin.android plugin) - Kotlin 2.1.20 -> 2.3.20 - KSP 2.1.20-1.0.32 -> 2.3.6 (new versioning scheme) - settings.gradle.kts: removed @Suppress for dependencyResolutionManagement - gradle.properties: added android.disallowKotlinSourceSets=false for KSP compat Co-Authored-By: Claude Opus 4.6 (1M context) --- app/build.gradle.kts | 3 --- build.gradle.kts | 1 - gradle.properties | 1 + gradle/libs.versions.toml | 6 +++--- gradle/wrapper/gradle-wrapper.properties | 2 +- settings.gradle.kts | 1 - 6 files changed, 5 insertions(+), 9 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 30ba48a..cf584bf 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -1,6 +1,5 @@ plugins { alias(libs.plugins.android.application) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.compose) alias(libs.plugins.ksp) } @@ -42,8 +41,6 @@ android { warningsAsErrors = true abortOnError = true checkDependencies = true - // AGP 9.x requires Gradle 9.x; suppress until we're ready to migrate - disable += "AndroidGradlePluginVersion" } } diff --git a/build.gradle.kts b/build.gradle.kts index 0ae4042..bf5367c 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,6 +1,5 @@ plugins { alias(libs.plugins.android.application) apply false - alias(libs.plugins.kotlin.android) apply false alias(libs.plugins.kotlin.compose) apply false alias(libs.plugins.ksp) apply false } diff --git a/gradle.properties b/gradle.properties index f0a2e55..5ce604a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,3 +2,4 @@ org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8 android.useAndroidX=true kotlin.code.style=official android.nonTransitiveRClass=true +android.disallowKotlinSourceSets=false diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 9d6f263..d8c3cdf 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,7 +1,7 @@ [versions] -agp = "8.10.1" -kotlin = "2.1.20" -ksp = "2.1.20-1.0.32" +agp = "9.1.0" +kotlin = "2.3.20" +ksp = "2.3.6" compose-bom = "2026.03.00" room = "2.8.4" navigation = "2.9.7" diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index ff23a68..c61a118 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/settings.gradle.kts b/settings.gradle.kts index fe9f421..fe66254 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -10,7 +10,6 @@ plugins { id("org.gradle.toolchains.foojay-resolver-convention") version "1.0.0" } -@Suppress("UnstableApiUsage") dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories {