Remove version catalog bundles (#3370)

This commit is contained in:
Phil Oliver 2025-10-07 06:23:12 -04:00 committed by GitHub
parent 7287ebbf49
commit 59916a4cbe
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
15 changed files with 99 additions and 76 deletions

View file

@ -50,7 +50,8 @@ class AndroidLibraryConventionPlugin : Plugin<Project> {
}
dependencies {
"androidTestImplementation"(libs.findLibrary("kotlin.test").get())
"androidTestImplementation"(libs.findBundle("testing.android").get())
"androidTestImplementation"(libs.findLibrary("androidx-test-espresso-core").get())
"androidTestImplementation"(libs.findLibrary("androidx-compose-ui-test-junit4").get())
"testImplementation"(libs.findLibrary("kotlin.test").get())
}

View file

@ -46,7 +46,7 @@ class AndroidRoomConventionPlugin : Plugin<Project> {
"implementation"(libs.findLibrary("androidx.room.runtime").get())
"implementation"(libs.findLibrary("androidx.room.ktx").get())
"ksp"(libs.findLibrary("androidx.room.compiler").get())
"androidTestImplementation"(libs.findBundle("testing.room").get())
"androidTestImplementation"(libs.findLibrary("androidx-room-testing").get())
}
}
}

View file

@ -29,7 +29,7 @@ class HiltConventionPlugin : Plugin<Project> {
dependencies {
"ksp"(libs.findLibrary("hilt.compiler").get())
"implementation"(libs.findLibrary("hilt-android").get())
"androidTestImplementation"(libs.findBundle("testing.hilt").get())
"androidTestImplementation"(libs.findLibrary("hilt-android-testing").get())
}
// Add support for Jvm Module, base on org.jetbrains.kotlin.jvm

View file

@ -39,8 +39,8 @@ internal fun Project.configureAndroidCompose(
val bom = libs.findLibrary("androidx-compose-bom").get()
"implementation"(platform(bom))
"androidTestImplementation"(platform(bom))
"implementation"(libs.findBundle("navigation").get())
"implementation"(libs.findBundle("ui-tooling").get())
"implementation"(libs.findLibrary("androidx-navigation-compose").get())
"implementation"(libs.findLibrary("androidx-compose-ui-tooling").get())
"implementation"(libs.findLibrary("androidx-compose-ui-tooling-preview").get())
"implementation"(libs.findLibrary("androidx-compose-runtime").get())
"implementation"(libs.findLibrary("androidx-compose-runtime-tracing").get())

View file

@ -31,20 +31,18 @@ dependencies {
implementation(libs.androidx.lifecycle.process)
implementation(libs.timber)
googleImplementation(libs.dd.sdk.android.compose)
googleImplementation(libs.dd.sdk.android.logs)
googleImplementation(libs.dd.sdk.android.okhttp)
googleImplementation(libs.dd.sdk.android.rum)
googleImplementation(libs.dd.sdk.android.session.replay)
googleImplementation(libs.dd.sdk.android.session.replay.compose)
googleImplementation(libs.dd.sdk.android.timber)
googleImplementation(libs.dd.sdk.android.trace)
googleImplementation(libs.dd.sdk.android.trace.otel)
googleImplementation(platform(libs.firebase.bom))
googleImplementation(libs.bundles.firebase) {
/*
Exclusion of protobuf / protolite dependencies is necessary as the
datastore-proto brings in protobuf dependencies. These are the source of truth
for Now in Android.
That's why the duplicate classes from below dependencies are excluded.
*/
exclude(group = "com.google.protobuf", module = "protobuf-java")
exclude(group = "com.google.protobuf", module = "protobuf-kotlin")
exclude(group = "com.google.protobuf", module = "protobuf-javalite")
exclude(group = "com.google.firebase", module = "protolite-well-known-types")
}
googleImplementation(libs.bundles.datadog)
googleImplementation(libs.firebase.analytics)
googleImplementation(libs.firebase.crashlytics)
}
val googleServiceKeywords = listOf("crashlytics", "google", "datadog")

View file

@ -27,7 +27,8 @@ android { namespace = "org.meshtastic.core.datastore" }
dependencies {
implementation(projects.core.proto)
implementation(libs.bundles.datastore)
implementation(libs.androidx.datastore)
implementation(libs.androidx.datastore.preferences)
implementation(libs.kotlinx.serialization.json)
implementation(libs.timber)
}

View file

@ -32,8 +32,25 @@ android {
dependencies {
implementation(projects.core.model)
implementation(libs.bundles.ktor)
implementation(libs.bundles.coil)
"googleImplementation"(libs.bundles.datadog)
implementation(libs.coil)
implementation(libs.coil.network.core)
implementation(libs.coil.network.okhttp)
implementation(libs.coil.svg)
implementation(libs.kotlinx.serialization.json)
implementation(libs.ktor.client.content.negotiation)
implementation(libs.ktor.client.okhttp)
implementation(libs.ktor.serialization.kotlinx.json)
implementation(libs.ktorfit)
implementation(libs.okhttp3.logging.interceptor)
googleImplementation(libs.dd.sdk.android.compose)
googleImplementation(libs.dd.sdk.android.logs)
googleImplementation(libs.dd.sdk.android.okhttp)
googleImplementation(libs.dd.sdk.android.rum)
googleImplementation(libs.dd.sdk.android.session.replay)
googleImplementation(libs.dd.sdk.android.session.replay.compose)
googleImplementation(libs.dd.sdk.android.timber)
googleImplementation(libs.dd.sdk.android.trace)
googleImplementation(libs.dd.sdk.android.trace.otel)
}

View file

@ -24,7 +24,7 @@ plugins {
android { namespace = "org.meshtastic.core.prefs" }
dependencies {
implementation(libs.bundles.coroutines)
implementation(libs.androidx.appcompat)
implementation(libs.kotlinx.coroutines.android)
googleImplementation(libs.maps.compose)
}

View file

@ -31,10 +31,18 @@ dependencies {
implementation(projects.core.proto)
implementation(projects.core.strings)
implementation(libs.bundles.coroutines)
implementation(libs.bundles.markdown)
implementation(libs.bundles.ui)
implementation(libs.androidx.compose.material.iconsExtended)
implementation(libs.androidx.compose.material3)
implementation(libs.androidx.compose.runtime.livedata)
implementation(libs.androidx.compose.ui.text)
implementation(libs.androidx.compose.ui.tooling.preview)
implementation(libs.androidx.constraintlayout)
implementation(libs.androidx.emoji2.emojipicker)
implementation(libs.androidx.hilt.lifecycle.viewmodel.compose)
implementation(libs.kotlinx.coroutines.android)
implementation(libs.kotlinx.coroutines.guava)
implementation(libs.markdown.renderer)
implementation(libs.markdown.renderer.m3)
implementation(libs.markdown.renderer.android)
implementation(libs.material)
}

View file

@ -27,8 +27,14 @@ android { namespace = "org.meshtastic.feature.intro" }
dependencies {
implementation(projects.core.strings)
implementation(libs.bundles.ui)
implementation(libs.accompanist.permissions)
implementation(libs.androidx.compose.material.iconsExtended)
implementation(libs.androidx.compose.material3)
implementation(libs.androidx.compose.runtime.livedata)
implementation(libs.androidx.compose.ui.text)
implementation(libs.androidx.compose.ui.tooling.preview)
implementation(libs.androidx.constraintlayout)
implementation(libs.androidx.navigation3.runtime)
implementation(libs.androidx.navigation3.ui)
implementation(libs.material)
}

View file

@ -37,14 +37,31 @@ dependencies {
implementation(projects.core.strings)
implementation(projects.core.ui)
implementation(libs.bundles.coroutines)
implementation(libs.bundles.lifecycle)
implementation(libs.bundles.osm)
implementation(libs.bundles.ui)
googleImplementation(libs.bundles.maps.compose)
implementation(libs.accompanist.permissions)
implementation(libs.androidx.annotation)
implementation(libs.androidx.compose.material.iconsExtended)
implementation(libs.androidx.compose.material3)
implementation(libs.androidx.compose.runtime.livedata)
implementation(libs.androidx.compose.ui.text)
implementation(libs.androidx.compose.ui.tooling.preview)
implementation(libs.androidx.constraintlayout)
implementation(libs.androidx.hilt.lifecycle.viewmodel.compose)
implementation(libs.androidx.lifecycle.common.java8)
implementation(libs.androidx.lifecycle.livedata.ktx)
implementation(libs.androidx.lifecycle.process)
implementation(libs.androidx.lifecycle.runtime.compose)
implementation(libs.androidx.lifecycle.runtime.ktx)
implementation(libs.androidx.lifecycle.viewmodel.compose)
implementation(libs.androidx.lifecycle.viewmodel.ktx)
implementation(libs.kotlinx.coroutines.android)
implementation(libs.material)
implementation(libs.mgrs)
implementation(libs.osmbonuspack)
implementation(libs.osmdroid.android)
implementation(libs.timber)
googleImplementation(libs.location.services)
googleImplementation(libs.maps.compose)
googleImplementation(libs.maps.compose.utils)
googleImplementation(libs.maps.compose.widgets)
}

View file

@ -34,6 +34,12 @@ dependencies {
implementation(projects.core.strings)
implementation(projects.core.ui)
implementation(libs.bundles.ui)
implementation(libs.androidx.compose.material.iconsExtended)
implementation(libs.androidx.compose.material3)
implementation(libs.androidx.compose.runtime.livedata)
implementation(libs.androidx.compose.ui.text)
implementation(libs.androidx.compose.ui.tooling.preview)
implementation(libs.androidx.constraintlayout)
implementation(libs.material)
implementation(libs.timber)
}

View file

@ -37,11 +37,16 @@ dependencies {
implementation(projects.core.strings)
implementation(projects.core.ui)
implementation(libs.bundles.ui)
implementation(libs.accompanist.permissions)
implementation(libs.androidx.compose.material.iconsExtended)
implementation(libs.androidx.compose.material3)
implementation(libs.androidx.compose.runtime.livedata)
implementation(libs.androidx.compose.ui.text)
implementation(libs.androidx.compose.ui.tooling.preview)
implementation(libs.androidx.constraintlayout)
implementation(libs.androidx.hilt.lifecycle.viewmodel.compose)
implementation(libs.kotlinx.collections.immutable)
implementation(libs.material)
implementation(libs.timber)
implementation(libs.zxing.android.embedded)
}

View file

@ -180,44 +180,6 @@ secrets-gradlePlugin = {module = "com.google.android.secrets-gradle-plugin:com.g
serialization-gradlePlugin = { module = "org.jetbrains.kotlin.plugin.serialization:org.jetbrains.kotlin.plugin.serialization.gradle.plugin", version.ref = "kotlin" }
spotless-gradlePlugin = { module = "com.diffplug.spotless:spotless-plugin-gradle", version = "8.0.0" }
[bundles]
# AndroidX
androidx = ["androidx-core-ktx", "androidx-appcompat", "androidx-appcompat-resources", "androidx-activity-ktx", "androidx-activity-compose"]
datastore = ["androidx-datastore", "androidx-datastore-preferences"]
lifecycle = ["androidx-lifecycle-runtime-ktx", "androidx-lifecycle-livedata-ktx", "androidx-lifecycle-viewmodel-ktx", "androidx-lifecycle-common-java8", "androidx-lifecycle-process", "androidx-lifecycle-viewmodel-compose", "androidx-lifecycle-runtime-compose"]
navigation = ["androidx-navigation-compose"]
navigation3 = ["androidx-navigation3-runtime", "androidx-navigation3-ui"]
room = ["androidx-room-runtime", "androidx-room-ktx"]
# Coroutines
coroutines = ["kotlinx-coroutines-android", "kotlinx-coroutines-guava"]
# Google
firebase = ["firebase-analytics", "firebase-crashlytics"]
maps-compose = ["location-services", "maps-compose", "maps-compose-utils", "maps-compose-widgets"]
# Networking
ktor = ["ktor-client-content-negotiation", "ktor-client-okhttp", "ktor-serialization-kotlinx-json", "ktorfit", "okhttp3-logging-interceptor"]
# Other
coil = ["coil", "coil-network-core", "coil-network-okhttp", "coil-svg"]
datadog = ["dd-sdk-android-compose", "dd-sdk-android-logs", "dd-sdk-android-okhttp", "dd-sdk-android-rum", "dd-sdk-android-session-replay", "dd-sdk-android-session-replay-compose", "dd-sdk-android-timber", "dd-sdk-android-trace", "dd-sdk-android-trace-otel"]
markdown = ["markdown-renderer", "markdown-renderer-m3", "markdown-renderer-android"]
osm = ["osmdroid-android", "osmbonuspack", "mgrs"]
# Testing
testing = ["junit", "androidx-test-ext-junit"]
testing-android = ["androidx-test-espresso-core", "androidx-compose-ui-test-junit4"]
testing-android-manifest = ["androidx-compose-ui-test-manifest"]
testing-hilt = ["hilt-android-testing"]
testing-navigation = ["androidx-navigation-testing"]
testing-room = ["androidx-room-testing"]
# UI
adaptive = ["androidx-compose-material3-adaptive", "androidx-compose-material3-adaptive-layout", "androidx-compose-material3-adaptive-navigation", "androidx-compose-material3-navigationSuite"]
ui = ["material", "androidx-constraintlayout", "androidx-compose-material3", "androidx-compose-material-iconsExtended", "androidx-compose-ui-tooling-preview", "androidx-compose-runtime-livedata", "androidx-compose-ui-text"]
ui-tooling = ["androidx-compose-ui-tooling"] #Separate for debugImplementation
[plugins]
# Android
android-application = { id = "com.android.application", version.ref = "agp" }

View file

@ -62,6 +62,8 @@ dependencies {
implementation(libs.material)
// OSM
implementation(libs.bundles.osm)
implementation(libs.mgrs)
implementation(libs.osmbonuspack)
implementation(libs.osmdroid.android)
implementation(libs.osmdroid.geopackage) { exclude(group = "com.j256.ormlite") }
}