# @formatter:off ########## [versions] ########## ## compilation ## jvm = "11" kotlin = "1.7.22" ## libs ## camel-kafkaConnectors = "0.11.0" http4k = "4.25.16.2" kafka = "3.3.1" # https://kafka.apache.org/downloads kvision = "5.18.1" # https://github.com/rjaros/kvision/releases log4j2 = "2.17.2" okio = "3.2.0" # https://search.maven.org/artifact/com.squareup.okio/okio qosLogback = "1.2.11" scrimage = "4.0.32" # https://github.com/sksamuel/scrimage/releases semver = "1.2.0" # https://github.com/swiftzer/semver/releases slf4j = "1.7.36" kotlinx-serialization = "1.4.0" # https://github.com/Kotlin/kotlinx.serialization/releases kxs-charleskornKaml = "0.44.0" kxs-mamoeYamlkt = "0.12.0" kxs-kxsTsGen = "0.2.1" kotlinJsWrappers = "1.0.0-pre.456" # https://search.maven.org/artifact/org.jetbrains.kotlin-wrappers/kotlin-wrappers-bom kotlinx-cli = "0.3.5" # https://github.com/Kotlin/kotlinx-cli/releases kotlinx-coroutines = "1.6.4" # https://github.com/Kotlin/kotlinx.coroutines/releases kotlinx-datetime = "0.4.0" # https://github.com/Kotlin/kotlinx-datetime/releases kotlinx-html = "0.8.0" # https://github.com/Kotlin/kotlinx.html/releases kotlinx-nodejs = "0.0.7" kSvgDsl = "v2.2.0" ktor = "2.1.3" # https://github.com/ktorio/ktor/releases hoplite = "2.7.0" # https://github.com/sksamuel/hoplite/releases simpleSyslogParser = "1.0.0" # https://search.maven.org/artifact/com.github.palindromicity/simple-syslog kotkaStreams = "22.08.06" marykRocksDb = "7.3.1-2" # https://search.maven.org/artifact/io.maryk.rocksdb/rocksdb-multiplatform klogging = "0.4.9" nimbusJoseJwt = "9.25.6" # https://search.maven.org/artifact/com.nimbusds/nimbus-jose-jwt ## npm ## npm-luaTypes = "2.13.1" # https://www.npmjs.com/package/lua-types npm-typescriptToLua = "1.11.1" # https://www.npmjs.com/package/typescript-to-lua npm-typedFactorio = "1.11.0" # https://github.com/GlassBricks/typed-factorio/blob/main/Changelog.md https://www.npmjs.com/package/typed-factorio npm-typescript = "4.9" # https://github.com/microsoft/TypeScript/releases npm-bootswatch = "5.2.2" # https://www.jsdelivr.com/package/npm/bootswatch ## test ## junit = "5.9.1" # https://github.com/junit-team/junit5/releases kotest = "5.5.4" # https://github.com/kotest/kotest/releases mockk = "1.13.3" # https://github.com/mockk/mockk/releases/ ## infra ## factorio = "1.1.72" # https://www.factorio.com/download confluent-kafkaConnect = "7.0.1" grafana = "8.5.0" prometheus = "v2.34.0" ## gradle plugins ## gradleNodePlugin = "3.5.0" # https://github.com/node-gradle/gradle-node-plugin/releases ######### [plugins] ######### kotlinJvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" } kotlinJs = { id = "org.jetbrains.kotlin.js", version.ref = "kotlin" } kotlinSerialization = { id = "org.jetbrains.kotlin.kotlin-serialization", version.ref = "kotlin" } loggingCapabilities = { id = "dev.jacomet.logging-capabilities", version = "0.10.0" } ########### [libraries] ########### ## kotlin ## kotlin-bom = { group = "org.jetbrains.kotlin", name = "kotlin-bom", version.ref = "kotlin" } kotlin-embeddableCompiler = { module = "org.jetbrains.kotlin:kotlin-compiler-embeddable" } kotlinScripting-common = { group = "org.jetbrains.kotlin", name = "kotlin-scripting-common" } kotlinScripting-jvm = { group = "org.jetbrains.kotlin", name = "kotlin-scripting-jvm" } kotlinScripting-jvmHost = { group = "org.jetbrains.kotlin", name = "kotlin-scripting-jvm-host" } kotlinScripting-dependencies = { group = "org.jetbrains.kotlin", name = "kotlin-scripting-dependencies" } kotlinScripting-dependenciesMaven = { group = "org.jetbrains.kotlin", name = "kotlin-scripting-dependencies-maven" } kotlinxSerialization-bom = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-bom", version.ref = "kotlinx-serialization" } kotlinxSerialization-core = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-core" } kotlinxSerialization-cbor = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-cbor" } kotlinxSerialization-hocon = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-hocon" } kotlinxSerialization-json = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json" } kotlinxSerialization-properties = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-properties" } kotlinxSerialization-protobuf = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-protobuf" } kotlinxSerialization-jsonOkio = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json-okio" } kotlinxSerialization-charleskornKaml = { group = "com.charleskorn.kaml", name = "kaml", version.ref = "kxs-charleskornKaml" } kotlinxSerialization-mamoeYamlkt = { group = "net.mamoe.yamlkt", name = "yamlkt", version.ref = "kxs-mamoeYamlkt" } #kxs-kxsTsGen = { group = "dev.adamko.kxstsgen", name = "kxs-ts-gen-core", version.ref = "kxs-kxsTsGen" } kotlinxSerialization-kxsTsGen = { group = "com.github.adamko-dev.kotlinx-serialization-typescript-generator", name = "kxs-ts-gen-core", version.ref = "kxs-kxsTsGen" } kotlinx-coroutines-bom = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-bom", version.ref = "kotlinx-coroutines" } kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core" } kotlinx-coroutines-jdk8 = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-jdk8" } kotlinx-html = { group = "org.jetbrains.kotlinx", name = "kotlinx-html", version.ref = "kotlinx-html" } kotlinx-nodejs = { group = "org.jetbrains.kotlinx", name = "kotlinx-nodejs", version.ref = "kotlinx-nodejs" } kotlinx-cli = { group = "org.jetbrains.kotlinx", name = "kotlinx-cli", version.ref = "kotlinx-cli" } kotlinx-datetime = { group = "org.jetbrains.kotlinx", name = "kotlinx-datetime", version.ref = "kotlinx-datetime" } kSvgDsl = { group = "com.github.nwillc", name = "ksvg", version.ref = "kSvgDsl" } kotlin-jsWrappers-bom = { group = "org.jetbrains.kotlin-wrappers", name = "kotlin-wrappers-bom", version.ref = "kotlinJsWrappers" } ## http4k ## http4k-bom = { group = "org.http4k", name = "http4k-bom", version.ref = "http4k" } http4k-core = { group = "org.http4k", name = "http4k-core" } http4k-contract = { group = "org.http4k", name = "http4k-contract" } http4k-client-okhttp = { group = "org.http4k", name = "http4k-client-okhttp" } http4k-client-ws = { group = "org.http4k", name = "http4k-client-websocket" } http4k-server = { group = "org.http4k", name = "http4k-server-undertow" } http4k-cloudnative = { group = "org.http4k", name = "http4k-cloudnative" } #http4k-format-jackson-json = { group = "org.http4k", name = "http4k-format-jackson" } #http4k-format-jackson-xml = { group = "org.http4k", name = "http4k-format-jackson-xml" } #http4k-format-jackson-yaml = { group = "org.http4k", name = "http4k-format-jackson-yaml" } http4k-format-kotlinx = { group = "org.http4k", name = "http4k-format-kotlinx-serialization" } http4k-graphql = { group = "org.http4k", name = "http4k-graphql" } ## ktor ## ktor-bom = { group = "io.ktor", name = "ktor-bom", version.ref = "ktor" } ktorSerialization-kotlinxJson = { group = "io.ktor", name = "ktor-serialization-kotlinx-json" } ktorClient-core = { group = "io.ktor", name = "ktor-client-core" } ktorClient-auth = { group = "io.ktor", name = "ktor-client-auth" } ktorClient-cio = { group = "io.ktor", name = "ktor-client-cio" } ktorClient-contentNegotiation = { group = "io.ktor", name = "ktor-client-content-negotiation" } ktorClient-encoding = { group = "io.ktor", name = "ktor-client-encoding" } ktorClient-logging = { group = "io.ktor", name = "ktor-client-logging" } ktorClient-resources = { group = "io.ktor", name = "ktor-client-resources" } ktorClient-websockets = { group = "io.ktor", name = "ktor-client-websockets" } ktorClient-testMock = { group = "io.ktor", name = "ktor-client-mock" } ktorServer-core = { group = "io.ktor", name = "ktor-server-core" } ktorServer-auth = { group = "io.ktor", name = "ktor-server-auth" } ktorServer-authJwt = { group = "io.ktor", name = "ktor-server-auth-jwt" } ktorServer-autoHeadResponse = { group = "io.ktor", name = "ktor-server-auto-head-response" } ktorServer-cachingHeaders = { group = "io.ktor", name = "ktor-server-caching-headers" } ktorServer-callId = { group = "io.ktor", name = "ktor-server-call-id" } ktorServer-callLogging = { group = "io.ktor", name = "ktor-server-call-logging" } ktorServer-compression = { group = "io.ktor", name = "ktor-server-compression" } ktorServer-conditionalHeaders = { group = "io.ktor", name = "ktor-server-conditional-headers" } ktorServer-contentNegotiaion = { group = "io.ktor", name = "ktor-server-content-negotiation" } ktorServer-cors = { group = "io.ktor", name = "ktor-server-cors" } ktorServer-dataConversion = { group = "io.ktor", name = "ktor-server-data-conversion" } ktorServer-defaultHeaders = { group = "io.ktor", name = "ktor-server-default-headers" } ktorServer-forwardedHeader = { group = "io.ktor", name = "ktor-server-forwarded-header" } ktorServer-hsts = { group = "io.ktor", name = "ktor-server-hsts" } ktorServer-httpRedirect = { group = "io.ktor", name = "ktor-server-http-redirect" } ktorServer-netty = { group = "io.ktor", name = "ktor-server-netty" } ktorServer-cio = { group = "io.ktor", name = "ktor-server-cio" } ktorServer-partialContent = { group = "io.ktor", name = "ktor-server-partial-content" } ktorServer-resources = { group = "io.ktor", name = "ktor-server-resources" } ktorServer-sessions = { group = "io.ktor", name = "ktor-server-sessions" } ktorServer-statusPages = { group = "io.ktor", name = "ktor-server-status-pages" } ktorServer-websockets = { group = "io.ktor", name = "ktor-server-websockets" } ktorServer-testHost = { group = "io.ktor", name = "ktor-server-test-host" } ktorNetwork-core = { group = "io.ktor", name = "ktor-network" } ktorNetwork-tls = { group = "io.ktor", name = "ktor-network-tls" } ### jackson ## #jackson-bom = { group = " com.fasterxml.jackson.module", name = ":jackson-module-kotlin", version = "2.13.+" } #jackson-kotlin = { group = " com.fasterxml.jackson.module", name = ":jackson-module-kotlin", version = "2.13.+" } ## logging ## slf4j-api = { group = "org.slf4j", name = "slf4j-api", version.ref = "slf4j" } kotlin-logging = { group = "io.github.microutils", name = "kotlin-logging-jvm", version = "2.1.21" } logback-core = { group = "ch.qos.logback", name = "logback-core", version.ref = "qosLogback" } logback-classic = { group = "ch.qos.logback", name = "logback-classic", version.ref = "qosLogback" } logback-encoder = { group = "net.logstash.logback", name = "logstash-logback-encoder", version = "6.6" } klogging = { group = "io.klogging", name = "klogging-jvm", version.ref = "klogging" } ## gcp ## #gcp-bom = { group = "com.google.cloud", name = "libraries-bom", version = "23.1.0" } #gcp-pubsub = { group = "com.google.cloud", name = "google-cloud-pubsub" } #gcp-speech = { group = "com.google.cloud", name = "google-cloud-speech" } ## kafka ## kafka-streams = { group = "org.apache.kafka", name = "kafka-streams", version.ref = "kafka" } kafka-streamsTestUtils = { group = "org.apache.kafka", name = "kafka-streams-test-utils", version.ref = "kafka" } # kafka helpers #kotka = { group = "com.github.blueanvil", name = "kotka", version = "1.1.1" } kafka-kotkaStreams = { group = "dev.adamko.kotka", name = "kotka-streams", version.ref = "kotkaStreams" } marykRocksDb = { group = "io.maryk.rocksdb", name = "rocksdb-multiplatform", version.ref = "marykRocksDb" } jsoup = { group = "org.jsoup", name = "jsoup", version = "1.14.3" } skrapeit = { group = "it.skrape", name = "skrapeit", version = "1.2.0" } scrimage-core = { group = "com.sksamuel.scrimage", name = "scrimage-core", version.ref = "scrimage" } semver = { group = "net.swiftzer.semver", name = "semver", version.ref = "semver" } ## okio ## okio-bom = { group = "com.squareup.okio", name = "okio-bom", version.ref = "okio" } okio-core = { group = "com.squareup.okio", name = "okio" } hoplite-core = { group = "com.sksamuel.hoplite", name = "hoplite-core", version.ref = "hoplite" } hoplite-datetime = { group = "com.sksamuel.hoplite", name = "hoplite-datetime", version.ref = "hoplite" } hoplite-yaml = { group = "com.sksamuel.hoplite", name = "hoplite-yaml", version.ref = "hoplite" } simpleSyslogParser = { group = "com.github.palindromicity", name = "simple-syslog", version.ref = "simpleSyslogParser" } nimbusJoseJwt = { group = "com.nimbusds", name = "nimbus-jose-jwt", version.ref = "nimbusJoseJwt" } ############# ### test ### ############# mockk = { group = "io.mockk", name = "mockk", version.ref = "mockk" } ## junit ## junit-bom = { group = "org.junit", name = "junit-bom", version.ref = "junit" } junit-api = { group = "org.junit.jupiter", name = "junit-jupiter-api" } # version.ref = "junit" } junit-engine = { group = "org.junit.jupiter", name = "junit-jupiter-engine" } # version.ref = "junit" } junit-launcher = { group = "org.junit.platform", name = "junit-platform-launcher" } # version = "1.7.2" } ## kotest ## kotest-bom = { module = "io.kotest:kotest-bom", version.ref = "kotest" } kotest-core = { module = "io.kotest:kotest-assertions-core" } kotest-datatest = { module = "io.kotest:kotest-framework-datatest" } kotest-json = { module = "io.kotest:kotest-assertions-json" } kotest-prop = { module = "io.kotest:kotest-property" } kotest-frameworkEngine = { module = "io.kotest:kotest-framework-engine" } kotest-runnerJunit5 = { module = "io.kotest:kotest-runner-junit5" } kotestPlugin-embeddedCompiler = { group = "io.kotest", name = "kotest-framework-multiplatform-plugin-embeddable-compiler" } kotestPlugin-multiplatform = { group = "io.kotest", name = "kotest-framework-multiplatform-plugin-gradle" } ## http4k ## http4k-test-chaos = { group = "org.http4k", name = "http4k-testing-chaos", version.ref = "http4k" } http4k-test-approval = { group = "org.http4k", name = "http4k-testing-approval", version.ref = "http4k" } http4k-test-kotest = { group = "org.http4k", name = "http4k-testing-kotest", version.ref = "http4k" } ################ ### plugins ### ################ gradlePlugin-kvision = { module = "io.kvision:io.kvision.gradle.plugin", version.ref = "kvision" } ######### [bundles] ######### logging = [ "slf4j-api", "kotlin-logging", "logback-core", "logback-classic", "logback-encoder", ] #kt-testing = [ # "kotest-core", # "kotest-datatest", # "kotest-runner", # "kotest-prop", # "kotest-json", # "mockk", #] junit-runtime = [ "junit-engine", "junit-launcher", ] kotlinScripting-def = [ "kotlinScripting-common", "kotlinScripting-jvm", "kotlinScripting-dependencies", "kotlinScripting-dependenciesMaven", ] kotlinScripting-host = [ "kotlinScripting-common", "kotlinScripting-jvm", "kotlinScripting-jvmHost", ] hoplite = [ "hoplite-core", "hoplite-yaml", "hoplite-datetime", ]