plugin-sdk-core/build.gradle.kts (58 lines of code) (raw):

plugins { kotlin("jvm") alias(pluginSdkCoreLibs.plugins.kotlin.serialization) } group = "com.jetbrains.teamcity.plugins.plugin-sdk-core" version = "0.0.1" repositories { mavenCentral() maven { url = uri("https://download.jetbrains.com/teamcity-repository") } } dependencies { compileOnly(pluginSdkCoreLibs.teamcity.agent.api) compileOnly(pluginSdkCoreLibs.teamcity.common.api) implementation(pluginSdkCoreLibs.kotlin.stdlib) implementation(pluginSdkCoreLibs.kotlin.serialization.json) implementation(pluginSdkCoreLibs.arrow.core) implementation(pluginSdkCoreLibs.kotlin.coroutines.core) implementation(pluginSdkCoreLibs.commons.configuration) constraints { implementation(pluginSdkCoreLibs.constraint.transitive.icu4j) { because("previous versions have faulty jar files which cause problems during incremental compilation (which is enabled by default since Kotlin 1.8.20)") } } testImplementation(kotlin("test")) testImplementation(pluginSdkCoreLibs.teamcity.tests.support) testImplementation(pluginSdkCoreLibs.teamcity.agent.api) testImplementation(pluginSdkCoreLibs.teamcity.common.api) testImplementation(pluginSdkCoreLibs.mockk) testImplementation(pluginSdkCoreLibs.junit.jupiter) testRuntimeOnly(pluginSdkCoreLibs.junit.platform.launcher) testImplementation(pluginSdkCoreLibs.kotlin.coroutines.test) } kotlin { jvmToolchain { languageVersion.set(JavaLanguageVersion.of(11)) } } tasks { compileKotlin { compilerOptions { allWarningsAsErrors.set(true) freeCompilerArgs.add("-Xcontext-parameters") } } compileTestKotlin { compilerOptions { freeCompilerArgs.add("-Xcontext-parameters") } } test { useJUnitPlatform() testLogging { events("passed", "skipped", "failed") } } }