From 18bca6c2fd00b42d5ca004072bd25b325f6209fa Mon Sep 17 00:00:00 2001 From: Bryan Van Deusen Date: Sat, 23 May 2026 10:43:00 -0400 Subject: [PATCH] fix(android): switch Lucide artifact android -> cmp for ImageVector API MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The icons-lucide-android variant ships icons as XML Vector Drawables accessed via painterResource(R.drawable.lucide_x). My Compose code uses the ImageVector API (`Icon(Lucide.Disc3, ...)`) which is provided by the icons-lucide-cmp variant. "CMP" (Compose Multiplatform) works fine in pure-Android Compose — the variant name describes the icon representation, not a multiplatform-required runtime. Switched the catalog entry; consuming code (AlbumCard, ArtistCard, EmptyState, ErrorRetry) is unchanged. Co-Authored-By: Claude Opus 4.7 (1M context) --- android/gradle/libs.versions.toml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/android/gradle/libs.versions.toml b/android/gradle/libs.versions.toml index 0bfbab95..7abb6167 100644 --- a/android/gradle/libs.versions.toml +++ b/android/gradle/libs.versions.toml @@ -71,7 +71,12 @@ media3-datasource-okhttp = { module = "androidx.media3:media3-datasource-okhttp" media3-ui = { module = "androidx.media3:media3-ui", version.ref = "media3" } coil-compose = { module = "io.coil-kt.coil3:coil-compose", version.ref = "coil" } coil-network-okhttp = { module = "io.coil-kt.coil3:coil-network-okhttp", version.ref = "coil" } -icons-lucide = { module = "com.composables:icons-lucide-android", version = "2.2.1" } +# CMP (Compose Multiplatform) variant — provides icons as ImageVector +# objects (e.g. `Icon(Lucide.Disc3, ...)`). The -android variant ships +# Vector Drawable XML accessed via painterResource(), which is less +# idiomatic for Compose code. CMP works fine in pure-Android Compose; +# "CMP" doesn't mean multiplatform-required. +icons-lucide = { module = "com.composables:icons-lucide-cmp", version = "2.2.1" } timber = { module = "com.jakewharton.timber:timber", version.ref = "timber" } junit-jupiter = { module = "org.junit.jupiter:junit-jupiter", version.ref = "junit-jupiter" } junit-platform-launcher = { module = "org.junit.platform:junit-platform-launcher", version = "1.11.3" }