diff --git a/build.gradle.kts b/build.gradle.kts index 44b600e7..afd6901d 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,6 +1,6 @@ plugins { - kotlin("jvm") version Versions.kotlin - id("org.jmailen.kotlinter") version Versions.kotlinter + alias(libs.plugins.kotlin) + alias(libs.plugins.kotlinter) } // configurations shared with all the modules, except `buildSrc` diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml new file mode 100644 index 00000000..7174e139 --- /dev/null +++ b/gradle/libs.versions.toml @@ -0,0 +1,12 @@ +[versions] +kotlin = "1.9.20" +ktor = "2.3.4" +[libraries] + +[bundles] + +[plugins] +kotlin = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" } +kotlinter = { id = "org.jmailen.kotlinter", version = "3.10.0" } # FIXME 3.12.0 +test-logger = { id = "com.adarshr.test-logger", version = "3.2.0" } +ktor = { id = "io.ktor.plugin", version.ref = "ktor" } diff --git a/modules/app/build.gradle.kts b/modules/app/build.gradle.kts index c73ed982..c686f8e8 100644 --- a/modules/app/build.gradle.kts +++ b/modules/app/build.gradle.kts @@ -1,8 +1,8 @@ plugins { // https://kotlinlang.org/docs/kapt.html - kotlin("kapt") - kotlin("plugin.serialization") version Versions.kotlin - id("com.adarshr.test-logger") version Versions.testLogger + //kotlin("kapt") + kotlin("plugin.serialization") version "1.9.20" + alias(libs.plugins.test.logger) application // https://docs.gradle.org/current/userguide/idea_plugin.html @@ -11,40 +11,40 @@ plugins { dependencies { implementation(platform("org.jetbrains.kotlin:kotlin-bom")) - implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:${Versions.kotlinxCoroutines}") - implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:${Versions.kotlinxSerialization}") + implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.3") + implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.0") // logging - implementation("org.slf4j:slf4j-api:${Versions.slf4j}") - runtimeOnly("ch.qos.logback:logback-classic:${Versions.logback}") + implementation("org.slf4j:slf4j-api:2.0.9") + runtimeOnly("ch.qos.logback:logback-classic:1.4.11") // config - implementation("com.sksamuel.hoplite:hoplite-core:${Versions.hoplite}") - implementation("com.sksamuel.hoplite:hoplite-yaml:${Versions.hoplite}") + implementation("com.sksamuel.hoplite:hoplite-core:2.7.5") + implementation("com.sksamuel.hoplite:hoplite-yaml:2.7.5") // cli - implementation("com.github.ajalt.clikt:clikt:${Versions.clikt}") + implementation("com.github.ajalt.clikt:clikt:4.2.0") // json - implementation("com.ubertob.kondor:kondor-core:${Versions.kondor}") - testImplementation("com.ubertob.kondor:kondor-tools:${Versions.kondor}") + implementation("com.ubertob.kondor:kondor-core:2.1.1") + testImplementation("com.ubertob.kondor:kondor-tools:2.1.1") // reactor - implementation("io.projectreactor:reactor-core:${Versions.reactor}") - implementation("io.projectreactor.kotlin:reactor-kotlin-extensions:${Versions.reactorKotlin}") + implementation("io.projectreactor:reactor-core:3.5.10") + implementation("io.projectreactor.kotlin:reactor-kotlin-extensions:1.2.2") // arrow - implementation(platform("io.arrow-kt:arrow-stack:${Versions.arrow}")) + implementation(platform("io.arrow-kt:arrow-stack:1.2.1")) implementation("io.arrow-kt:arrow-core") implementation("io.arrow-kt:arrow-fx-coroutines") implementation("io.arrow-kt:arrow-optics") - kapt("io.arrow-kt:arrow-meta:${Versions.arrowMeta}") + //kapt("io.arrow-kt:arrow-meta:1.6.2") // tests - testImplementation("io.kotest:kotest-runner-junit5:${Versions.kotest}") - testImplementation("io.kotest:kotest-assertions-core:${Versions.kotest}") - testImplementation("io.kotest:kotest-assertions-json:${Versions.kotest}") - testImplementation("io.kotest:kotest-property:${Versions.kotest}") + testImplementation("io.kotest:kotest-runner-junit5:5.7.2") + testImplementation("io.kotest:kotest-assertions-core:5.7.2") + testImplementation("io.kotest:kotest-assertions-json:5.7.2") + testImplementation("io.kotest:kotest-property:5.7.2") // TODO fix conflict //testImplementation("org.jetbrains.kotlin:kotlin-test") //testImplementation("org.jetbrains.kotlin:kotlin-test-junit") diff --git a/modules/aws-kotlin/build.gradle.kts b/modules/aws-kotlin/build.gradle.kts index 97ff92e8..4c51ff04 100644 --- a/modules/aws-kotlin/build.gradle.kts +++ b/modules/aws-kotlin/build.gradle.kts @@ -1,5 +1,5 @@ dependencies { - implementation("aws.sdk.kotlin:lambda:${Versions.awsKotlin}") - implementation("org.slf4j:slf4j-api:${Versions.slf4j}") - runtimeOnly("ch.qos.logback:logback-classic:${Versions.logback}") + implementation("aws.sdk.kotlin:lambda:0.32.2-beta") + implementation("org.slf4j:slf4j-api:2.0.9") + runtimeOnly("ch.qos.logback:logback-classic:1.4.11") } diff --git a/modules/aws-local/build.gradle.kts b/modules/aws-local/build.gradle.kts index 4a93d00c..5faa5e49 100644 --- a/modules/aws-local/build.gradle.kts +++ b/modules/aws-local/build.gradle.kts @@ -1,6 +1,6 @@ plugins { - id("com.adarshr.test-logger") version Versions.testLogger - id("com.github.johnrengelman.shadow") version Versions.shadow + alias(libs.plugins.test.logger) + id("com.github.johnrengelman.shadow") version "8.1.1" application } @@ -9,19 +9,19 @@ dependencies { implementation(platform("org.jetbrains.kotlin:kotlin-bom")) implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8") - implementation("org.slf4j:slf4j-api:${Versions.slf4j}") - runtimeOnly("ch.qos.logback:logback-classic:${Versions.logback}") + implementation("org.slf4j:slf4j-api:2.0.9") + runtimeOnly("ch.qos.logback:logback-classic:1.4.11") // aws - implementation(platform("software.amazon.awssdk:bom:${Versions.aws}")) + implementation(platform("software.amazon.awssdk:bom:2.20.153")) implementation("software.amazon.awssdk:lambda") implementation("software.amazon.awssdk:s3") implementation("software.amazon.awssdk:sqs") - implementation("com.amazonaws:aws-lambda-java-core:${Versions.awsLambdaCore}") - implementation("com.amazonaws:aws-lambda-java-events:${Versions.awsLambdaEvents}") + implementation("com.amazonaws:aws-lambda-java-core:1.2.3") + implementation("com.amazonaws:aws-lambda-java-events:3.11.3") // tests - testImplementation("io.kotest:kotest-runner-junit5:${Versions.kotest}") + testImplementation("io.kotest:kotest-runner-junit5:5.7.2") } application { diff --git a/modules/aws-serverless/build.gradle.kts b/modules/aws-serverless/build.gradle.kts index 113a09e1..d9858495 100644 --- a/modules/aws-serverless/build.gradle.kts +++ b/modules/aws-serverless/build.gradle.kts @@ -1,12 +1,12 @@ plugins { - id("com.adarshr.test-logger") version Versions.testLogger + alias(libs.plugins.test.logger) } version = "0.1.0" dependencies { - implementation("com.amazonaws:aws-lambda-java-core:${Versions.awsLambdaCore}") - implementation("com.amazonaws:aws-lambda-java-events:${Versions.awsLambdaEvents}") + implementation("com.amazonaws:aws-lambda-java-core:1.2.3") + implementation("com.amazonaws:aws-lambda-java-events:3.11.3") // https://docs.aws.amazon.com/lambda/latest/dg/java-logging.html#java-logging-log4j2 implementation("org.apache.logging.log4j:log4j-api:2.19.0") diff --git a/modules/bool/build.gradle.kts b/modules/bool/build.gradle.kts index 2020388f..b6594743 100644 --- a/modules/bool/build.gradle.kts +++ b/modules/bool/build.gradle.kts @@ -1,10 +1,10 @@ plugins { - id("com.adarshr.test-logger") version Versions.testLogger + alias(libs.plugins.test.logger) } dependencies { - testImplementation("io.kotest:kotest-runner-junit5:${Versions.kotest}") - testImplementation("io.kotest:kotest-assertions-core:${Versions.kotest}") + testImplementation("io.kotest:kotest-runner-junit5:5.7.2") + testImplementation("io.kotest:kotest-assertions-core:5.7.2") } tasks.withType { diff --git a/modules/http/build.gradle.kts b/modules/http/build.gradle.kts index f9c0cdd0..364b0d81 100644 --- a/modules/http/build.gradle.kts +++ b/modules/http/build.gradle.kts @@ -1,23 +1,22 @@ plugins { - id("com.adarshr.test-logger") version Versions.testLogger + alias(libs.plugins.test.logger) application - // TODO is this used? - id("io.ktor.plugin") version Versions.ktor + alias(libs.plugins.ktor) } dependencies { // server - implementation("io.ktor:ktor-server-core-jvm:${Versions.ktor}") - implementation("io.ktor:ktor-server-netty-jvm:${Versions.ktor}") + implementation("io.ktor:ktor-server-core-jvm:2.3.4") + implementation("io.ktor:ktor-server-netty-jvm:2.3.4") // logging - implementation("org.slf4j:slf4j-api:${Versions.slf4j}") - runtimeOnly("ch.qos.logback:logback-classic:${Versions.logback}") + implementation("org.slf4j:slf4j-api:2.0.9") + runtimeOnly("ch.qos.logback:logback-classic:1.4.11") // testing - testImplementation("io.ktor:ktor-server-tests-jvm:${Versions.ktor}") - testImplementation("org.jetbrains.kotlin:kotlin-test-junit:${Versions.kotlin}") + testImplementation("io.ktor:ktor-server-tests-jvm:2.3.4") + testImplementation("org.jetbrains.kotlin:kotlin-test-junit:1.9.20") } application { diff --git a/modules/jok/build.gradle.kts b/modules/jok/build.gradle.kts index a6e07fc0..311fd099 100644 --- a/modules/jok/build.gradle.kts +++ b/modules/jok/build.gradle.kts @@ -1,7 +1,7 @@ dependencies { implementation(kotlin("script-runtime")) - implementation("org.jdom:jdom2:${Versions.jdom}") + implementation("org.jdom:jdom2:2.0.6.1") } // ------------------------------ diff --git a/modules/json-schema/build.gradle.kts b/modules/json-schema/build.gradle.kts index f8385c26..e02fa291 100644 --- a/modules/json-schema/build.gradle.kts +++ b/modules/json-schema/build.gradle.kts @@ -1,5 +1,5 @@ plugins { - id("com.adarshr.test-logger") version Versions.testLogger + alias(libs.plugins.test.logger) } repositories { @@ -8,21 +8,21 @@ repositories { dependencies { // json schema - implementation("com.github.erosb:everit-json-schema:${Versions.everit}") - implementation("net.pwall.json:json-kotlin-schema:${Versions.pwall}") + implementation("com.github.erosb:everit-json-schema:1.14.2") + implementation("net.pwall.json:json-kotlin-schema:0.42") // json-schema compatibility - implementation("io.confluent:kafka-json-schema-provider:${Versions.confluent}") - testImplementation("io.confluent:kafka-schema-registry:${Versions.confluent}") - testImplementation("io.kotest.extensions:kotest-extensions-embedded-kafka:${Versions.kotestKafka}") + implementation("io.confluent:kafka-json-schema-provider:7.3.3") // FIXME 7.4.0 + testImplementation("io.confluent:kafka-schema-registry:7.3.3") + testImplementation("io.kotest.extensions:kotest-extensions-embedded-kafka:2.0.0") // deprecated, see testcontainers // json diff - implementation("com.flipkart.zjsonpatch:zjsonpatch:${Versions.zjsonpatch}") - implementation("com.fasterxml.jackson.module:jackson-module-kotlin:${Versions.jackson}") + implementation("com.flipkart.zjsonpatch:zjsonpatch:0.4.14") + implementation("com.fasterxml.jackson.module:jackson-module-kotlin:2.15.2") // testing - testImplementation("io.kotest:kotest-runner-junit5:${Versions.kotest}") - testImplementation("io.kotest:kotest-assertions-core:${Versions.kotest}") + testImplementation("io.kotest:kotest-runner-junit5:5.7.2") + testImplementation("io.kotest:kotest-assertions-core:5.7.2") } tasks.withType { diff --git a/modules/lox/build.gradle.kts b/modules/lox/build.gradle.kts index 02499efd..301ee272 100644 --- a/modules/lox/build.gradle.kts +++ b/modules/lox/build.gradle.kts @@ -1,10 +1,10 @@ plugins { - id("com.adarshr.test-logger") version Versions.testLogger + alias(libs.plugins.test.logger) } dependencies { - testImplementation("io.kotest:kotest-runner-junit5:${Versions.kotest}") - testImplementation("io.kotest:kotest-assertions-core:${Versions.kotest}") + testImplementation("io.kotest:kotest-runner-junit5:5.7.2") + testImplementation("io.kotest:kotest-assertions-core:5.7.2") } tasks.withType { diff --git a/modules/rekursive/build.gradle.kts b/modules/rekursive/build.gradle.kts index 2d6f8541..3e1a0640 100644 --- a/modules/rekursive/build.gradle.kts +++ b/modules/rekursive/build.gradle.kts @@ -1,10 +1,10 @@ plugins { - id("com.adarshr.test-logger") version Versions.testLogger + alias(libs.plugins.test.logger) } dependencies { - testImplementation("io.kotest:kotest-runner-junit5:${Versions.kotest}") - testImplementation("io.kotest:kotest-assertions-core:${Versions.kotest}") + testImplementation("io.kotest:kotest-runner-junit5:5.7.2") + testImplementation("io.kotest:kotest-assertions-core:5.7.2") } tasks.withType {