val ktorVersion = "3.0.0" val exposedVersion = "0.55.0" val h2Version = "2.3.232" val hikariCpVersion = "5.1.0" val flywayVersion = "10.20.1" val logbackVersion = "1.5.12" val assertjVersion = "3.26.3" val restAssuredVersion = "5.5.0" val junitVersion = "5.11.3" val psqlVersion = "42.7.4" plugins { kotlin("jvm") version "2.0.21" kotlin("plugin.serialization") version "2.0.21" id("org.jetbrains.kotlinx.kover") version "0.8.2" application } repositories { mavenCentral() } dependencies { implementation("io.ktor:ktor-server-core:$ktorVersion") implementation("io.ktor:ktor-serialization:$ktorVersion") implementation("io.ktor:ktor-server-netty:$ktorVersion") implementation("io.ktor:ktor-server-call-logging:$ktorVersion") implementation("io.ktor:ktor-server-default-headers:$ktorVersion") implementation("io.ktor:ktor-server-websockets:$ktorVersion") implementation("io.ktor:ktor-server-content-negotiation:$ktorVersion") implementation("io.ktor:ktor-serialization-kotlinx-json:$ktorVersion") implementation("org.jetbrains.kotlin:kotlin-stdlib:1.7.20") implementation("com.github.seratch:kotliquery:1.9.0") implementation("com.h2database:h2:$h2Version") implementation("org.postgresql:postgresql:$psqlVersion") implementation("org.jetbrains.exposed:exposed-core:$exposedVersion") implementation("org.jetbrains.exposed:exposed-dao:$exposedVersion") implementation("org.jetbrains.exposed:exposed-jdbc:$exposedVersion") implementation("org.jetbrains.exposed:exposed-json:$exposedVersion") implementation("com.zaxxer:HikariCP:$hikariCpVersion") implementation("org.flywaydb:flyway-core:$flywayVersion") implementation("ch.qos.logback:logback-classic:$logbackVersion") implementation("de.m3y.kformat:kformat:0.11") testImplementation("org.assertj:assertj-core:$assertjVersion") testImplementation("io.rest-assured:rest-assured:$restAssuredVersion") testImplementation("org.junit.jupiter:junit-jupiter-api:$junitVersion") testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$junitVersion") testImplementation("io.ktor:ktor-client-cio:$ktorVersion") } application { mainClass.set("MainKt") } tasks.withType { useJUnitPlatform() }