-
Notifications
You must be signed in to change notification settings - Fork 3
Housekeep: Update dependencies #127
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
92beddf
d3b0976
0bd4979
cf893aa
4c17988
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||
|---|---|---|---|---|---|---|---|---|
| @@ -1,44 +1,43 @@ | ||||||||
| [versions] | ||||||||
| agp = "8.11.0" | ||||||||
| agp = "8.11.1" | ||||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 💡 Verification agent 🧩 Analysis chainConsider AGP 8.12.2 once toolchain compatibility is confirmed. Danger notes a newer AGP. Validate Gradle and Kotlin plugin compatibility before bumping. 🌐 Web query: 💡 Result: Short answer: Kotlin 2.1.20 is not compatible with AGP 8.12.2. Details:
So AGP 8.12.2 (which requires Gradle 8.13) lies outside the AGP/Gradle ranges officially supported by Kotlin 2.1.20. [1][3] Sources: Hold AGP upgrade to 8.12.2 🤖 Prompt for AI Agents |
||||||||
| kotlin = "2.1.20" | ||||||||
| ksp = "2.1.20-1.0.32" # Must be compatible with: `kotlin` | ||||||||
| desugarLibs = "2.1.5" | ||||||||
|
Comment on lines
3
to
5
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 💡 Verification agent 🧩 Analysis chainVersion compatibility sanity check (Kotlin 2.1.20 ⇄ KSP, Coroutines, Serialization). If any mismatch is reported, bump/downgrade to the nearest compatible set. Also applies to: 14-16, 24-24 🌐 Web query: 💡 Result: Short answer — mostly yes, with one recommended upgrade:
Sources:
Upgrade kotlinx-serialization to 1.8.1 for full Kotlin 2.1.20 support 🤖 Prompt for AI Agents |
||||||||
| androidxLifecycle = "2.8.6" | ||||||||
| androidxComposeBom = "2024.10.00" | ||||||||
| jetbrainsComposeRuntime = "1.7.0" # Needs to align with version in Compose BOM as closely as possible | ||||||||
| androidxActivity = "1.9.2" | ||||||||
| decompose = "3.1.0" | ||||||||
| essenty = "2.1.0" | ||||||||
| androidxLifecycle = "2.9.1" | ||||||||
| androidxComposeBom = "2025.06.01" | ||||||||
| jetbrainsComposeRuntime = "1.8.2" # Needs to align with version in Compose BOM as closely as possible | ||||||||
| androidxActivity = "1.10.1" | ||||||||
| decompose = "3.3.0" | ||||||||
|
Comment on lines
+6
to
+10
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🛠️ Refactor suggestion Possible mismatch between Compose BOM (2025.06.01) and runtime (1.8.2). The comment says the JetBrains runtime “needs to align with” the BOM, but these numbers look far apart and may trigger runtime/ABI conflicts at compile time. Consider either: 🤖 Prompt for AI Agents |
||||||||
| essenty = "2.5.0" | ||||||||
| koin = "4.1.0" | ||||||||
| koinAnnotations = "2.1.0" # Must be compatible with: `ksp` | ||||||||
| kotlinx-coroutines = "1.8.1" | ||||||||
| kotlinx-immutableCollections = "0.3.8" | ||||||||
| kotlinx-dateTime = "0.6.1" | ||||||||
| ktlintGradlePlugin = "12.2.0" | ||||||||
| ktlint = "1.5.0" | ||||||||
| kotlinx-coroutines = "1.10.2" | ||||||||
| kotlinx-immutableCollections = "0.4.0" | ||||||||
| kotlinx-dateTime = "0.6.2" | ||||||||
| ktlintGradlePlugin = "12.3.0" | ||||||||
| ktlint = "1.6.0" | ||||||||
| detektGradlePlugin = "1.23.8" | ||||||||
| composeLint = "1.3.1" | ||||||||
| apollo = "4.0.0" | ||||||||
| composeLint = "1.4.2" | ||||||||
| apollo = "4.3.1" | ||||||||
| ktorfit = "2.4.0" # Must be compatible with: `ksp` | ||||||||
| ktor = "3.1.0" # Must be compatible with: `ktorfit` | ||||||||
| kotlinx-serialization = "1.8.0" # Must be compatible with: `kotlin` | ||||||||
| timber = "5.0.1" | ||||||||
| kermit = "2.0.2" | ||||||||
| kermit = "2.0.4" | ||||||||
| skie = "0.10.2" # Must be compatible with: `kotlin` | ||||||||
| buildkonfig = "0.15.2" | ||||||||
| buildkonfig = "0.17.1" | ||||||||
| nsExceptionKt = "1.0.0-BETA-7" | ||||||||
| datastore = "1.1.1" | ||||||||
| moko-resources = "0.24.5" | ||||||||
| baselineProfile = "1.3.0" | ||||||||
| baselineProfile = "1.3.4" | ||||||||
| junit = "1.2.1" | ||||||||
| espressoCore = "3.6.1" | ||||||||
| uiautomator = "2.3.0" | ||||||||
| benchmarkMacroJunit4 = "1.2.4" | ||||||||
| profileinstaller = "1.3.1" | ||||||||
| dokkaVersion = "1.9.20" | ||||||||
| benchmarkMacroJunit4 = "1.3.4" | ||||||||
| profileinstaller = "1.4.1" | ||||||||
| google-servicesPlugin = "4.4.2" | ||||||||
| google-firebaseAppDistributionPlugin = "5.0.0" | ||||||||
| poet = "2.0.0" | ||||||||
| google-firebaseAppDistributionPlugin = "5.1.1" | ||||||||
| poet = "2.2.0" | ||||||||
|
|
||||||||
| # Android Namespaces | ||||||||
| project-android-namespace = "app.futured.kmptemplate.android" | ||||||||
|
|
@@ -129,7 +128,6 @@ network-apollo-normalizedCache-sqlite = { group = "com.apollographql.apollo", na | |||||||
| network-ktorfit-ksp = { group = "de.jensklingenberg.ktorfit", name = "ktorfit-ksp", version.ref = "ktorfit" } | ||||||||
| network-ktorfit-lib = { group = "de.jensklingenberg.ktorfit", name = "ktorfit-lib", version.ref = "ktorfit" } | ||||||||
| network-ktorfit-converters = { group = "de.jensklingenberg.ktorfit", name = "ktorfit-converters-response", version.ref = "ktorfit" } | ||||||||
| network-ktor-client-serialization = { group = "io.ktor", name = "ktor-client-serialization", version.ref = "ktor" } | ||||||||
| network-ktor-client-contentNegotiation = { group = "io.ktor", name = "ktor-client-content-negotiation", version.ref = "ktor" } | ||||||||
| network-ktor-client-logging = { group = "io.ktor", name = "ktor-client-logging", version.ref = "ktor" } | ||||||||
| network-ktor-client-engine-okhttp = { module = "io.ktor:ktor-client-okhttp", version.ref = "ktor" } | ||||||||
|
|
@@ -160,7 +158,6 @@ skie = { id = "co.touchlab.skie", version.ref = "skie" } | |||||||
| buildkonfig = { id = "com.codingfeline.buildkonfig", version.ref = "buildkonfig" } | ||||||||
| moko-resources = { id = "dev.icerock.mobile.multiplatform-resources", version.ref = "moko-resources" } | ||||||||
| androidx-baselineprofile = { id = "androidx.baselineprofile", version.ref = "baselineProfile" } | ||||||||
| dokka = { id = "org.jetbrains.dokka", version.ref = "dokkaVersion" } | ||||||||
| google-services = { id = "com.google.gms.google-services", version.ref = "google-servicesPlugin" } | ||||||||
| firebase-distribution = { id = "com.google.firebase.appdistribution", version.ref = "google-firebaseAppDistributionPlugin" } | ||||||||
| detekt = { id = "io.gitlab.arturbosch.detekt", version.ref = "detektGradlePlugin" } | ||||||||
|
|
@@ -190,7 +187,6 @@ ktorfit = [ | |||||||
| "network-ktorfit-lib", | ||||||||
| "network-ktorfit-converters", | ||||||||
| "network-ktor-client-contentNegotiation", | ||||||||
| "network-ktor-client-serialization", | ||||||||
| "network-ktor-client-logging", | ||||||||
| "network-ktor-serialization-kotlinx-json", | ||||||||
| ] | ||||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,13 +1,11 @@ | ||
| import app.futured.kmptemplate.gradle.configuration.ProjectSettings | ||
| import org.jetbrains.dokka.gradle.DokkaTask | ||
| import org.jetbrains.kotlin.gradle.dsl.JvmTarget | ||
|
|
||
| plugins { | ||
| alias(libs.plugins.android.library) | ||
| alias(libs.plugins.kotlin.multiplatform) | ||
| alias(libs.plugins.compose.compiler) | ||
| alias(libs.plugins.kotlin.serialization) | ||
| alias(libs.plugins.dokka) | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Remove also from libs.versions.toml |
||
|
|
||
| id(libs.plugins.conventions.lint.get().pluginId) | ||
| id(libs.plugins.conventions.annotationProcessing.get().pluginId) | ||
|
|
@@ -84,22 +82,3 @@ android { | |
| compose = true | ||
| } | ||
| } | ||
|
|
||
| tasks.withType<DokkaTask>().configureEach { | ||
| dokkaSourceSets.configureEach { | ||
| outputDirectory.set(layout.projectDirectory.dir("../../doc/documentation/html")) | ||
|
|
||
| val dokkaBaseConfiguration = """ | ||
| { | ||
| "customStyleSheets": ["${file("../../assets/docs-style.css")}"], | ||
| "footerMessage": "(c) 2024 Futured - KMP Template" | ||
| } | ||
| """ | ||
| pluginsMapConfiguration.set( | ||
| mapOf( | ||
| // fully qualified plugin name to json configuration | ||
| "org.jetbrains.dokka.base.DokkaBase" to dokkaBaseConfiguration, | ||
| ), | ||
| ) | ||
| } | ||
| } | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Provide an explicit content description for accessibility.
Passing
nullsilences accessibility tools. Supply a short, localised string such as"Back"(or reuse an MR string) so TalkBack/VoiceOver can announce the action.📝 Committable suggestion
🤖 Prompt for AI Agents