import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { kotlin("jvm") kotlin("plugin.serialization") id("com.github.johnrengelman.shadow") version "7.1.2" application } group = "de.moritzruth.lampenfieber" version = "1.0-SNAPSHOT" allprojects { tasks.withType { kotlinOptions.jvmTarget = "19" kotlinOptions.freeCompilerArgs += "-opt-in=kotlin.RequiresOptIn" kotlinOptions.freeCompilerArgs += "-opt-in=kotlin.ExperimentalUnsignedTypes" kotlinOptions.freeCompilerArgs += "-opt-in=kotlin.time.ExperimentalTime" kotlinOptions.freeCompilerArgs += "-opt-in=kotlin.contracts.ExperimentalContracts" kotlinOptions.freeCompilerArgs += "-Xcontext-receivers" } } dependencies { implementation(KotlinX.coroutines.core) implementation(KotlinX.collections.immutable) implementation(KotlinX.serialization.json) implementation(KotlinX.datetime) implementation(Ktor.server.core) implementation(Ktor.server.websockets) implementation(Ktor.server.cio) implementation(Ktor.server.contentNegotiation) implementation(Ktor.plugins.serialization.kotlinx.json) implementation("org.slf4j:slf4j-simple:_") implementation("com.fazecast:jSerialComm:_") implementation("io.github.oshai:kotlin-logging-jvm:_") } application { mainClass.set("de.moritzruth.lampenfieber.MainKt") }