From 953c7603fef3817561c2b7e2af88b0f00ebb8adf Mon Sep 17 00:00:00 2001 From: Jolan Rensen Date: Tue, 27 Aug 2024 21:00:43 +0200 Subject: [PATCH 1/4] bumping gradle to 8.10 --- gradle/wrapper/gradle-wrapper.properties | 2 +- .../kotlin/org/jetbrains/dataframe/gradle/makeProject.kt | 5 ++--- .../gradle/wrapper/gradle-wrapper.properties | 2 +- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 17655d0ef..e1adfb493 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/plugins/dataframe-gradle-plugin/src/test/kotlin/org/jetbrains/dataframe/gradle/makeProject.kt b/plugins/dataframe-gradle-plugin/src/test/kotlin/org/jetbrains/dataframe/gradle/makeProject.kt index 4b19cb6c9..059580b3b 100644 --- a/plugins/dataframe-gradle-plugin/src/test/kotlin/org/jetbrains/dataframe/gradle/makeProject.kt +++ b/plugins/dataframe-gradle-plugin/src/test/kotlin/org/jetbrains/dataframe/gradle/makeProject.kt @@ -8,7 +8,6 @@ import org.gradle.api.internal.project.ProjectInternal import org.gradle.api.provider.Provider import org.gradle.build.event.BuildEventsListenerRegistry import org.gradle.internal.service.DefaultServiceRegistry -import org.gradle.internal.service.scopes.ProjectScopeServices import org.gradle.testfixtures.ProjectBuilder import org.gradle.tooling.events.OperationCompletionListener import java.lang.reflect.Field @@ -26,8 +25,8 @@ internal fun makeProject(): ProjectInternal { */ internal fun addBuildEventsListenerRegistryMock(project: Project) { try { - val projectScopeServices = (project as DefaultProject).services as ProjectScopeServices - val state: Field = ProjectScopeServices::class.java.superclass.getDeclaredField("state") + val projectScopeServices = (project as DefaultProject).services as DefaultServiceRegistry + val state: Field = DefaultServiceRegistry::class.java.getDeclaredField("state") state.isAccessible = true @Suppress("UNCHECKED_CAST") val stateValue: AtomicReference = state.get(projectScopeServices) as AtomicReference diff --git a/plugins/kotlin-dataframe/gradle/wrapper/gradle-wrapper.properties b/plugins/kotlin-dataframe/gradle/wrapper/gradle-wrapper.properties index e411586a5..e1adfb493 100644 --- a/plugins/kotlin-dataframe/gradle/wrapper/gradle-wrapper.properties +++ b/plugins/kotlin-dataframe/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists From 6f623c97f9af00687d539068fdb292822a7fe2fc Mon Sep 17 00:00:00 2001 From: Jolan Rensen Date: Tue, 27 Aug 2024 21:01:38 +0200 Subject: [PATCH 2/4] migrating :symbol-processor build.gradle to kts --- .../{build.gradle => build.gradle.kts} | 34 +++++++++---------- 1 file changed, 17 insertions(+), 17 deletions(-) rename plugins/symbol-processor/{build.gradle => build.gradle.kts} (56%) diff --git a/plugins/symbol-processor/build.gradle b/plugins/symbol-processor/build.gradle.kts similarity index 56% rename from plugins/symbol-processor/build.gradle rename to plugins/symbol-processor/build.gradle.kts index c4c693bfe..85a33f7c7 100644 --- a/plugins/symbol-processor/build.gradle +++ b/plugins/symbol-processor/build.gradle.kts @@ -1,4 +1,6 @@ -import org.jetbrains.kotlinx.publisher.PomUtilKt +import org.jetbrains.kotlinx.publisher.apache2 +import org.jetbrains.kotlinx.publisher.developer +import org.jetbrains.kotlinx.publisher.githubRepo plugins { alias(libs.plugins.shadow) @@ -9,8 +11,8 @@ plugins { repositories { mavenCentral() - maven { url = "https://jitpack.io" } - maven { url "https://maven.pkg.jetbrains.space/public/p/kotlinx-html/maven" } + maven(url = "https://jitpack.io") + maven(url = "https://maven.pkg.jetbrains.space/public/p/kotlinx-html/maven") } group = "org.jetbrains.kotlinx.dataframe" @@ -34,23 +36,21 @@ dependencies { kotlinPublications { pom { - use(PomUtilKt) { - githubRepo("Kotlin", "dataframe") - inceptionYear.set("2021") - licenses { - apache2() - } - developers { - developer("koperagen", "Nikita Klimenko", "nikita.klimenko@jetbrains.com") - } + githubRepo("Kotlin", "dataframe") + inceptionYear = "2021" + licenses { + apache2() + } + developers { + developer("koperagen", "Nikita Klimenko", "nikita.klimenko@jetbrains.com") } } publication { - groupId.set("org.jetbrains.kotlinx.dataframe") - publicationName.set("maven") - artifactId.set("symbol-processor-all") - description.set("Annotation preprocessor for DataFrame") - packageName.set(artifactId) + groupId = "org.jetbrains.kotlinx.dataframe" + publicationName = "maven" + artifactId = "symbol-processor-all" + description = "Annotation preprocessor for DataFrame" + packageName = artifactId } } From 231ed080412086c3f09e1b5c329b7094cf3d9f8d Mon Sep 17 00:00:00 2001 From: Jolan Rensen Date: Tue, 27 Aug 2024 21:02:14 +0200 Subject: [PATCH 3/4] now all gradle versions are up-to-date, updating all .set() notations with = for better readability --- build.gradle.kts | 12 +++--- core/build.gradle.kts | 38 +++++++++---------- dataframe-arrow/build.gradle.kts | 8 ++-- dataframe-excel/build.gradle.kts | 8 ++-- dataframe-jdbc/build.gradle.kts | 8 ++-- dataframe-openapi/build.gradle.kts | 8 ++-- .../idea-examples/movies/build.gradle.kts | 2 +- .../idea-examples/titanic/build.gradle.kts | 2 +- .../idea-examples/youtube/build.gradle.kts | 2 +- .../expressions-converter/build.gradle.kts | 2 +- plugins/kotlin-dataframe/build.gradle.kts | 12 +++--- tests/build.gradle.kts | 8 ++-- 12 files changed, 54 insertions(+), 56 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index fa78e51e2..5405fbae2 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -222,7 +222,7 @@ subprojects { } kotlinPublications { - fairDokkaJars.set(false) + fairDokkaJars = false sonatypeSettings( project.findProperty("kds.sonatype.user") as String?, @@ -238,7 +238,7 @@ kotlinPublications { pom { githubRepo("Kotlin", "dataframe") - inceptionYear.set("2021") + inceptionYear = "2021" licenses { apache2() } @@ -252,10 +252,10 @@ kotlinPublications { } publication { - publicationName.set("api") - artifactId.set(projectName) - description.set("Data processing in Kotlin") - packageName.set(artifactId) + publicationName = "api" + artifactId = projectName + description = "Data processing in Kotlin" + packageName = artifactId } localRepositories { diff --git a/core/build.gradle.kts b/core/build.gradle.kts index b595177d8..0d3712b39 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -95,7 +95,7 @@ val compileSamplesKotlin = tasks.named("compileSamplesKotlin") { libraries.from(it.libraries) } source(sourceSets["test"].kotlin) - destinationDirectory.set(layout.buildDirectory.dir("classes/testWithOutputs/kotlin")) + destinationDirectory = layout.buildDirectory.dir("classes/testWithOutputs/kotlin") } tasks.withType { @@ -147,14 +147,14 @@ val clearSamplesOutputs by tasks.creating { } val addSamplesToGit by tasks.creating(GitTask::class) { - directory.set(file(".")) - command.set("add") - args.set(listOf("-A", "../docs/StardustDocs/snippets")) + directory = file(".") + command = "add" + args = listOf("-A", "../docs/StardustDocs/snippets") } val copySamplesOutputs = tasks.register("copySamplesOutputs") { group = "documentation" - mainClass.set("org.jetbrains.kotlinx.dataframe.explainer.SampleAggregatorKt") + mainClass = "org.jetbrains.kotlinx.dataframe.explainer.SampleAggregatorKt" dependsOn(clearSamplesOutputs) dependsOn(samplesTest) @@ -305,8 +305,8 @@ korro { groupSamples { - beforeSample.set("\n") - afterSample.set("\n") + beforeSample = "\n" + afterSample = "\n" funSuffix("_properties") { replaceText("NAME", "Properties") @@ -317,8 +317,8 @@ korro { funSuffix("_strings") { replaceText("NAME", "Strings") } - beforeGroup.set("\n") - afterGroup.set("") + beforeGroup = "\n" + afterGroup = "" } } @@ -366,19 +366,17 @@ tasks.withType { } tasks.withType { - kotlinOptions { - freeCompilerArgs = freeCompilerArgs + listOf("-Xinline-classes", "-Xopt-in=kotlin.RequiresOptIn") + compilerOptions { + freeCompilerArgs.addAll("-Xinline-classes", "-Xopt-in=kotlin.RequiresOptIn") } } tasks.test { maxHeapSize = "2048m" extensions.configure(kotlinx.kover.api.KoverTaskExtension::class) { - excludes.set( - listOf( - "org.jetbrains.kotlinx.dataframe.jupyter.*", - "org.jetbrains.kotlinx.dataframe.jupyter.SampleNotebooksTests", - ), + excludes = listOf( + "org.jetbrains.kotlinx.dataframe.jupyter.*", + "org.jetbrains.kotlinx.dataframe.jupyter.SampleNotebooksTests", ) } } @@ -389,10 +387,10 @@ tasks.processJupyterApiResources { kotlinPublications { publication { - publicationName.set("core") - artifactId.set("dataframe-core") - description.set("Dataframe core API") - packageName.set(artifactId) + publicationName = "core" + artifactId = "dataframe-core" + description = "Dataframe core API" + packageName = artifactId } } diff --git a/dataframe-arrow/build.gradle.kts b/dataframe-arrow/build.gradle.kts index e3f10bfa5..ee6a3878a 100644 --- a/dataframe-arrow/build.gradle.kts +++ b/dataframe-arrow/build.gradle.kts @@ -34,10 +34,10 @@ dependencies { kotlinPublications { publication { - publicationName.set("dataframeArrow") - artifactId.set(project.name) - description.set("Apache Arrow support for Kotlin Dataframe") - packageName.set(artifactId) + publicationName = "dataframeArrow" + artifactId = project.name + description = "Apache Arrow support for Kotlin Dataframe" + packageName = artifactId } } diff --git a/dataframe-excel/build.gradle.kts b/dataframe-excel/build.gradle.kts index 2f14b7dd6..f3b3255b8 100644 --- a/dataframe-excel/build.gradle.kts +++ b/dataframe-excel/build.gradle.kts @@ -28,10 +28,10 @@ dependencies { kotlinPublications { publication { - publicationName.set("dataframeExcel") - artifactId.set(project.name) - description.set("Excel support for Kotlin Dataframe") - packageName.set(artifactId) + publicationName = "dataframeExcel" + artifactId = project.name + description = "Excel support for Kotlin Dataframe" + packageName = artifactId } } diff --git a/dataframe-jdbc/build.gradle.kts b/dataframe-jdbc/build.gradle.kts index 705cf87fe..fab96b88c 100644 --- a/dataframe-jdbc/build.gradle.kts +++ b/dataframe-jdbc/build.gradle.kts @@ -36,10 +36,10 @@ dependencies { kotlinPublications { publication { - publicationName.set("dataframeJDBC") - artifactId.set(project.name) - description.set("JDBC support for Kotlin Dataframe") - packageName.set(artifactId) + publicationName = "dataframeJDBC" + artifactId = project.name + description = "JDBC support for Kotlin Dataframe" + packageName = artifactId } } diff --git a/dataframe-openapi/build.gradle.kts b/dataframe-openapi/build.gradle.kts index 86d113e84..5b92ed5b4 100644 --- a/dataframe-openapi/build.gradle.kts +++ b/dataframe-openapi/build.gradle.kts @@ -40,10 +40,10 @@ dependencies { kotlinPublications { publication { - publicationName.set("dataframeOpenApi") - artifactId.set(project.name) - description.set("OpenAPI support for Kotlin Dataframe") - packageName.set(artifactId) + publicationName = "dataframeOpenApi" + artifactId = project.name + description = "OpenAPI support for Kotlin Dataframe" + packageName = artifactId } } diff --git a/examples/idea-examples/movies/build.gradle.kts b/examples/idea-examples/movies/build.gradle.kts index bd47a6e0d..469cc17df 100644 --- a/examples/idea-examples/movies/build.gradle.kts +++ b/examples/idea-examples/movies/build.gradle.kts @@ -15,7 +15,7 @@ repositories { mavenLocal() // in case of local dataframe development } -application.mainClass.set("org.jetbrains.kotlinx.dataframe.examples.movies.MoviesWithDataClassKt") +application.mainClass = "org.jetbrains.kotlinx.dataframe.examples.movies.MoviesWithDataClassKt" dependencies { // implementation("org.jetbrains.kotlinx:dataframe:X.Y.Z") diff --git a/examples/idea-examples/titanic/build.gradle.kts b/examples/idea-examples/titanic/build.gradle.kts index a75392308..e2ea67c14 100644 --- a/examples/idea-examples/titanic/build.gradle.kts +++ b/examples/idea-examples/titanic/build.gradle.kts @@ -13,7 +13,7 @@ repositories { mavenLocal() // in case of local dataframe development } -application.mainClass.set("org.jetbrains.kotlinx.dataframe.examples.titanic.ml.TitanicKt") +application.mainClass = "org.jetbrains.kotlinx.dataframe.examples.titanic.ml.TitanicKt" dependencies { // implementation("org.jetbrains.kotlinx:dataframe:X.Y.Z") diff --git a/examples/idea-examples/youtube/build.gradle.kts b/examples/idea-examples/youtube/build.gradle.kts index 379cf1c63..e8e19c44f 100644 --- a/examples/idea-examples/youtube/build.gradle.kts +++ b/examples/idea-examples/youtube/build.gradle.kts @@ -15,7 +15,7 @@ repositories { mavenLocal() // in case of local dataframe development } -application.mainClass.set("org.jetbrains.kotlinx.dataframe.examples.youtube.YoutubeKt") +application.mainClass = "org.jetbrains.kotlinx.dataframe.examples.youtube.YoutubeKt" dependencies { // implementation("org.jetbrains.kotlinx:dataframe:X.Y.Z") diff --git a/plugins/expressions-converter/build.gradle.kts b/plugins/expressions-converter/build.gradle.kts index fae312e9a..a74b035e4 100644 --- a/plugins/expressions-converter/build.gradle.kts +++ b/plugins/expressions-converter/build.gradle.kts @@ -61,7 +61,7 @@ sourceSets { tasks.create("generateTests") { classpath = sourceSets.test.get().runtimeClasspath - mainClass.set("org.jetbrains.kotlinx.dataframe.GenerateTestsKt") + mainClass = "org.jetbrains.kotlinx.dataframe.GenerateTestsKt" } fun Test.setLibraryProperty(propName: String, jarName: String) { diff --git a/plugins/kotlin-dataframe/build.gradle.kts b/plugins/kotlin-dataframe/build.gradle.kts index 6c21ce80a..2f66887e8 100644 --- a/plugins/kotlin-dataframe/build.gradle.kts +++ b/plugins/kotlin-dataframe/build.gradle.kts @@ -95,7 +95,7 @@ tasks.compileTestKotlin { tasks.create("generateTests") { classpath = sourceSets.test.get().runtimeClasspath - mainClass.set("org.jetbrains.kotlin.fir.dataframe.GenerateTestsKt") + mainClass = "org.jetbrains.kotlin.fir.dataframe.GenerateTestsKt" } fun Test.setLibraryProperty(propName: String, jarName: String) { @@ -109,11 +109,11 @@ fun Test.setLibraryProperty(propName: String, jarName: String) { } kotlinPublications { - fairDokkaJars.set(false) + fairDokkaJars = false publication { - publicationName.set("api") - artifactId.set("compiler-plugin-all") - description.set("Data processing in Kotlin") - packageName.set(artifactId) + publicationName = "api" + artifactId = "compiler-plugin-all" + description = "Data processing in Kotlin" + packageName = artifactId } } diff --git a/tests/build.gradle.kts b/tests/build.gradle.kts index 79478ce03..b9a6c60e2 100644 --- a/tests/build.gradle.kts +++ b/tests/build.gradle.kts @@ -54,8 +54,8 @@ korro { groupSamples { - beforeSample.set("\n") - afterSample.set("\n") + beforeSample = "\n" + afterSample = "\n" funSuffix("_properties") { replaceText("NAME", "Properties") @@ -66,8 +66,8 @@ korro { funSuffix("_strings") { replaceText("NAME", "Strings") } - beforeGroup.set("\n") - afterGroup.set("") + beforeGroup = "\n" + afterGroup = "" } } From 5be47cb4a141aaf351a26a26e9d50a5d60559a8e Mon Sep 17 00:00:00 2001 From: Jolan Rensen Date: Tue, 27 Aug 2024 21:33:52 +0200 Subject: [PATCH 4/4] migrated deprecated kotlinOptions to compilerOptions --- build.gradle.kts | 5 ++-- core/build.gradle.kts | 3 ++- examples/idea-examples/json/build.gradle.kts | 3 ++- .../idea-examples/movies/build.gradle.kts | 3 ++- .../idea-examples/titanic/build.gradle.kts | 4 ++- .../idea-examples/youtube/build.gradle.kts | 3 ++- .../dataframe-gradle-plugin/build.gradle.kts | 4 ++- plugins/kotlin-dataframe/build.gradle.kts | 27 ++++++++++++------- 8 files changed, 34 insertions(+), 18 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 5405fbae2..72f404b33 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,5 +1,6 @@ import com.github.benmanes.gradle.versions.updates.DependencyUpdatesTask import com.github.gmazzo.buildconfig.BuildConfigExtension +import org.jetbrains.kotlin.gradle.dsl.JvmTarget import org.jetbrains.kotlin.gradle.dsl.KotlinJvmProjectExtension import org.jetbrains.kotlin.gradle.tasks.KotlinCompile import org.jetbrains.kotlinx.dataframe.AnyFrame @@ -133,8 +134,8 @@ kotlin.jvmToolchain(11) allprojects { tasks.withType { - kotlinOptions { - jvmTarget = "1.8" + compilerOptions { + jvmTarget = JvmTarget.JVM_1_8 } } diff --git a/core/build.gradle.kts b/core/build.gradle.kts index 0d3712b39..8e760c2f8 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -367,7 +367,8 @@ tasks.withType { tasks.withType { compilerOptions { - freeCompilerArgs.addAll("-Xinline-classes", "-Xopt-in=kotlin.RequiresOptIn") + optIn.addAll("kotlin.RequiresOptIn") + freeCompilerArgs.addAll("-Xinline-classes") } } diff --git a/examples/idea-examples/json/build.gradle.kts b/examples/idea-examples/json/build.gradle.kts index cd98122ca..80a84fc41 100644 --- a/examples/idea-examples/json/build.gradle.kts +++ b/examples/idea-examples/json/build.gradle.kts @@ -1,3 +1,4 @@ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget import org.jetbrains.kotlin.gradle.tasks.KotlinCompile import org.jetbrains.kotlinx.dataframe.api.JsonPath @@ -22,7 +23,7 @@ dependencies { } tasks.withType { - kotlinOptions.jvmTarget = "1.8" + compilerOptions.jvmTarget = JvmTarget.JVM_1_8 } dataframes { diff --git a/examples/idea-examples/movies/build.gradle.kts b/examples/idea-examples/movies/build.gradle.kts index 469cc17df..916b8c5ea 100644 --- a/examples/idea-examples/movies/build.gradle.kts +++ b/examples/idea-examples/movies/build.gradle.kts @@ -1,3 +1,4 @@ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { @@ -23,5 +24,5 @@ dependencies { } tasks.withType { - kotlinOptions.jvmTarget = "1.8" + compilerOptions.jvmTarget = JvmTarget.JVM_1_8 } diff --git a/examples/idea-examples/titanic/build.gradle.kts b/examples/idea-examples/titanic/build.gradle.kts index e2ea67c14..4a1d7d754 100644 --- a/examples/idea-examples/titanic/build.gradle.kts +++ b/examples/idea-examples/titanic/build.gradle.kts @@ -1,3 +1,5 @@ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget + plugins { application kotlin("jvm") @@ -35,7 +37,7 @@ dataframes { } tasks.withType { - kotlinOptions.jvmTarget = "11" + compilerOptions.jvmTarget = JvmTarget.JVM_11 } tasks.withType { diff --git a/examples/idea-examples/youtube/build.gradle.kts b/examples/idea-examples/youtube/build.gradle.kts index e8e19c44f..0a8e356bc 100644 --- a/examples/idea-examples/youtube/build.gradle.kts +++ b/examples/idea-examples/youtube/build.gradle.kts @@ -1,3 +1,4 @@ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { @@ -24,6 +25,6 @@ dependencies { } tasks.withType { - kotlinOptions.jvmTarget = "1.8" + compilerOptions.jvmTarget = JvmTarget.JVM_1_8 } diff --git a/plugins/dataframe-gradle-plugin/build.gradle.kts b/plugins/dataframe-gradle-plugin/build.gradle.kts index 0778e1c26..32723a3d1 100644 --- a/plugins/dataframe-gradle-plugin/build.gradle.kts +++ b/plugins/dataframe-gradle-plugin/build.gradle.kts @@ -1,3 +1,5 @@ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget + plugins { `kotlin-dsl` `java-gradle-plugin` @@ -86,7 +88,7 @@ gradlePlugin { } tasks.withType { - kotlinOptions.jvmTarget = "1.8" + compilerOptions.jvmTarget = JvmTarget.JVM_1_8 } tasks.withType().all { diff --git a/plugins/kotlin-dataframe/build.gradle.kts b/plugins/kotlin-dataframe/build.gradle.kts index 2f66887e8..d7607e80e 100644 --- a/plugins/kotlin-dataframe/build.gradle.kts +++ b/plugins/kotlin-dataframe/build.gradle.kts @@ -1,3 +1,6 @@ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget +import org.jetbrains.kotlin.gradle.dsl.KotlinVersion + plugins { id("java") kotlin("jvm") @@ -67,10 +70,14 @@ tasks.test { } tasks.withType().configureEach { - kotlinOptions { - freeCompilerArgs += listOf("-Xfriend-paths=${project(":core").projectDir}") - freeCompilerArgs += "-opt-in=org.jetbrains.kotlin.compiler.plugin.ExperimentalCompilerApi" - freeCompilerArgs += "-Xcontext-receivers" + compilerOptions { + freeCompilerArgs.addAll( + "-Xfriend-paths=${project(":core").projectDir}", + "-Xcontext-receivers", + ) + optIn.addAll( + "org.jetbrains.kotlin.compiler.plugin.ExperimentalCompilerApi", + ) } } @@ -80,16 +87,16 @@ tasks.withType { } tasks.compileKotlin { - kotlinOptions { - languageVersion = "2.0" - jvmTarget = "1.8" + compilerOptions { + languageVersion = KotlinVersion.KOTLIN_2_0 + jvmTarget = JvmTarget.JVM_1_8 } } tasks.compileTestKotlin { - kotlinOptions { - languageVersion = "2.0" - jvmTarget = "1.8" + compilerOptions { + languageVersion = KotlinVersion.KOTLIN_2_0 + jvmTarget = JvmTarget.JVM_1_8 } }