gradle/libs.versions.toml
# Central declaration of dependencies (Gradle Version Catalog)# https://docs.gradle.org/current/userguide/platforms.html#sub:conventional-dependencies-toml # Declaring Rich and/or Ranged Versions# https://docs.gradle.org/current/userguide/rich_versions.html# https://docs.gradle.org/current/userguide/single_versions.html [versions] fluxo = "0.1.0-SNAPSHOT" # For local development to dogfood the lib# https://s01.oss.sonatype.org/content/repositories/snapshots/io/github/fluxo-kt/fluxo-core/maven-metadata.xml# WARN: Don't forget to update snapshot version example in ../README.mdfluxoSnapshot = "0.1-140e32d-SNAPSHOT" # 21 is default for new projects per May 2021, required for Compose, but we don't need it for core modulesandroidMinSdk = "9"androidTargetSdk = "33"androidCompileSdk = "33"androidBuildTools = "33.0.2" # Java/Kotlin compatibilityjavaToolchain = "11"javaLangTarget = "1.8"kotlinLangVersion = "1.7" # https://mvnrepository.com/artifact/org.jetbrains.kotlin/kotlin-gradle-plugin# WARN: Don't forget to update kotlin version badge in ../README.mdkotlin = "1.8.21" # https://github.com/google/ksp/releasesksp = "1.8.21-1.0.11" # https://github.com/arkivanov/Essenty/releasesessenty = "1.1.0" # Dokka is a documentation engine for Kotlin/Java# https://github.com/Kotlin/dokka/releases# https://mvnrepository.com/artifact/org.jetbrains.dokka/dokka-gradle-plugin?repo=space-kotlin-dokka-devdokka = "1.8.20" # https://github.com/Kotlin/kotlinx.coroutines/releases# https://mvnrepository.com/artifact/org.jetbrains.kotlinx/kotlinx-coroutines-corecoroutines = "1.7.1" # Public API management tool# https://github.com/Kotlin/binary-compatibility-validator/releases# Can't be updated to 0.13+ vefore Kotlin metadata 0.6.0 support in AtomicFUbin-compat-validator = "0.12.1" # Android Plugin for Gradle# Note: R8 version can be updated independently in settings.gradle.kts# https://maven.google.com/web/index.html#com.android.tools.build:gradle# https://mvnrepository.com/artifact/com.android.tools.build/gradle?repo=google# https://developer.android.com/build/releases/gradle-plugin#updating-pluginandroid-gradle-plugin = "8.1.1" # Λrrow - Functional companion to Kotlin's Standard Library# https://mvnrepository.com/artifact/io.arrow-kt/arrow-corearrow = "1.2.1" # https://github.com/detekt/detekt/releasesdetekt = "1.23.0" # Kotlin code coverage plugin# https://github.com/Kotlin/kotlinx-kover/releases# https://mvnrepository.com/artifact/org.jetbrains.kotlinx.kover/org.jetbrains.kotlinx.kover.gradle.pluginkover = "0.7.3" # Compose Multiplatform# https://github.com/JetBrains/compose-multiplatform/releasesjetbrains-compose = "1.4.0" # Android Jetpack# https://developer.android.com/jetpack/androidx/versions# https://developer.android.com/jetpack/androidx/versions/all-channel#latest_release # https://developer.android.com/jetpack/androidx/releases/annotationandroidx-annotation = "1.7.0-alpha02" # Java Microbenchmark Harness (JMH)# https://github.com/openjdk/jmh/tagsjmh = "1.37" # NPM repo dependencies js-engineIo = "6.4.2" # https://www.npmjs.com/package/engine.io?activeTab=versionsjs-karma = "6.4.2" # https://www.npmjs.com/package/karma?activeTab=versionsjs-mocha = "10.2.0" # https://www.npmjs.com/package/mocha?activeTab=versionsjs-socketIo = "4.6.2" # https://www.npmjs.com/package/socket.io?activeTab=versionsjs-uaParserJs = "0.7.35" # https://www.npmjs.com/package/ua-parser-js?activeTab=versionsjs-webpack = "5.85.0" # https://www.npmjs.com/package/webpack?activeTab=versionsjs-webpackCli = "5.1.1" # https://www.npmjs.com/package/webpack-cli?activeTab=versionsjs-webpackDevServer = "4.15.0" # https://www.npmjs.com/package/webpack-dev-server?activeTab=versions # Libraries to compare/benchmark againstballast = "4.0.0" # https://mvnrepository.com/artifact/io.github.copper-leaf/ballast-coreelmslie = "3.0.0-alpha06" # https://github.com/vivid-money/elmslie/tagsflowredux = "1.2.0" # https://mvnrepository.com/artifact/com.freeletics.flowredux/flowreduxgenakuReduce = "1.0.0" # https://github.com/genaku/Reduce/tagsmobiusKt = "1.0.0-rc06" # https://mvnrepository.com/artifact/org.drewcarlson/mobiuskt-coroutinesmotorroCommonStateMachine = "3.0.2" # https://mvnrepository.com/artifact/com.motorro.commonstatemachine/commonstatemachinemvicore = "1.4.0" # https://github.com/badoo/MVICore/releasesmvikotlin = "3.2.1" # https://mvnrepository.com/artifact/com.arkivanov.mvikotlin/mvikotlinorbit = "6.1.0" # https://mvnrepository.com/artifact/org.orbit-mvi/orbit-corereduktor = "0.4" # https://github.com/g000sha256/reduktor/tagsreduxkotlin = "0.6.1" # https://mvnrepository.com/artifact/org.reduxkotlin/redux-kotlin-threadsaferespawnFlowMVI = "2.0.0-beta09" # https://mvnrepository.com/artifact/pro.respawn.flowmvi/coretinderStateMachine = "0.3.0" # https://github.com/Tinder/StateMachine/releasesvisualfsm = "1.5.0" # https://mvnrepository.com/artifact/ru.kontur.mobile.visualfsm/visualfsm-core [libraries] kotlin-atomicfu = { module = "org.jetbrains.kotlin:atomicfu", version.ref = "kotlin" }kotlin-atomicfu-runtime = { module = "org.jetbrains.kotlin:kotlinx-atomicfu-runtime", version.ref = "kotlin" }kotlin-parcelize-runtime = { module = "org.jetbrains.kotlin:kotlin-parcelize-runtime", version.ref = "kotlin" } # Framework for testing concurrent data structures# https://kotlinlang.org/docs/lincheck-guide.html# https://github.com/Kotlin/kotlinx-lincheck/releaseskotlinx-lincheck = { module = "org.jetbrains.kotlinx:lincheck", version = "2.23" } # https://github.com/Kotlin/kotlinx-datetime/tagskotlinx-datetime = { module = "org.jetbrains.kotlinx:kotlinx-datetime", version = "0.4.0" } kotlinx-coroutines-bom = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-bom", version.ref = "coroutines" }kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "coroutines" }kotlinx-coroutines-debug = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-debug", version.ref = "coroutines" }kotlinx-coroutines-reactive = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-reactive", version.ref = "coroutines" }kotlinx-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "coroutines" } # https://mvnrepository.com/artifact/org.jetbrains/annotationsjetbrains-annotation = { module = "org.jetbrains:annotations", version = "24.0.1" } androidx-annotation = { module = "androidx.annotation:annotation", version.ref = "androidx-annotation" } # JSR 305: Annotations for Software Defect Detection# https://mvnrepository.com/artifact/com.google.code.findbugs/jsr305jsr305 = { module = "com.google.code.findbugs:jsr305", version = "3.0.2" } essenty-instance-keeper = { module = "com.arkivanov.essenty:instance-keeper", version.ref = "essenty" }essenty-lifecycle = { module = "com.arkivanov.essenty:lifecycle", version.ref = "essenty" } arrow-bom = { module = "io.arrow-kt:arrow-stack", version.ref = "arrow" }arrow-core = { module = "io.arrow-kt:arrow-core", version.ref = "arrow" } # https://mvnrepository.com/artifact/junit/junittest-junit = { module = "junit:junit", version = "4.13.2" }# https://mvnrepository.com/artifact/org.robolectric/robolectrictest-robolectric = { module = "org.robolectric:robolectric", version = "4.10.3" }# https://github.com/cashapp/turbine/releasestest-turbine = { module = "app.cash.turbine:turbine", version = "0.13.0" } plugin-kotlin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }plugin-detekt = { module = "io.gitlab.arturbosch.detekt:detekt-gradle-plugin", version.ref = "detekt" }plugin-android = { module = "com.android.tools.build:gradle", version.ref = "android-gradle-plugin" }plugin-ksp = { module = "com.google.devtools.ksp:symbol-processing-gradle-plugin", version.ref = "ksp" }plugin-jetbrains-compose = { group = "org.jetbrains.compose", name = "compose-gradle-plugin", version.ref = "jetbrains-compose" } # https://github.com/mrmans0n/compose-rules/releases# https://mvnrepository.com/artifact/io.nlopez.compose.rules/detektdetekt-compose = { module = "io.nlopez.compose.rules:detekt", version = "0.3.0" }detekt-formatting = { module = "io.gitlab.arturbosch.detekt:detekt-formatting", version.ref = "detekt" }detekt-core = { module = "io.gitlab.arturbosch.detekt:detekt-core", version.ref = "detekt" } jmh-core = { module = "org.openjdk.jmh:jmh-core", version.ref = "jmh" }jmh-generator-annprocess = { module = "org.openjdk.jmh:jmh-generator-annprocess", version.ref = "jmh" } plugin-binCompatValidator = { module = "org.jetbrains.kotlinx:binary-compatibility-validator", version.ref = "bin-compat-validator" } # AtomicFU: The idiomatic way to use atomic operations in Kotlin# https://github.com/Kotlin/kotlinx-atomicfu/releasesplugin-kotlinx-atomicfu = { module = "org.jetbrains.kotlinx:atomicfu-gradle-plugin", version = "0.20.2" }kotlin-gradle-api = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin-api", version.ref = "kotlin" } plugin-dokka = { module = "org.jetbrains.dokka:dokka-gradle-plugin", version.ref = "dokka" } # Gradle plugin for building plugins for IntelliJ-based IDEs# https://github.com/JetBrains/gradle-intellij-plugin/releasesplugin-intellij = { module = "org.jetbrains.intellij.plugins:gradle-intellij-plugin", version = "1.15.0" } # Benchmark dependencies # https://mvnrepository.com/artifact/io.reactivex.rxjava2/rxjavarxjava2 = { module = "io.reactivex.rxjava2:rxjava", version.strictly = "2.2.21" } # build or classpath dependencies for the forced update (security recommendations) # https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databindjackson-databind = { module = "com.fasterxml.jackson.core:jackson-databind", version = "2.15.2" }# https://mvnrepository.com/artifact/org.jsoup/jsoupjsoup = { module = "org.jsoup:jsoup", version = "1.16.1" }# https://mvnrepository.com/artifact/org.json/jsonorg-json = { module = "org.json:json", version = "20230618" }# https://mvnrepository.com/artifact/com.fasterxml.woodstox/woodstox-corewoodstox-core = { module = "com.fasterxml.woodstox:woodstox-core", version = "6.5.1" } [bundles]# List of deps with forced versionspinned = [ "androidx-annotation", "jetbrains-annotation", "jsr305", # security recommendations "jackson-databind", "jsoup", "org-json", "woodstox-core",] [plugins]kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }kotlin-ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" } kotlin-dokka = { id = "org.jetbrains.dokka", version.ref = "dokka" } kotlinx-kover = { id = "org.jetbrains.kotlinx.kover", version.ref = "kover" } kotlinx-binCompatValidator = { id = "org.jetbrains.kotlinx.binary-compatibility-validator", version.ref = "bin-compat-validator" } android-app = { id = "com.android.application", version.ref = "android-gradle-plugin" }android-lib = { id = "com.android.library", version.ref = "android-gradle-plugin" } detekt = { id = "io.gitlab.arturbosch.detekt", version.ref = "detekt" } fluxo-bcv-js = { id = "io.github.fluxo-kt.binary-compatibility-validator-js", version = "0.2.0" } # Gradle Versions Plugin: provides a task to determine which dependencies have updates# https://github.com/ben-manes/gradle-versions-plugin# https://plugins.gradle.org/plugin/com.github.ben-manes.versionsdeps-versions = { id = "com.github.ben-manes.versions", version = "0.48.0" } # Detect unused and misused dependencies# https://github.com/autonomousapps/dependency-analysis-android-gradle-plugin/tags# https://mvnrepository.com/artifact/com.autonomousapps/dependency-analysis-gradle-plugindeps-analysis = { id = "com.autonomousapps.dependency-analysis", version = "1.22.0" } # Plugin that guards against unintentional dependency changes# https://github.com/dropbox/dependency-guard/releasesdeps-guard = { id = "com.dropbox.dependency-guard", version = "0.4.3" } # 'taskTree' task that prints task dependency tree# https://github.com/dorongold/gradle-task-treetask-tree = { id = "com.dorongold.task-tree", version = "2.1.1" } # JMH benchmarking for Gradle# https://github.com/melix/jmh-gradle-plugin/releasesjmh = { id = "me.champeau.jmh", version = "0.7.1" }