From 2a9858e9fbf01cc1ec3f77d3ab8fc0d1990b3ab2 Mon Sep 17 00:00:00 2001 From: Masashi Katsumata Date: Sun, 16 Aug 2026 23:40:59 +0900 Subject: [PATCH] Publish explicit versions for BOM-managed Compose dependencies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Maven Central rejects a POM that declares a dependency without a version: Dependency version information is missing for dependency: androidx.compose.runtime:runtime The Compose BOM supplies those versions at resolution time, but a BOM does not travel in the published POM, so consumers who do not import the BOM themselves get an unresolvable dependency. `for-arcgis`, `for-here` and `for-tomtom` were rejected outright; `for-googlemaps`, `for-maplibre` and `for-mapbox` slipped through with the same defect. Give the BOM-managed Compose artifacts an explicit version (`composeLibs`, 1.7.8 — what compose-bom 2025.02.00 resolves to) so the version reaches the POM. The BOM still governs resolution; this only fixes what is published. Release as 1.3.1: Maven Central versions cannot be replaced. --- gradle.properties | 2 +- gradle/libs.versions.toml | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/gradle.properties b/gradle.properties index a60f5cd..26d9949 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,5 +8,5 @@ minSdk=26 javaVersion=17 jvmTarget=17 -libraryVersion=1.3.0 +libraryVersion=1.3.1 android.generateSyncIssueWhenLibraryConstraintsAreEnabled=false diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index c14ad4d..99cd156 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,4 +1,5 @@ [versions] +composeLibs = "1.7.8" agp = "9.2.1" kotlin = "2.0.21" @@ -14,10 +15,10 @@ espressoCore = "3.7.0" [libraries] # Jetpack Compose (with BOM) androidx-compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "composeBom" } -androidx-ui = { group = "androidx.compose.ui", name = "ui" } -androidx-ui-graphics = { group = "androidx.compose.ui", name = "ui-graphics" } -androidx-ui-tooling-preview = { group = "androidx.compose.ui", name = "ui-tooling-preview" } -androidx-foundation = { group = "androidx.compose.foundation", name = "foundation" } +androidx-ui = { group = "androidx.compose.ui", name = "ui", version.ref = "composeLibs" } +androidx-ui-graphics = { group = "androidx.compose.ui", name = "ui-graphics", version.ref = "composeLibs" } +androidx-ui-tooling-preview = { group = "androidx.compose.ui", name = "ui-tooling-preview", version.ref = "composeLibs" } +androidx-foundation = { group = "androidx.compose.foundation", name = "foundation", version.ref = "composeLibs" } # Core / Lifecycle androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" }