Skip to content

Commit

Permalink
moved version catalog to TOML
Browse files Browse the repository at this point in the history
This gives upgrade checking support

Signed-off-by: Jonas Kalderstam <[email protected]>
  • Loading branch information
spacecowboy committed Jan 22, 2025
1 parent 2fbd336 commit 90e8cfc
Show file tree
Hide file tree
Showing 2 changed files with 152 additions and 435 deletions.
152 changes: 152 additions & 0 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,152 @@
[versions]
# Compose compiler is highly coupled to Kotlin version
# See https://developer.android.com/jetpack/androidx/releases/compose-kotlin#pre-release_kotlin_compatibility
kotlin = "1.9.23"
ksp = "1.9.23-1.0.20"
kotlinxSerialization = "1.6.1"
androidPlugin = "8.6.0"
composeCompiler = "1.5.11"
# BEGIN These should be upgraded in unison
okhttp = "4.10.0"
okio = "3.2.0"
conscrypt = "2.5.2"
# END Unison
ktlint-gradle = "12.1.1"
ktlint-compose = "0.4.3"
kodein = "7.5.0"
coroutines = "1.7.3"
gofeed = "0.1.2"
moshi = "1.12.0"
desugar = "2.0.3"
jsoup = "1.7.3"
tagsoup = "1.2.1"
readability4j = "1.0.5"
retrofit = "2.9.0"
qrgen = "2.6.0"
androidxCore = "1.10.1"
androidxTestcore = "1.5.0"
appcompat = "1.6.1"
material = "1.6.1"
material3 = "1.1.0"
navigationCompose = "2.7.7"
preference = "1.2.1"
testRunner = "1.4.0"
lifecycle = "2.6.2"
room = "2.5.2"
openai-client = "3.8.2"
compose = "2024.04.00"
activityCompose = "1.7.0"
paging = "3.2.1"
accompanist = "0.30.1"
coil = "2.4.0"
androidWindow = "1.0.0"
lazycolumnscrollbar = "2.2.0"
androidxBrowser = "1.5.0"
jetbrains-markdown = "0.7.3"
rust-nostr = "0.38.3"
junit = "4.13.2"
espresso = "3.3.0"
mockk = "1.13.3"
mockito = "2.13.0"
androidx-test-junit-ktx = "1.1.4"

[libraries]
okhttp-bom = { module = "com.squareup.okhttp3:okhttp-bom", version.ref = "okhttp" }
coil-bom = { module = "io.coil-kt:coil-bom", version.ref = "coil" }
compose-bom = { module = "androidx.compose:compose-bom", version.ref = "compose" }
openai-client-bom = { module = "com.aallam.openai:openai-client-bom", version.ref = "openai-client" }
openai-client = { module = "com.aallam.openai:openai-client" }
ktor-client-okhttp = { module = "io.ktor:ktor-client-okhttp" }
ktlint-compose = { module = "io.nlopez.compose.rules:ktlint", version.ref = "ktlint-compose" }
room = { module = "androidx.room:room-compiler", version.ref = "room" }
room-ktx = { module = "androidx.room:room-ktx", version.ref = "room" }
room-paging = { module = "androidx.room:room-paging", version.ref = "room" }
core-ktx = { module = "androidx.core:core-ktx", version.ref = "androidxCore" }
androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "appcompat" }
androidx-preference = { module = "androidx.preference:preference", version.ref = "preference" }
lifecycle-runtime-compose = { module = "androidx.lifecycle:lifecycle-runtime-compose", version.ref = "lifecycle" }
lifecycle-runtime-ktx = { module = "androidx.lifecycle:lifecycle-runtime-ktx", version.ref = "lifecycle" }
lifecycle-viewmodel-ktx = { module = "androidx.lifecycle:lifecycle-viewmodel-ktx", version.ref = "lifecycle" }
lifecycle-viewmodel-savedstate = { module = "androidx.lifecycle:lifecycle-viewmodel-savedstate", version.ref = "lifecycle" }
paging-runtime-ktx = { module = "androidx.paging:paging-runtime-ktx", version.ref = "paging" }
activity-compose = { module = "androidx.activity:activity-compose", version.ref = "activityCompose" }
ui = { module = "androidx.compose.ui:ui" }
foundation = { module = "androidx.compose.foundation:foundation" }
foundation-layout = { module = "androidx.compose.foundation:foundation-layout" }
compose-material3 = { module = "androidx.compose.material3:material3", version.ref = "material3" }
compose-material = { module = "androidx.compose.material:material" }
compose-material3-windowsizeclass = { module = "androidx.compose.material3:material3-window-size-class" }
compose-material-icons-extended = { module = "androidx.compose.material:material-icons-extended" }
runtime = { module = "androidx.compose.runtime:runtime" }
ui-tooling = { module = "androidx.compose.ui:ui-tooling" }
navigation-compose = { module = "androidx.navigation:navigation-compose", version.ref = "navigationCompose" }
paging-compose = { module = "androidx.paging:paging-compose", version.ref = "paging" }
window = { module = "androidx.window:window", version.ref = "androidWindow" }
android-material = { module = "com.google.android.material:material", version.ref = "material" }
accompanist-permissions = { module = "com.google.accompanist:accompanist-permissions", version.ref = "accompanist" }
accompanist-systemuicontroller = { module = "com.google.accompanist:accompanist-systemuicontroller", version.ref = "accompanist" }
accompanist-adaptive = { module = "com.google.accompanist:accompanist-adaptive", version.ref = "accompanist" }
desugar = { module = "com.android.tools:desugar_jdk_libs", version.ref = "desugar" }
jsoup = { module = "org.jsoup:jsoup", version.ref = "jsoup" }
tagsoup = { module = "org.ccil.cowan.tagsoup:tagsoup", version.ref = "tagsoup" }
gofeed-android = { module = "com.nononsenseapps.gofeed:gofeed-android", version.ref = "gofeed" }
rust-nostr = { module = "org.rust-nostr:nostr-sdk", version.ref = "rust-nostr" }
jetbrains-markdown = { module = "org.jetbrains:markdown", version.ref = "jetbrains-markdown" }
okhttp = { module = "com.squareup.okhttp3:okhttp" }
okio = { module = "com.squareup.okio:okio", version.ref = "okio" }
conscrypt-android = { module = "org.conscrypt:conscrypt-android", version.ref = "conscrypt" }
coil-base = { module = "io.coil-kt:coil-base" }
coil-gif = { module = "io.coil-kt:coil-gif" }
coil-svg = { module = "io.coil-kt:coil-svg" }
coil-compose = { module = "io.coil-kt:coil-compose" }
kotlin-stdlib = { module = "org.jetbrains.kotlin:kotlin-stdlib", version.ref = "kotlin" }
kotlin-stdlib-common = { module = "org.jetbrains.kotlin:kotlin-stdlib-common", version.ref = "kotlin" }
kotlin-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinxSerialization" }
kotlin-test-junit = { module = "org.jetbrains.kotlin:kotlin-test-junit", version.ref = "kotlin" }
kotlin-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "coroutines" }
kotlin-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "coroutines" }
kotlin-coroutines-android = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "coroutines" }
kodein-androidx = { module = "org.kodein.di:kodein-di-framework-android-x", version.ref = "kodein" }
androidx-browser = { module = "androidx.browser:browser", version.ref = "androidxBrowser" }
readability4j = { module = "net.dankito.readability4j:readability4j", version.ref = "readability4j" }
retrofit = { module = "com.squareup.retrofit2:retrofit", version.ref = "retrofit" }
retrofit-converter-moshi = { module = "com.squareup.retrofit2:converter-moshi", version.ref = "retrofit" }
moshi = { module = "com.squareup.moshi:moshi", version.ref = "moshi" }
moshi-kotlin = { module = "com.squareup.moshi:moshi-kotlin", version.ref = "moshi" }
moshi-adapters = { module = "com.squareup.moshi:moshi-adapters", version.ref = "moshi" }
qrgen = { module = "com.github.kenglxn.qrgen:android", version.ref = "qrgen" }
lazycolumnscrollbar = { module = "com.github.nanihadesuka:LazyColumnScrollbar", version.ref = "lazycolumnscrollbar" }
emoji2-view-helper = { module = "androidx.emoji2:emoji2-views-helper", version = "1.3.+" }
emoji2 = { module = "androidx.emoji2:emoji2", version = "1.3.+" }
junit = { module = "junit:junit", version.ref = "junit" }
mockito-core = { module = "org.mockito:mockito-core", version.ref = "mockito" }
mockk = { module = "io.mockk:mockk", version.ref = "mockk" }
mockwebserver = { module = "com.squareup.okhttp3:mockwebserver", version.ref = "okhttp" }
mockk-android = { module = "io.mockk:mockk-android", version.ref = "mockk" }
androidx-test-core = { module = "androidx.test:core", version.ref = "androidxTestcore" }
androidx-test-core-ktx = { module = "androidx.test:core-ktx", version.ref = "androidxTestcore" }
androidx-test-runner = { module = "androidx.test:runner", version.ref = "testRunner" }
room-testing = { module = "androidx.room:room-testing", version.ref = "room" }
espresso-core = { module = "androidx.test.espresso:espresso-core", version.ref = "espresso" }
compose-ui-test-junit4 = { module = "androidx.compose.ui:ui-test-junit4" }
compose-ui-test-manifest = { module = "androidx.compose.ui:ui-test-manifest" }
androidx-test-junit-ktx = { module = "androidx.test.ext:junit-ktx", version.ref = "androidx-test-junit-ktx" }

[plugins]
android-application = { id = "com.android.application", version.ref = "androidPlugin" }
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
kotlin-ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
kotlin-parcelize = { id = "org.jetbrains.kotlin.plugin.parcelize", version.ref = "kotlin" }
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
ktlint-gradle = { id = "org.jlleitschuh.gradle.ktlint", version.ref = "ktlint-gradle" }

[bundles]
okhttp = ["okhttp", "okio"]
okhttp-android = ["okhttp", "okio", "conscrypt-android"]
kotlin = ["kotlin-stdlib", "kotlin-stdlib-common", "kotlin-coroutines-core", "kotlin-serialization-json"]
jvm = ["jsoup", "tagsoup", "readability4j", "retrofit", "retrofit-converter-moshi", "moshi", "moshi-kotlin", "moshi-adapters", "qrgen", "gofeed-android"]
android = ["lifecycle-runtime-ktx", "lifecycle-viewmodel-ktx", "lifecycle-viewmodel-savedstate", "paging-runtime-ktx", "room-ktx", "room-paging", "core-ktx", "androidx-appcompat", "androidx-preference", "coil-base", "coil-gif", "coil-svg", "kotlin-coroutines-android", "kodein-androidx", "androidx-browser", "emoji2", "emoji2-view-helper"]
compose = ["activity-compose", "ui", "foundation", "foundation-layout", "compose-material3", "compose-material", "compose-material-icons-extended", "runtime", "ui-tooling", "navigation-compose", "paging-compose", "window", "android-material", "accompanist-permissions", "accompanist-systemuicontroller", "accompanist-adaptive", "compose-material3-windowsizeclass", "lifecycle-runtime-compose", "coil-compose", "lazycolumnscrollbar"]
test = ["kotlin-test-junit", "kotlin-coroutines-test", "junit", "mockito-core", "mockk", "mockwebserver"]
android-test = ["kotlin-test-junit", "kotlin-coroutines-test", "mockk-android", "junit", "mockwebserver", "androidx-test-core", "androidx-test-core-ktx", "androidx-test-runner", "androidx-test-junit-ktx", "room-testing", "espresso-core", "compose-ui-test-junit4"]
Loading

0 comments on commit 90e8cfc

Please sign in to comment.