Skip to content

Dependencies

Audited against Maven Central, Google Maven and the Gradle Plugin Portal on 2026-10-01 for 3.0.0. Runtime dependencies and AGP use stable releases. Detekt retains its existing alpha line. Gradle 9.8.0, JDK 21, Kover 0.9.11, MkDocs Material 9.7.7.

Alias Version Source
jetbrains-dokka 2.2.0 Metadata
jetbrains-plugin 2.4.20 Metadata
jetbrains-multiplatform 2.4.20 Metadata
jetbrains-kover 0.9.11 Metadata
jetbrains-compose-runtime 1.12.1 Metadata
jetbrains-compose-animation 1.12.1 Metadata
jetbrains-compose-foundation 1.12.1 Metadata
jetbrains-compose-ui-test 1.12.1 Metadata
jetbrains-compose-desktop 1.12.1 Metadata
jetbrains-compose-ui-test-junit4-desktop 1.12.1 Metadata
jetbrains-coroutines-core 1.11.0 Metadata
jetbrains-coroutines-test 1.11.0 Metadata
jetbrains-kotlin-test 2.4.20 Metadata
jetbrains-serialization-json 1.11.0 Metadata
androidx-library 9.4.1 Metadata
androidx-arch-coreTesting 2.2.0 Metadata
androidx-compose-lifecycle 2.11.0 Metadata
androidx-lifecycle-livedata 2.11.0 Metadata
androidx-lifecycle-runtime 2.11.0 Metadata
androidx-lifecycle-savedstate 2.11.0 Metadata
androidx-compose-testManifest 1.12.1 Metadata
androidx-test-junit 1.3.0 Metadata
detekt 2.0.0-alpha.6 Metadata
ktlint 14.2.0 Metadata
vanniktech-publish 0.37.0 Metadata
robolectric-test 4.17 Metadata
mockk-test-android 1.14.11 Metadata
mockk-test-agent 1.14.11 Metadata

Tooling sources

Robolectric 4.17 Android tests require --add-opens=java.base/jdk.internal.access=ALL-UNNAMED on JDK 21. This option is scoped to test JVMs, following the Robolectric setup guide.

Android SDK setup uses android-actions/setup-android@v4 with Node 24 and the maintained command-line tools provided by the action.

JavaScript lockfile

Commit kotlin-js-store/yarn.lock to keep resolved npm dependencies reproducible in local builds and CI, as recommended by the Kotlin/JS setup guide. After an intentional dependency change, run ./gradlew kotlinUpgradeYarnLock and review the lockfile diff. Do not delete it to bypass dependency mismatches.

AtomicFU remains available for modules that use atomic state; the Compose module no longer applies its plugin because observer registration is local to composition.

CodeQL and normal builds both use Kotlin 2.4.20, where explicit backing fields are stable. CodeQL 2.27.1 supports Kotlin 2.4.20, so no compiler downgrade or backing-field opt-in is needed.

Android SDK

Compile against stable Android SDK 37.2 with the compileSdk { version = release(37) { minorApiLevel = 2 } } DSL. The catalog stores major and minor levels separately. AGP 9.4.1 and Build Tools 37.0.0 are the latest stable releases verified in Google Maven and the SDK repository. minSdk remains 23. These are KMP library modules; the consuming application owns targetSdk and its runtime behavior. See the Android SDK configuration guide.

Stable update assessment (2026-10-01)

  • Adopt Kover 0.9.11. Its release reverts a 0.9.10 change that produced zero coverage with Gradle configuration cache (issue 831). Configuration cache remains disabled here; retain report filters and module thresholds and verify coverage before accepting the update.
  • Gradle 9.8.0, Kotlin 2.4.20, Compose 1.12.1, AGP 9.4.1, SDK 37.2, Build Tools 37.0.0, AtomicFU 0.33.0, Dokka 2.2.0, coroutines/serialization 1.11.0, JaCoCo 0.8.15, ktlint 14.2.0, publishing 0.37.0, Robolectric 4.17 and MockK 1.14.11 match stable metadata. The dependency table covers published library modules; optional benchmark dependencies are audited below.
  • Detekt 2.0.0-alpha.6 has no stable release in the dev.detekt line. Keep the existing tool; reverting to the old stable 1.x coordinates would be a migration, not a patch update.
  • Retain current major references for Actions: checkout/Python/artifact/Codecov v7, Java/Gradle v6, Android/CodeQL v4, GitHub App/release v3 and Pages v5. Latest stable tags remain in those majors; floating major tags receive their compatible patch updates.
  • MkDocs Material 9.7.7 remains current. Library modules have no application targetSdk; opt-in benchmark apps use the catalog's API 37. Compile SDK 37.2 is a minor API level, not a reason to invent a library target API or raise minSdk 23.
  • Do not introduce Compose 1.13 alpha or prerelease AGP/Kotlin in this publication.

Optional benchmark tooling

Component Declared Latest stable Decision
Activity KTX 1.13.0 1.13.0 Retain
Macrobenchmark 1.5.0 1.5.0 Retain
UI Automator 2.3.0 2.4.0 Candidate for a separate device-test update
Foojay resolver 1.0.0 1.0.0 Retain in both settings files

UI Automator 2.4.0 adds a scoped test API, conditional waits, app-stability helpers and screenshot/reporting support. It can improve the opt-in benchmark harness, but requires compiling and rerunning all six device cases, including rotation and background-process restoration, before adoption. Keep the currently validated 2.3.0 harness in this publication; the new version does not affect published library artifacts. Sources: Google Maven metadata for Activity, Macrobenchmark, UI Automator and the Foojay plugin.