diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 90f27d5d..960c92a0 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -1,6 +1,7 @@ plugins { alias(libs.plugins.android.application) alias(libs.plugins.kotlin) + alias(libs.plugins.composeCompiler) alias(libs.plugins.hilt) alias(libs.plugins.ksp) alias(libs.plugins.detekt) @@ -39,10 +40,7 @@ android { buildFeatures { compose = true } - - composeOptions { - kotlinCompilerExtensionVersion = libs.versions.composeCompiler.get() - } + composeCompiler.enableStrongSkippingMode = true packaging { resources { diff --git a/build.gradle.kts b/build.gradle.kts index 99f0220b..e925b1b1 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -2,6 +2,7 @@ plugins { alias(libs.plugins.android.application) apply false alias(libs.plugins.android.library) apply false alias(libs.plugins.kotlin) apply false + alias(libs.plugins.composeCompiler) apply false alias(libs.plugins.hilt) apply false alias(libs.plugins.ksp) apply false } diff --git a/core/build.gradle.kts b/core/build.gradle.kts index c569a02b..f49224ce 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -1,6 +1,7 @@ plugins { alias(libs.plugins.android.library) alias(libs.plugins.kotlin) + alias(libs.plugins.composeCompiler) alias(libs.plugins.detekt) } @@ -15,10 +16,7 @@ android { buildFeatures { compose = true } - - composeOptions { - kotlinCompilerExtensionVersion = libs.versions.composeCompiler.get() - } + composeCompiler.enableStrongSkippingMode = true namespace = "com.imashnake.animite.core" } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index ba1cb1aa..e9709643 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,6 +1,7 @@ [plugins] android-application = { id = "com.android.application", version.ref = "agp" } +composeCompiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" } android-library = { id = "com.android.library", version.ref = "agp" } kotlin = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } apolloKotlin = { id = "com.apollographql.apollo3", version.ref = "apollo" } @@ -17,15 +18,15 @@ desugaring = "2.0.4" # Android Gradle Plugin # https://developer.android.com/studio/releases/gradle-plugin. -agp = "8.2.2" +agp = "8.5.0" # AndroidX # https://androidx.tech. -activity = "1.8.2" -core = "1.13.0-rc01" -lifecycle = "2.7.0" -extJunit = "1.2.0-alpha03" -espresso = "3.6.0-alpha03" +activity = "1.9.0" +core = "1.13.1" +lifecycle = "2.8.2" +extJunit = "1.2.0-rc01" +espresso = "3.6.0-rc01" # TODO: Breaking changes; review release notes and update. # Apollo Kotlin @@ -34,25 +35,26 @@ apollo = "3.8.2" # DataStore # https://developer.android.com/jetpack/androidx/releases/datastore -datastore = "1.0.0" +datastore = "1.1.1" # COIL # https://github.com/coil-kt/coil/blob/main/CHANGELOG.md. -coil = "2.5.0" +coil = "2.6.0" +# TODO: Breaking changes; review release notes and update. # Compose Destinations # https://github.com/raamcosta/compose-destinations/releases. -composeDestinations = "1.9.59" +composeDestinations = "1.10.2" # Compose # https://developer.android.com/jetpack/androidx/releases/compose. -composeAnimation = "1.7.0-alpha06" -composeCompiler = "1.5.11" -composeFoundation = "1.7.0-alpha06" -composeMaterial = "1.7.0-alpha06" -composeMaterial3 = "1.3.0-alpha04" -composeRuntime = "1.7.0-alpha06" -composeUi = "1.7.0-alpha06" +composeAnimation = "1.7.0-beta03" +composeCompiler = "1.5.14" +composeFoundation = "1.7.0-beta03" +composeMaterial = "1.7.0-beta03" +composeMaterial3 = "1.3.0-beta03" +composeRuntime = "1.7.0-beta03" +composeUi = "1.7.0-beta03" # Dagger # https://github.com/google/dagger/releases. @@ -64,12 +66,12 @@ hilt = "1.2.0" # Kotlin # https://kotlinlang.org/docs/releases.html#release-details. -kotlin = "1.9.23" +kotlin = "2.0.0" coroutines = "1.8.0" # KSP # https://github.com/google/ksp/releases. -ksp = "1.9.23-1.0.19" +ksp = "2.0.0-1.0.22" # Test # https://github.com/junit-team/junit4/releases. diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index bb6c1919..8b580b94 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.7-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-all.zip networkTimeout=10000 zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/profile/build.gradle.kts b/profile/build.gradle.kts index 2ae64042..adfc976c 100644 --- a/profile/build.gradle.kts +++ b/profile/build.gradle.kts @@ -1,6 +1,7 @@ plugins { alias(libs.plugins.android.library) alias(libs.plugins.kotlin) + alias(libs.plugins.composeCompiler) alias(libs.plugins.ksp) alias(libs.plugins.detekt) } @@ -16,10 +17,7 @@ android { buildFeatures { compose = true } - - composeOptions { - kotlinCompilerExtensionVersion = libs.versions.composeCompiler.get() - } + composeCompiler.enableStrongSkippingMode = true namespace = "com.imashnake.animite.profile" } diff --git a/rslash/build.gradle.kts b/rslash/build.gradle.kts index ee4d9485..f55e44b9 100644 --- a/rslash/build.gradle.kts +++ b/rslash/build.gradle.kts @@ -1,6 +1,7 @@ plugins { alias(libs.plugins.android.library) alias(libs.plugins.kotlin) + alias(libs.plugins.composeCompiler) alias(libs.plugins.ksp) alias(libs.plugins.detekt) } @@ -16,10 +17,7 @@ android { buildFeatures { compose = true } - - composeOptions { - kotlinCompilerExtensionVersion = libs.versions.composeCompiler.get() - } + composeCompiler.enableStrongSkippingMode = true namespace = "com.imashnake.animite.rslash" } diff --git a/settings.gradle.kts b/settings.gradle.kts index 340ccfd1..7c6d9d51 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,7 +1,6 @@ @file:Suppress("UnstableApiUsage") -import com.android.build.api.dsl.SettingsExtension -import org.gradle.api.internal.FeaturePreviews +import org.gradle.api.internal.FeaturePreviews.Feature.TYPESAFE_PROJECT_ACCESSORS pluginManagement { repositories { @@ -34,10 +33,10 @@ include( ":app" ) -configure { +android { buildToolsVersion = "34.0.0" compileSdk = 34 minSdk = 29 } -enableFeaturePreview(FeaturePreviews.Feature.TYPESAFE_PROJECT_ACCESSORS.name) +enableFeaturePreview(TYPESAFE_PROJECT_ACCESSORS.name)