256 lines
16 KiB
TOML
256 lines
16 KiB
TOML
[versions]
|
|
gluegen-rt = "2.5.0"
|
|
jna = "5.13.0" # 不要轻易改这个版本, 它可能导致 VLC 兼容性问题
|
|
jsonpathkt-kotlinx = "3.0.2"
|
|
kotlin = "2.1.0"
|
|
# kotlinx
|
|
coroutines = "1.9.0" # https://github.com/Kotlin/kotlinx.coroutines/releases
|
|
serialization = "1.7.3" # https://github.com/Kotlin/kotlinx.serialization/releases
|
|
datetime = "0.6.1" # https://github.com/Kotlin/kotlinx-datetime/releases
|
|
atomicfu = "0.26.1" # https://github.com/Kotlin/kotlinx-atomicfu/releases
|
|
kotlinx-io = "0.6.0" # https://github.com/Kotlin/kotlinx-io/releases
|
|
kotlinx-collections-immutable = "0.3.8" # https://github.com/Kotlin/kotlinx.collections.immutable/releases
|
|
#
|
|
ksoup = "0.1.4"
|
|
filekit = "0.8.1" # https://github.com/vinceglb/FileKit/releases
|
|
kotlinpoet = "1.18.1" # https://github.com/square/kotlinpoet/releases
|
|
log4j-core = "2.20.0"
|
|
korlibs = "6.0.0"
|
|
playwright = "1.44.0"
|
|
reorderable = "0.9.6" # 这个没用了, 我们 composite build fork
|
|
ktor = "2.3.12"
|
|
koin = "3.5.6" # https://github.com/InsertKoinIO/koin/releases
|
|
slf4j = "2.0.16"
|
|
jsoup = "1.18.1" # https://github.com/jhy/jsoup/releases
|
|
android-gradle-plugin = "8.7.3"
|
|
datastore = "1.1.1" # https://developer.android.com/jetpack/androidx/releases/datastore
|
|
coil = "3.0.4" # https://github.com/coil-kt/coil/releases
|
|
logback = "1.5.8"
|
|
ksp = "2.1.0-1.0.29" # https://github.com/google/ksp/releases
|
|
room = "2.7.0-alpha12" # https://developer.android.com/jetpack/androidx/releases/room#declaring_dependencies
|
|
snakeyaml = "2.2"
|
|
sqlite = "2.5.0-alpha12"
|
|
constraintlayout-compose = "0.4.0"
|
|
antlr-kotlin = "1.0.0"
|
|
oshai-kotlin-logging = "7.0.0" # Only for native. On JVM we use slf4j directly.
|
|
ipaddress-parser = "5.5.1"
|
|
androidx-annotation = "1.9.1"
|
|
androidx-media3 = "1.4.1"
|
|
androidx-lifecycle = "2.8.7"
|
|
paging = "3.3.5" # https://developer.android.com/jetpack/androidx/releases/paging
|
|
turbine = "1.2.0" # https://github.com/cashapp/turbine/releases/
|
|
|
|
mockito = "5.12.0"
|
|
mockito-kotlin = "5.4.0"
|
|
|
|
# CI helper
|
|
aws = "2.25.49"
|
|
|
|
# Compose
|
|
# https://developer.android.com/jetpack/androidx/releases/compose-material3
|
|
compose-material3 = "1.3.1"
|
|
jetpack-compose = "1.7.6"
|
|
# https://github.com/JetBrains/compose-multiplatform/releases
|
|
# https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-compatibility-and-versioning.html#use-a-developer-version-of-compose-multiplatform-compiler
|
|
compose-multiplatform = "1.7.1"
|
|
compose-lifecycle = "2.8.4"
|
|
compose-navigation = "2.8.0-alpha10"
|
|
compose-material3-adaptive = "1.0.1"
|
|
|
|
# https://maven.pkg.jetbrains.space/public/p/compose/dev/org/jetbrains/compose/compiler/compiler/
|
|
#compose-multiplatform-compiler = "1.5.11-kt-2.0.0-RC1" # used by buildscript, don't remove
|
|
stately-common = "2.0.7"
|
|
vlcj = "4.8.2"
|
|
|
|
jsystemthemedetector = "3.8"
|
|
|
|
[libraries]
|
|
# Build
|
|
android-gradle-plugin = { module = "com.android.tools.build:gradle", version.ref = "android-gradle-plugin" }
|
|
android-library-gradle-plugin = { module = "com.android.library:com.android.library.gradle.plugin", version.ref = "android-gradle-plugin" }
|
|
android-application-gradle-plugin = { module = "com.android.application:com.android.application.gradle.plugin", version.ref = "android-gradle-plugin" }
|
|
filekit-compose = { module = "io.github.vinceglb:filekit-compose", version.ref = "filekit" }
|
|
filekit-core = { module = "io.github.vinceglb:filekit-core", version.ref = "filekit" }
|
|
|
|
jsonpathkt-kotlinx = { module = "com.eygraber:jsonpathkt-kotlinx", version.ref = "jsonpathkt-kotlinx" }
|
|
kotlin-gradle-plugin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
|
|
atomicfu-gradle-plugin = { module = "org.jetbrains.kotlinx:atomicfu-gradle-plugin", version.ref = "atomicfu" }
|
|
compose-multiplatfrom-gradle-plugin = { module = "org.jetbrains.compose:org.jetbrains.compose.gradle.plugin", version.ref = "compose-multiplatform" }
|
|
kotlin-compose-compiler-gradle-plugin = { module = "org.jetbrains.kotlin:compose-compiler-gradle-plugin", version.ref = "kotlin" }
|
|
#compose-multiplatfrom-compiler-plugin = { module = "org.jetbrains.compose:org.jetbrains.compose.compiler", version.ref = "compose-multiplatform-compiler" }
|
|
|
|
# Kotlinx
|
|
ksoup = { module = "com.fleeksoft.ksoup:ksoup", version.ref = "ksoup" }
|
|
oshai-kotlin-logging = { module = "io.github.oshai:kotlin-logging", version.ref = "oshai-kotlin-logging" }
|
|
kotlinx-datetime = { module = "org.jetbrains.kotlinx:kotlinx-datetime", version.ref = "datetime" }
|
|
kotlinx-io-core = { module = "org.jetbrains.kotlinx:kotlinx-io-core", version.ref = "kotlinx-io" }
|
|
kotlinx-io-bytestring = { module = "org.jetbrains.kotlinx:kotlinx-io-bytestring", version.ref = "kotlinx-io" }
|
|
kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "coroutines" }
|
|
kotlinx-coroutines-android = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "coroutines" }
|
|
kotlinx-coroutines-swing = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-swing", version.ref = "coroutines" }
|
|
kotlinx-coroutines-debug = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-debug", version.ref = "coroutines" }
|
|
kotlinx-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "coroutines" }
|
|
kotlinx-serialization-core = { module = "org.jetbrains.kotlinx:kotlinx-serialization-core", version.ref = "serialization" }
|
|
kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "serialization" }
|
|
kotlinx-serialization-protobuf = { module = "org.jetbrains.kotlinx:kotlinx-serialization-protobuf", version.ref = "serialization" }
|
|
kotlinx-serialization-json-io = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json-io", version.ref = "serialization" }
|
|
kotlinx-collections-immutable = { module = "org.jetbrains.kotlinx:kotlinx-collections-immutable", version.ref = "kotlinx-collections-immutable" }
|
|
atomicfu = { module = "org.jetbrains.kotlinx:atomicfu", version.ref = "atomicfu" }
|
|
#kotlinx-serialization-protobuf = { module = "org.jetbrains.kotlinx:kotlinx-serialization-protobuf", version.ref = "serialization" }
|
|
|
|
kotlinpoet = { module = "com.squareup:kotlinpoet", version.ref = "kotlinpoet" }
|
|
|
|
jetbrains-annotations = { module = "org.jetbrains:annotations", version = "23.0.0" }
|
|
|
|
# Korlibs
|
|
korlibs-crypto = { module = "com.soywiz:korlibs-crypto", version.ref = "korlibs" }
|
|
|
|
# Ktor
|
|
ktor-client-core = { module = "io.ktor:ktor-client-core", version.ref = "ktor" }
|
|
ktor-client-cio = { module = "io.ktor:ktor-client-cio", version.ref = "ktor" }
|
|
ktor-client-darwin = { module = "io.ktor:ktor-client-darwin", version.ref = "ktor" }
|
|
ktor-client-logging = { module = "io.ktor:ktor-client-logging", version.ref = "ktor" }
|
|
ktor-client-auth = { module = "io.ktor:ktor-client-auth", version.ref = "ktor" }
|
|
ktor-client-okhttp = { module = "io.ktor:ktor-client-okhttp", version.ref = "ktor" }
|
|
ktor-client-websockets = { module = "io.ktor:ktor-client-websockets", version.ref = "ktor" }
|
|
ktor-client-content-negotiation = { module = "io.ktor:ktor-client-content-negotiation", version.ref = "ktor" }
|
|
ktor-serialization-kotlinx-json = { module = "io.ktor:ktor-serialization-kotlinx-json", version.ref = "ktor" }
|
|
|
|
ktor-server-core = { module = "io.ktor:ktor-server-core", version.ref = "ktor" }
|
|
ktor-server-test-host = { module = "io.ktor:ktor-server-test-host", version.ref = "ktor" }
|
|
|
|
# Koin
|
|
koin-core = { module = "io.insert-koin:koin-core", version.ref = "koin" }
|
|
koin-android = { module = "io.insert-koin:koin-android", version.ref = "koin" }
|
|
koin-test = { module = "io.insert-koin:koin-test", version.ref = "koin" }
|
|
|
|
# Yamlkt
|
|
directories = { module = "dev.dirs:directories", version = "26" }
|
|
snakeyaml = { module = "org.yaml:snakeyaml", version.ref = "snakeyaml" }
|
|
|
|
# Logging
|
|
log4j-core = { module = "org.apache.logging.log4j:log4j-core", version.ref = "log4j-core" }
|
|
log4j-slf4j-impl = { module = "org.apache.logging.log4j:log4j-slf4j2-impl", version.ref = "log4j-core" }
|
|
playwright = { module = "com.microsoft.playwright:playwright", version.ref = "playwright" }
|
|
slf4j-api = { module = "org.slf4j:slf4j-api", version.ref = "slf4j" }
|
|
slf4j-simple = { module = "org.slf4j:slf4j-simple", version.ref = "slf4j" }
|
|
logback-android = { module = "com.github.tony19:logback-android", version = "3.0.0" }
|
|
logback-classic = { module = "ch.qos.logback:logback-classic", version.ref = "logback" }
|
|
|
|
# https://github.com/coil-kt/coil
|
|
coil = { module = "io.coil-kt.coil3:coil", version.ref = "coil" }
|
|
#coil-network-ktor = { module = "io.coil-kt.coil:coil-network-ktor", version.ref = "coil" }
|
|
coil-core = { module = "io.coil-kt.coil3:coil-core", version.ref = "coil" }
|
|
coil-compose-core = { module = "io.coil-kt.coil3:coil-compose-core", version.ref = "coil" }
|
|
coil-svg = { module = "io.coil-kt.coil3:coil-svg", version.ref = "coil" }
|
|
#coil-gif = { module = "io.coil-kt.coil3:coil-gif", version.ref = "coil" }
|
|
coil-network-okhttp = { module = "io.coil-kt.coil3:coil-network-okhttp", version.ref = "coil" }
|
|
coil-network-ktor2 = { module = "io.coil-kt.coil3:coil-network-ktor2", version.ref = "coil" }
|
|
coil-network-ktor3 = { module = "io.coil-kt.coil3:coil-network-ktor3", version.ref = "coil" }
|
|
|
|
# Jsoup - HTML parsing (for dmhy)
|
|
jsoup = { module = "org.jsoup:jsoup", version.ref = "jsoup" }
|
|
|
|
antlr-kotlin-runtime = { module = "com.strumenta:antlr-kotlin-runtime", version.ref = "antlr-kotlin" }
|
|
|
|
# IP Address parser for JVM
|
|
ipaddress-parser = { module = "com.github.seancfoley:ipaddress", version.ref = "ipaddress-parser" }
|
|
|
|
# Android Datastore
|
|
datastore = { module = "androidx.datastore:datastore", version.ref = "datastore" }
|
|
datastore-core = { module = "androidx.datastore:datastore-core", version.ref = "datastore" }
|
|
datastore-preferences = { module = "androidx.datastore:datastore-preferences", version.ref = "datastore" }
|
|
datastore-preferences-core = { module = "androidx.datastore:datastore-preferences-core", version.ref = "datastore" }
|
|
|
|
# Multi-platform Android Room and implemention
|
|
androidx-room-compiler = { group = "androidx.room", name = "room-compiler", version.ref = "room" }
|
|
androidx-room-ktx = { group = "androidx.room", name = "room-ktx", version.ref = "room" }
|
|
androidx-room-paging = { group = "androidx.room", name = "room-paging", version.ref = "room" }
|
|
androidx-room-runtime = { group = "androidx.room", name = "room-runtime", version.ref = "room" }
|
|
sqlite = { module = "androidx.sqlite:sqlite", version.ref = "sqlite" }
|
|
sqlite-bundled = { module = "androidx.sqlite:sqlite-bundled", version.ref = "sqlite" }
|
|
|
|
paging-common = { module = "androidx.paging:paging-common", version.ref = "paging" }
|
|
paging-compose-android = { module = "androidx.paging:paging-compose", version.ref = "paging" }
|
|
|
|
# Navigation
|
|
precompose = { module = "moe.tlaster:precompose", version = "1.5.10" }
|
|
precompose-koin = { module = "moe.tlaster:precompose-koin", version = "1.5.10" }
|
|
precompose-viewmodel = { module = "moe.tlaster:precompose-viewmodel", version = "1.5.10" }
|
|
|
|
# Compose Multiplatform
|
|
reorderable = { module = "org.burnoutcrew.composereorderable:reorderable", version.ref = "reorderable" }
|
|
constraintlayout-compose = { module = "tech.annexflow.compose:constraintlayout-compose-multiplatform", version.ref = "constraintlayout-compose" }
|
|
compose-lifecycle-runtime-compose = { module = "org.jetbrains.androidx.lifecycle:lifecycle-runtime-compose", version.ref = "compose-lifecycle" }
|
|
compose-lifecycle-viewmodel-compose = { module = "org.jetbrains.androidx.lifecycle:lifecycle-viewmodel-compose", version.ref = "compose-lifecycle" }
|
|
compose-navigation-compose = { module = "org.jetbrains.androidx.navigation:navigation-compose", version.ref = "compose-navigation" }
|
|
compose-navigation-runtime = { module = "org.jetbrains.androidx.navigation:navigation-runtime", version.ref = "compose-navigation" }
|
|
compose-material3-adaptive-core = { module = "org.jetbrains.compose.material3.adaptive:adaptive", version.ref = "compose-material3-adaptive" }
|
|
compose-material3-adaptive-layout = { module = "org.jetbrains.compose.material3.adaptive:adaptive-layout", version.ref = "compose-material3-adaptive" }
|
|
compose-material3-adaptive-navigation0 = { module = "org.jetbrains.compose.material3.adaptive:adaptive-navigation", version.ref = "compose-material3-adaptive" }
|
|
compose-material3-adaptive-navigation-suite = { module = "org.jetbrains.compose.material3:material3-adaptive-navigation-suite", version.ref = "compose-multiplatform" }
|
|
|
|
# Android-only libraries
|
|
# Each library has its own version, so we don't use `Versions` here.
|
|
androidx-core-ktx = { module = "androidx.core:core-ktx", version = "1.13.1" }
|
|
androidx-activity-compose = { module = "androidx.activity:activity-compose", version = "1.9.2" }
|
|
androidx-activity-ktx = { module = "androidx.activity:activity-ktx", version = "1.9.0" }
|
|
androidx-appcompat = { module = "androidx.appcompat:appcompat", version = "1.7.0" }
|
|
androidx-material = { module = "com.google.android.material:material", version = "1.12.0" }
|
|
androidx-material3-window-size-class0 = { module = "androidx.compose.material3:material3-window-size-class", version = "1.2.1" }
|
|
androidx-browser = { module = "androidx.browser:browser", version = "1.8.0" }
|
|
androidx-media = { module = "androidx.media:media", version = "1.7.0" }
|
|
androidx-lifecycle-runtime-ktx = { module = "androidx.lifecycle:lifecycle-runtime-ktx", version.ref = "androidx-lifecycle" }
|
|
androidx-lifecycle-service = { module = "androidx.lifecycle:lifecycle-service", version.ref = "androidx-lifecycle" }
|
|
androidx-lifecycle-process = { module = "androidx.lifecycle:lifecycle-process", version.ref = "androidx-lifecycle" }
|
|
androidx-collection = { module = "androidx.collection:collection", version = "1.4.5" }
|
|
|
|
#androidx-navigation-compose = { module = "androidx.navigation:navigation-compose", version = "2.7.6" }
|
|
slf4j-android = { module = "uk.uuid.slf4j:slf4j-android", version = "2.0.7-0" }
|
|
|
|
# Android unit test
|
|
mockito = { module = "org.mockito:mockito-core", version.ref = "mockito" }
|
|
mockito-kotlin = { module = "org.mockito.kotlin:mockito-kotlin", version.ref = "mockito-kotlin" }
|
|
|
|
androidx-media3-ui = { module = "androidx.media3:media3-ui", version.ref = "androidx-media3" }
|
|
androidx-media3-exoplayer = { module = "androidx.media3:media3-exoplayer", version.ref = "androidx-media3" }
|
|
androidx-media3-exoplayer-dash = { module = "androidx.media3:media3-exoplayer-dash", version.ref = "androidx-media3" }
|
|
androidx-media3-exoplayer-hls = { module = "androidx.media3:media3-exoplayer-hls", version.ref = "androidx-media3" }
|
|
|
|
androidx-compose-ui = { module = "androidx.compose.ui:ui", version.ref = "jetpack-compose" }
|
|
androidx-compose-ui-tooling = { module = "androidx.compose.ui:ui-tooling", version.ref = "jetpack-compose" }
|
|
androidx-compose-ui-viewbinding = { module = "androidx.compose.ui:ui-viewbinding", version.ref = "jetpack-compose" }
|
|
androidx-compose-foundation = { module = "androidx.compose.foundation:foundation", version.ref = "jetpack-compose" }
|
|
androidx-compose-material = { module = "androidx.compose.material:material", version.ref = "jetpack-compose" }
|
|
androidx-compose-material3 = { module = "androidx.compose.material3:material3", version.ref = "compose-material3" }
|
|
androidx-compose-ui-tooling-preview = { module = "androidx.compose.ui:ui-tooling-preview", version.ref = "jetpack-compose" }
|
|
androidx-annotation = { module = "androidx.annotation:annotation", version.ref = "androidx-annotation" }
|
|
# compose-runtime-livedata = { module = "androidx.compose.runtime:runtime-livedata", version.ref = "jetpackCompose" }
|
|
|
|
stately-common = { module = "co.touchlab:stately-common", version.ref = "stately-common" }
|
|
|
|
#javafx-controls = { module = "org.openjfx:javafx-controls", version = "17.0.11", classifier = "mac" }
|
|
#javafx-graphics = { module = "org.openjfx:javafx-graphics", version = "17.0.11", classifier = "mac" }
|
|
|
|
# VLC
|
|
# NOTE: YOU WILL NEVER WANT TO CHANGE VLCJ AND JNA VERSIONS.
|
|
# ONLY VLC 3.0.18 IS SUPPORTED.
|
|
vlcj = { module = "uk.co.caprica:vlcj", version.ref = "vlcj" }
|
|
vlcj-javafx = { module = "uk.co.caprica:vlcj-javafx", version = "1.2.0" }
|
|
jna = { module = "net.java.dev.jna:jna", version.ref = "jna" }
|
|
jna-platform = { module = "net.java.dev.jna:jna-platform", version.ref = "jna" }
|
|
|
|
|
|
#// https://mvnrepository.com/artifact/software.amazon.awssdk/s3
|
|
#testImplementation("software.amazon.awssdk:s3:2.25.49")
|
|
|
|
# S3
|
|
aws-s3 = { module = "software.amazon.awssdk:s3", version.ref = "aws" }
|
|
aws-sts = { module = "software.amazon.awssdk:sts", version.ref = "aws" }
|
|
aws-s3control = { module = "software.amazon.awssdk:s3control", version.ref = "aws" }
|
|
aws-secretsmanager = { module = "software.amazon.awssdk:secretsmanager", version.ref = "aws" }
|
|
|
|
#htmlunit = { group = "net.sourceforge.htmlunit", name = "htmlunit", version = "2.70.0" }
|
|
|
|
jsystemthemedetector = { module = "org.openani.jsystemthemedetector:jSystemThemeDetector", version.ref = "jsystemthemedetector" }
|
|
turbine = { module = "app.cash.turbine:turbine", version.ref = "turbine" } |