From cb1b36ef781132868175f4bb8364062ddf3aabba Mon Sep 17 00:00:00 2001 From: Michael Rittmeister Date: Thu, 24 Oct 2024 20:34:10 +0200 Subject: [PATCH] Resolve ktor version conflicts --- .../main/kotlin/dev/schlaubi/mikbot/gradle/Assembly.kt | 9 ++++++++- .../dev/schlaubi/mikbot/gradle/TransientDependencies.kt | 2 +- runtime/build.gradle.kts | 4 ++-- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/gradle-plugin/src/main/kotlin/dev/schlaubi/mikbot/gradle/Assembly.kt b/gradle-plugin/src/main/kotlin/dev/schlaubi/mikbot/gradle/Assembly.kt index b0c4cba5..29d312a4 100644 --- a/gradle-plugin/src/main/kotlin/dev/schlaubi/mikbot/gradle/Assembly.kt +++ b/gradle-plugin/src/main/kotlin/dev/schlaubi/mikbot/gradle/Assembly.kt @@ -38,7 +38,14 @@ internal fun TaskContainer.createAssembleTasks(generateDefaultTranslationBundle: jar.dependsOn(patchPropertiesTask, generateDefaultTranslationBundle) val assembleTask = createAssemblePluginTask(jar) val installBotTask = createInstallBotTask() - createAssembleBotTask(assembleTask, installBotTask) + + // This task only makes sense for plugin projects, since mikbot core plugins aren't distributed as standalone bots + // Also this is defined though the Gradle environment, therefore it is a compile-time constant + // But compilation of public and internal variant is different + @Suppress("KotlinConstantConditions") + if (!MikBotPluginInfo.IS_MIKBOT) { + createAssembleBotTask(assembleTask, installBotTask) + } return AssemblyTask(assembleTask, installBotTask) } diff --git a/gradle-plugin/src/main/kotlin/dev/schlaubi/mikbot/gradle/TransientDependencies.kt b/gradle-plugin/src/main/kotlin/dev/schlaubi/mikbot/gradle/TransientDependencies.kt index 6a73c30b..f7bd59f3 100644 --- a/gradle-plugin/src/main/kotlin/dev/schlaubi/mikbot/gradle/TransientDependencies.kt +++ b/gradle-plugin/src/main/kotlin/dev/schlaubi/mikbot/gradle/TransientDependencies.kt @@ -1,3 +1,3 @@ package dev.schlaubi.mikbot.gradle -const val transientDependencies = "dev.schlaubi.mikbot:api\ncom.kotlindiscord.kord.extensions:unsafe\ncom.kotlindiscord.kord.extensions:kord-extensions\ndev.kord:kord-core-voice\ndev.kord:kord-voice\ndev.kord:kord-core\ndev.kord:kord-gateway\ndev.kord:kord-rest\ndev.kord:kord-common\norg.litote.kmongo:kmongo-coroutine-serialization\norg.litote.kmongo:kmongo-serialization-mapping\norg.litote.kmongo:kmongo-coroutine-core\norg.litote.kmongo:kmongo-async-shared\norg.litote.kmongo:kmongo-property\norg.litote.kmongo:kmongo-shared\norg.litote.kmongo:kmongo-id\norg.litote:kreflect\norg.jetbrains.kotlin:kotlin-reflect\nio.insert-koin:koin-logger-slf4j\nio.insert-koin:koin-core\nnet.peanuuutz:tomlkt\ncom.github.jershell:kbson\ndev.schlaubi:stdx-full\ndev.schlaubi:stdx-serialization\nio.ktor:ktor-serialization-kotlinx-json\nio.ktor:ktor-serialization-kotlinx\norg.jetbrains.kotlinx:kotlinx-serialization-core\norg.jetbrains.kotlinx:kotlinx-serialization-json\ndev.schlaubi:annotations\nio.ktor:ktor-client-okhttp\nio.ktor:ktor-client-content-negotiation\nio.ktor:ktor-client-websockets\nio.ktor:ktor-client-core\norg.jetbrains.kotlinx:kotlinx-coroutines-slf4j\norg.jetbrains.kotlinx:kotlinx-coroutines-reactive\ndev.schlaubi:stdx-coroutines\nio.ktor:ktor-events\nio.ktor:ktor-websocket-serialization\nio.ktor:ktor-serialization\nio.ktor:ktor-websockets\nio.ktor:ktor-http\nio.ktor:ktor-network\nio.ktor:ktor-utils\ndev.kord.cache:cache-map\ndev.kord.cache:cache-api\nio.ktor:ktor-io\norg.jetbrains.kotlinx:kotlinx-coroutines-core\norg.jetbrains.kotlinx:kotlinx-coroutines-jdk8\norg.jetbrains.kotlinx:kotlinx-datetime\ncom.kotlindiscord.kord.extensions:annotations\ncom.kotlindiscord.kord.extensions:token-parser\ndev.kord.x:kordx.emoji\nco.touchlab:stately-concurrent-collections\nco.touchlab:stately-concurrency\ncom.squareup.okhttp3:okhttp\ndev.schlaubi:stdx-core\ndev.schlaubi:stdx-envconf\ndev.schlaubi:stdx-logging\nco.touchlab:stately-strict\nio.github.microutils:kotlin-logging\norg.jetbrains.kotlin:kotlin-stdlib-jdk8\nio.github.oshai:kotlin-logging\norg.jetbrains.kotlin:kotlin-stdlib-jdk7\ncom.squareup.okio:okio\norg.litote.kmongo:kmongo-data\norg.jetbrains.kotlin:kotlin-stdlib\norg.pf4j:pf4j-update\norg.pf4j:pf4j\ncom.google.code.gson:gson\norg.ow2.asm:asm\ndev.schlaubi:gradle-plugin\norg.jetbrains:annotations\nch.qos.logback:logback-classic\norg.slf4j:slf4j-api\ncom.github.zafarkhaja:java-semver\ncommons-codec:commons-codec\ncom.google.errorprone:error_prone_annotations\ncommons-validator:commons-validator\ncom.ibm.icu:icu4j\nnet.fellbaum:jemoji\nio.sentry:sentry\nch.qos.logback:logback-core\ncommons-beanutils:commons-beanutils\ncommons-digester:commons-digester\ncommons-logging:commons-logging\ncommons-collections:commons-collections\ncom.fasterxml.jackson.core:jackson-annotations\ncom.fasterxml.jackson.core:jackson-core\ncom.fasterxml.jackson.core:jackson-databind\norg.mongodb:mongodb-driver-reactivestreams\norg.mongodb:mongodb-driver-core\norg.mongodb:bson-record-codec\norg.mongodb:bson\nio.projectreactor:reactor-core\norg.reactivestreams:reactive-streams" \ No newline at end of file +const val transientDependencies = "dev.schlaubi.mikbot:api\ncom.kotlindiscord.kord.extensions:unsafe\ncom.kotlindiscord.kord.extensions:kord-extensions\ndev.kord:kord-core-voice\ndev.kord:kord-core\ndev.kord:kord-rest\ndev.kord:kord-voice\ndev.kord:kord-gateway\ndev.kord:kord-common\norg.litote.kmongo:kmongo-coroutine-serialization\norg.litote.kmongo:kmongo-serialization-mapping\norg.litote.kmongo:kmongo-coroutine-core\norg.litote.kmongo:kmongo-async-shared\norg.litote.kmongo:kmongo-property\norg.litote.kmongo:kmongo-shared\norg.litote.kmongo:kmongo-id\norg.litote:kreflect\norg.jetbrains.kotlin:kotlin-reflect\nio.insert-koin:koin-logger-slf4j\nio.insert-koin:koin-core\nio.ktor:ktor-client-okhttp\nio.ktor:ktor-client-content-negotiation\nio.ktor:ktor-client-core\nio.ktor:ktor-events\nio.ktor:ktor-websocket-serialization\nio.ktor:ktor-sse\nio.ktor:ktor-serialization-kotlinx-json\nio.ktor:ktor-serialization-kotlinx\nio.ktor:ktor-serialization\nio.ktor:ktor-websockets\nio.ktor:ktor-http\nnet.peanuuutz:tomlkt\ncom.github.jershell:kbson\ndev.schlaubi:stdx-full\ndev.schlaubi:stdx-serialization\nio.ktor:ktor-network\nio.ktor:ktor-utils\norg.jetbrains.kotlinx:kotlinx-serialization-json-io\norg.jetbrains.kotlinx:kotlinx-serialization-core\norg.jetbrains.kotlinx:kotlinx-serialization-json\ndev.schlaubi:annotations\norg.jetbrains.kotlinx:kotlinx-coroutines-slf4j\norg.jetbrains.kotlinx:kotlinx-coroutines-reactive\ndev.schlaubi:stdx-coroutines\ndev.kord.cache:cache-map\ndev.kord.cache:cache-api\nio.ktor:ktor-io\norg.jetbrains.kotlinx:kotlinx-coroutines-core\norg.jetbrains.kotlinx:kotlinx-coroutines-jdk8\norg.jetbrains.kotlinx:kotlinx-datetime\ncom.kotlindiscord.kord.extensions:token-parser\nio.github.oshai:kotlin-logging\ncom.kotlindiscord.kord.extensions:annotations\ndev.kord.x:kordx.emoji\nco.touchlab:stately-concurrent-collections\nco.touchlab:stately-concurrency\ncom.squareup.okhttp3:okhttp\ndev.schlaubi:stdx-core\ndev.schlaubi:stdx-envconf\ndev.schlaubi:stdx-logging\nco.touchlab:stately-strict\nio.github.microutils:kotlin-logging\norg.jetbrains.kotlin:kotlin-stdlib-jdk8\norg.jetbrains.kotlin:kotlin-stdlib-jdk7\ncom.squareup.okio:okio\norg.litote.kmongo:kmongo-data\norg.jetbrains.kotlinx:kotlinx-io-core\norg.jetbrains.kotlinx:kotlinx-io-bytestring\norg.jetbrains.kotlin:kotlin-stdlib\norg.pf4j:pf4j-update\norg.pf4j:pf4j\ncom.google.code.gson:gson\norg.ow2.asm:asm\ndev.schlaubi:gradle-plugin\norg.jetbrains:annotations\nch.qos.logback:logback-classic\norg.slf4j:slf4j-api\ncom.github.zafarkhaja:java-semver\ncommons-codec:commons-codec\ncom.google.errorprone:error_prone_annotations\ncommons-validator:commons-validator\ncom.ibm.icu:icu4j\nnet.fellbaum:jemoji\nio.sentry:sentry\nch.qos.logback:logback-core\ncommons-beanutils:commons-beanutils\ncommons-digester:commons-digester\ncommons-logging:commons-logging\ncommons-collections:commons-collections\ncom.fasterxml.jackson.core:jackson-annotations\ncom.fasterxml.jackson.core:jackson-core\ncom.fasterxml.jackson.core:jackson-databind\norg.mongodb:mongodb-driver-reactivestreams\norg.mongodb:mongodb-driver-core\norg.mongodb:bson-record-codec\norg.mongodb:bson\nio.projectreactor:reactor-core\norg.reactivestreams:reactive-streams" \ No newline at end of file diff --git a/runtime/build.gradle.kts b/runtime/build.gradle.kts index b12f8b7f..5d61133b 100644 --- a/runtime/build.gradle.kts +++ b/runtime/build.gradle.kts @@ -31,8 +31,8 @@ dependencies { // otherwise we would add entire Gradle in here isTransitive = false } - implementation("dev.kord:kord-common-jvm:feature-user-apps-20240925.194307-6") - implementation("dev.kord:kord-rest-jvm:feature-user-apps-20240925.194307-6") + implementation("dev.kord:kord-common-jvm:${libs.versions.kord.get()}") + implementation("dev.kord:kord-rest-jvm:${libs.versions.kord.get()}") // Util implementation(libs.kotlinx.serialization.json)