From 13874bde533865e35e27add43d16a302bfe5e672 Mon Sep 17 00:00:00 2001 From: Alexander Nozik Date: Tue, 20 Aug 2024 10:18:57 +0300 Subject: [PATCH] migrate to version catalog --- build.gradle.kts | 40 +++++++++++++--------------- gradle/libs.versions.toml | 55 +++++++++++++++++++++++++++++++++++++++ settings.gradle.kts | 4 +++ 3 files changed, 77 insertions(+), 22 deletions(-) create mode 100644 gradle/libs.versions.toml diff --git a/build.gradle.kts b/build.gradle.kts index 4a455f1..6f6e70a 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,11 +1,7 @@ -val kotlin_version: String by project -val logback_version: String by project -val kotlinx_html_version: String by project - plugins { - kotlin("jvm") version "2.0.10" - id("io.ktor.plugin") version "2.3.12" - id("org.jetbrains.kotlin.plugin.serialization") version "2.0.10" + alias(libs.plugins.kotlin.jvm) + alias(libs.plugins.kotlin.serialization) + alias(libs.plugins.ktor) } group = "center.sciprog" @@ -24,19 +20,19 @@ repositories { } dependencies { - implementation("io.ktor:ktor-server-core-jvm") - implementation("io.ktor:ktor-server-websockets-jvm") - implementation("io.ktor:ktor-server-host-common-jvm") - implementation("io.ktor:ktor-server-status-pages-jvm") - implementation("io.ktor:ktor-server-cors-jvm") - implementation("io.ktor:ktor-server-content-negotiation-jvm") - implementation("io.ktor:ktor-serialization-kotlinx-json-jvm") - implementation("io.ktor:ktor-server-html-builder-jvm") - implementation("org.jetbrains.kotlinx:kotlinx-html-jvm:$kotlinx_html_version") - implementation("org.jetbrains:kotlin-css-jvm:1.0.0-pre.129-kotlin-1.4.20") - implementation("io.ktor:ktor-server-cio-jvm") - implementation("ch.qos.logback:logback-classic:$logback_version") - implementation("io.ktor:ktor-server-config-yaml") - testImplementation("io.ktor:ktor-server-test-host-jvm") - testImplementation("org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version") + implementation(libs.ktor.server.core.jvm) + implementation(libs.ktor.server.websockets.jvm) + implementation(libs.ktor.server.host.common.jvm) + implementation(libs.ktor.server.status.pages.jvm) + implementation(libs.ktor.server.cors.jvm) + implementation(libs.ktor.server.content.negotiation.jvm) + implementation(libs.ktor.serialization.kotlinx.json.jvm) + implementation(libs.ktor.server.html.builder.jvm) + implementation(libs.kotlinx.html.jvm) + implementation(libs.kotlin.css.jvm) + implementation(libs.ktor.server.cio.jvm) + implementation(libs.logback.classic) + implementation(libs.ktor.server.config.yaml) + testImplementation(libs.ktor.server.test.host.jvm) + testImplementation(libs.kotlin.test.junit) } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml new file mode 100644 index 0000000..2edff7e --- /dev/null +++ b/gradle/libs.versions.toml @@ -0,0 +1,55 @@ +[versions] + +kotlin = "2.0.10" + +ktor = "2.3.12" + +kotlinx-html = "0.10.1" + +[plugins] + +kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version = "2.0.10" } + +ktor = { id = "io.ktor.plugin", version = "2.3.12" } + +kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version = "2.0.10" } + +[libraries] + +ktor-bom = { group = "io.ktor", name = "ktor-bom", version.ref = "ktor" } + +ktor-server-core-jvm = { module = "io.ktor:ktor-server-core-jvm" } + +ktor-server-websockets-jvm = { module = "io.ktor:ktor-server-websockets-jvm" } + +ktor-server-host-common-jvm = { module = "io.ktor:ktor-server-host-common-jvm" } + +ktor-server-status-pages-jvm = { module = "io.ktor:ktor-server-status-pages-jvm" } + +ktor-server-cors-jvm = { module = "io.ktor:ktor-server-cors-jvm" } + +ktor-server-content-negotiation-jvm = { module = "io.ktor:ktor-server-content-negotiation-jvm" } + +ktor-serialization-kotlinx-json-jvm = { module = "io.ktor:ktor-serialization-kotlinx-json-jvm" } + +ktor-server-html-builder-jvm = { module = "io.ktor:ktor-server-html-builder-jvm" } + +kotlinx-html-jvm = { group = "org.jetbrains.kotlinx", name = "kotlinx-html-jvm", version.ref = "kotlinx-html" } + +kotlin-css-jvm = "org.jetbrains:kotlin-css-jvm:1.0.0-pre.129-kotlin-1.4.20" + +ktor-server-cio-jvm = { module = "io.ktor:ktor-server-cio-jvm" } + +logback-classic = "ch.qos.logback:logback-classic:1.4.14" + +ktor-server-config-yaml = { module = "io.ktor:ktor-server-config-yaml" } + +kotlin-build-tools-impl = { module = "org.jetbrains.kotlin:kotlin-build-tools-impl" } + +kotlin-scripting-compiler-embeddable = { group = "org.jetbrains.kotlin", name = "kotlin-scripting-compiler-embeddable", version.ref = "kotlin" } + +kotlin-serialization-compiler-plugin-embeddable = { group = "org.jetbrains.kotlin", name = "kotlin-serialization-compiler-plugin-embeddable", version.ref = "kotlin" } + +ktor-server-test-host-jvm = { module = "io.ktor:ktor-server-test-host-jvm" } + +kotlin-test-junit = { group = "org.jetbrains.kotlin", name = "kotlin-test-junit", version.ref = "kotlin" } diff --git a/settings.gradle.kts b/settings.gradle.kts index d67d799..0b0abe2 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1 +1,5 @@ rootProject.name = "ktor-reactive-sample" + +plugins{ + id("de.fayard.refreshVersions") version "0.60.5" +}