diff --git a/README.md b/README.md index 089195ce829..65963393922 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,8 @@ in [`gradle.properties`](gradle.properties)) ```kotlin repositories { mavenCentral() - // Kord Snapshots Repository (Optional): + // Kord Snapshot Repositories (optional, choose one of these): + maven("https://repo.kord.dev/snapshots") maven("https://oss.sonatype.org/content/repositories/snapshots") } @@ -81,7 +82,10 @@ dependencies { ```groovy repositories { mavenCentral() - // Kord Snapshots Repository (Optional): + // Kord Snapshot Repositories (optional, choose one of these): + maven { + url "https://repo.kord.dev/snapshots" + } maven { url "https://oss.sonatype.org/content/repositories/snapshots" } @@ -94,9 +98,19 @@ dependencies { ### Maven -##### Kord Snapshots Repository (Optional): +##### Kord Snapshot Repositories (optional, choose one of these): ```xml + + snapshots-repo + https://repo.kord.dev/snapshots + + false + + + true + + snapshots-repo @@ -113,7 +127,6 @@ dependencies { --- ```xml - dev.kord kord-core-jvm diff --git a/buildSrc/src/main/kotlin/Compiler.kt b/buildSrc/src/main/kotlin/Compiler.kt index 00b3f31b5b6..6caa6484fc3 100644 --- a/buildSrc/src/main/kotlin/Compiler.kt +++ b/buildSrc/src/main/kotlin/Compiler.kt @@ -1,6 +1,8 @@ import org.gradle.api.NamedDomainObjectSet import org.gradle.kotlin.dsl.assign +import org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8 import org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions +import org.jetbrains.kotlin.gradle.dsl.KotlinJvmCompilerOptions import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet val kordOptIns = listOf( @@ -12,16 +14,20 @@ val kordOptIns = listOf( "dev.kord.common.annotation.KordVoice", ) -object Jvm { - const val target = 8 -} - -fun KotlinCommonCompilerOptions.applyKordCompilerOptions() { +internal fun KotlinCommonCompilerOptions.applyKordCommonCompilerOptions() { allWarningsAsErrors = true progressiveMode = true freeCompilerArgs.add("-Xexpect-actual-classes") } +internal const val KORD_JVM_TARGET = 8 + +internal fun KotlinJvmCompilerOptions.applyKordJvmCompilerOptions() { + applyKordCommonCompilerOptions() + jvmTarget = JVM_1_8 + freeCompilerArgs.add("-Xjdk-release=1.8") +} + internal fun NamedDomainObjectSet.applyKordTestOptIns() { named { it.contains("test", ignoreCase = true) }.configureEach { // allow `ExperimentalCoroutinesApi` for `TestScope.currentTime` diff --git a/buildSrc/src/main/kotlin/Documentation.kt b/buildSrc/src/main/kotlin/Documentation.kt index fef44a76bab..3896e95ff48 100644 --- a/buildSrc/src/main/kotlin/Documentation.kt +++ b/buildSrc/src/main/kotlin/Documentation.kt @@ -11,7 +11,7 @@ fun AbstractDokkaLeafTask.applyKordDokkaOptions() { dokkaSourceSets.configureEach { - jdkVersion = Jvm.target + jdkVersion = 22 suppressGeneratedFiles = false diff --git a/buildSrc/src/main/kotlin/kord-internal-module.gradle.kts b/buildSrc/src/main/kotlin/kord-internal-module.gradle.kts index ee062d1899c..30df3969765 100644 --- a/buildSrc/src/main/kotlin/kord-internal-module.gradle.kts +++ b/buildSrc/src/main/kotlin/kord-internal-module.gradle.kts @@ -8,8 +8,13 @@ repositories { } kotlin { - jvmToolchain(Jvm.target) compilerOptions { - applyKordCompilerOptions() + applyKordJvmCompilerOptions() + } +} + +tasks { + withType().configureEach { + options.release = KORD_JVM_TARGET } } diff --git a/buildSrc/src/main/kotlin/kord-multiplatform-module.gradle.kts b/buildSrc/src/main/kotlin/kord-multiplatform-module.gradle.kts index b9c3f13f541..b37339635c2 100644 --- a/buildSrc/src/main/kotlin/kord-multiplatform-module.gradle.kts +++ b/buildSrc/src/main/kotlin/kord-multiplatform-module.gradle.kts @@ -1,8 +1,6 @@ -import org.gradle.configurationcache.extensions.capitalized import org.jetbrains.dokka.gradle.AbstractDokkaLeafTask import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi import org.jetbrains.kotlin.gradle.targets.js.testing.KotlinJsTest -import org.jetbrains.kotlin.gradle.targets.native.tasks.KotlinNativeTest plugins { org.jetbrains.kotlin.multiplatform diff --git a/buildSrc/src/main/kotlin/kord-publishing.gradle.kts b/buildSrc/src/main/kotlin/kord-publishing.gradle.kts index 103cd78ec27..20d05a7dc4b 100644 --- a/buildSrc/src/main/kotlin/kord-publishing.gradle.kts +++ b/buildSrc/src/main/kotlin/kord-publishing.gradle.kts @@ -1,6 +1,5 @@ -import com.vanniktech.maven.publish.JavadocJar -import com.vanniktech.maven.publish.KotlinMultiplatform -import org.jetbrains.kotlin.konan.target.Family +import java.lang.System.getenv +import java.util.Base64 plugins { id("com.vanniktech.maven.publish.base") @@ -55,4 +54,26 @@ mavenPublishing { url = Library.projectUrl } } + + repositories { + maven { + url = uri(if (isRelease) Repo.releasesUrl else Repo.snapshotsUrl) + + credentials { + username = getenv("NEXUS_USER") + password = getenv("NEXUS_PASSWORD") + } + } + + if (!isRelease) { + maven { + name = "kordSnapshots" + url = uri("https://repo.kord.dev/snapshots") + credentials { + username = getenv("KORD_REPO_USER") + password = getenv("KORD_REPO_PASSWORD") + } + } + } + } } diff --git a/common/api/common.klib.api b/common/api/common.klib.api index ffb499379aa..430ac1fdd2f 100644 --- a/common/api/common.klib.api +++ b/common/api/common.klib.api @@ -6341,8 +6341,6 @@ final class dev.kord.common/Locale { // dev.kord.common/Locale|null[0] } sealed class <#A: kotlin/Any?> dev.kord.common.entity/AuditLogChangeKey { // dev.kord.common.entity/AuditLogChangeKey|null[0] - constructor (kotlin/String, kotlinx.serialization/KSerializer<#A>) // dev.kord.common.entity/AuditLogChangeKey.|(kotlin.String;kotlinx.serialization.KSerializer<1:0>){}[0] - final val name // dev.kord.common.entity/AuditLogChangeKey.name|{}name[0] final fun (): kotlin/String // dev.kord.common.entity/AuditLogChangeKey.name.|(){}[0] final val serializer // dev.kord.common.entity/AuditLogChangeKey.serializer|{}serializer[0] @@ -6479,8 +6477,6 @@ sealed class <#A: kotlin/Any?> dev.kord.common.entity/AuditLogChangeKey { // dev } sealed class <#A: out kotlin/Any?> dev.kord.common.entity.optional/Optional { // dev.kord.common.entity.optional/Optional|null[0] - constructor () // dev.kord.common.entity.optional/Optional.|(){}[0] - open val value // dev.kord.common.entity.optional/Optional.value|{}value[0] open fun (): #A? // dev.kord.common.entity.optional/Optional.value.|(){}[0] @@ -6533,8 +6529,6 @@ sealed class <#A: out kotlin/Any?> dev.kord.common.entity.optional/Optional { // } sealed class <#A: out kotlin/Any?> dev.kord.common.entity/CommandArgument : dev.kord.common.entity/Option { // dev.kord.common.entity/CommandArgument|null[0] - constructor () // dev.kord.common.entity/CommandArgument.|(){}[0] - abstract val focused // dev.kord.common.entity/CommandArgument.focused|{}focused[0] abstract fun (): dev.kord.common.entity.optional/OptionalBoolean // dev.kord.common.entity/CommandArgument.focused.|(){}[0] abstract val value // dev.kord.common.entity/CommandArgument.value|{}value[0] @@ -6758,8 +6752,6 @@ sealed class <#A: out kotlin/Any?> dev.kord.common.entity/CommandArgument : dev. } sealed class dev.kord.common.entity.optional/OptionalBoolean { // dev.kord.common.entity.optional/OptionalBoolean|null[0] - constructor () // dev.kord.common.entity.optional/OptionalBoolean.|(){}[0] - final val asNullable // dev.kord.common.entity.optional/OptionalBoolean.asNullable|{}asNullable[0] final fun (): kotlin/Boolean? // dev.kord.common.entity.optional/OptionalBoolean.asNullable.|(){}[0] final val asOptional // dev.kord.common.entity.optional/OptionalBoolean.asOptional|{}asOptional[0] @@ -6792,8 +6784,6 @@ sealed class dev.kord.common.entity.optional/OptionalBoolean { // dev.kord.commo } sealed class dev.kord.common.entity.optional/OptionalInt { // dev.kord.common.entity.optional/OptionalInt|null[0] - constructor () // dev.kord.common.entity.optional/OptionalInt.|(){}[0] - final val asNullable // dev.kord.common.entity.optional/OptionalInt.asNullable|{}asNullable[0] final fun (): kotlin/Int? // dev.kord.common.entity.optional/OptionalInt.asNullable.|(){}[0] final val asOptional // dev.kord.common.entity.optional/OptionalInt.asOptional|{}asOptional[0] @@ -6823,8 +6813,6 @@ sealed class dev.kord.common.entity.optional/OptionalInt { // dev.kord.common.en } sealed class dev.kord.common.entity.optional/OptionalLong { // dev.kord.common.entity.optional/OptionalLong|null[0] - constructor () // dev.kord.common.entity.optional/OptionalLong.|(){}[0] - final val asNullable // dev.kord.common.entity.optional/OptionalLong.asNullable|{}asNullable[0] final fun (): kotlin/Long? // dev.kord.common.entity.optional/OptionalLong.asNullable.|(){}[0] final val asOptional // dev.kord.common.entity.optional/OptionalLong.asOptional|{}asOptional[0] @@ -6854,8 +6842,6 @@ sealed class dev.kord.common.entity.optional/OptionalLong { // dev.kord.common.e } sealed class dev.kord.common.entity.optional/OptionalSnowflake { // dev.kord.common.entity.optional/OptionalSnowflake|null[0] - constructor () // dev.kord.common.entity.optional/OptionalSnowflake.|(){}[0] - final val asOptional // dev.kord.common.entity.optional/OptionalSnowflake.asOptional|{}asOptional[0] final fun (): dev.kord.common.entity.optional/Optional // dev.kord.common.entity.optional/OptionalSnowflake.asOptional.|(){}[0] open val value // dev.kord.common.entity.optional/OptionalSnowflake.value|{}value[0] @@ -6886,8 +6872,6 @@ sealed class dev.kord.common.entity.optional/OptionalSnowflake { // dev.kord.com } sealed class dev.kord.common.entity/ActivityFlag { // dev.kord.common.entity/ActivityFlag|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/ActivityFlag.|(kotlin.Int){}[0] - final val shift // dev.kord.common.entity/ActivityFlag.shift|{}shift[0] final fun (): kotlin/Int // dev.kord.common.entity/ActivityFlag.shift.|(){}[0] final val value // dev.kord.common.entity/ActivityFlag.value|{}value[0] @@ -6928,8 +6912,6 @@ sealed class dev.kord.common.entity/ActivityFlag { // dev.kord.common.entity/Act } sealed class dev.kord.common.entity/ActivityType { // dev.kord.common.entity/ActivityType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/ActivityType.|(kotlin.Int){}[0] - final val code // dev.kord.common.entity/ActivityType.code|{}code[0] final fun (): kotlin/Int // dev.kord.common.entity/ActivityType.code.|(){}[0] @@ -6961,8 +6943,6 @@ sealed class dev.kord.common.entity/ActivityType { // dev.kord.common.entity/Act } sealed class dev.kord.common.entity/AllowedMentionType { // dev.kord.common.entity/AllowedMentionType|null[0] - constructor (kotlin/String) // dev.kord.common.entity/AllowedMentionType.|(kotlin.String){}[0] - final val value // dev.kord.common.entity/AllowedMentionType.value|{}value[0] final fun (): kotlin/String // dev.kord.common.entity/AllowedMentionType.value.|(){}[0] @@ -6988,8 +6968,6 @@ sealed class dev.kord.common.entity/AllowedMentionType { // dev.kord.common.enti } sealed class dev.kord.common.entity/ApplicationCommandOptionType { // dev.kord.common.entity/ApplicationCommandOptionType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/ApplicationCommandOptionType.|(kotlin.Int){}[0] - final val type // dev.kord.common.entity/ApplicationCommandOptionType.type|{}type[0] final fun (): kotlin/Int // dev.kord.common.entity/ApplicationCommandOptionType.type.|(){}[0] @@ -7031,8 +7009,6 @@ sealed class dev.kord.common.entity/ApplicationCommandOptionType { // dev.kord.c } sealed class dev.kord.common.entity/ApplicationCommandPermissionType { // dev.kord.common.entity/ApplicationCommandPermissionType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/ApplicationCommandPermissionType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/ApplicationCommandPermissionType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/ApplicationCommandPermissionType.value.|(){}[0] @@ -7058,8 +7034,6 @@ sealed class dev.kord.common.entity/ApplicationCommandPermissionType { // dev.ko } sealed class dev.kord.common.entity/ApplicationCommandType { // dev.kord.common.entity/ApplicationCommandType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/ApplicationCommandType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/ApplicationCommandType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/ApplicationCommandType.value.|(){}[0] @@ -7085,8 +7059,6 @@ sealed class dev.kord.common.entity/ApplicationCommandType { // dev.kord.common. } sealed class dev.kord.common.entity/ApplicationFlag { // dev.kord.common.entity/ApplicationFlag|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/ApplicationFlag.|(kotlin.Int){}[0] - final val code // dev.kord.common.entity/ApplicationFlag.code|{}code[0] final fun (): kotlin/Int // dev.kord.common.entity/ApplicationFlag.code.|(){}[0] final val shift // dev.kord.common.entity/ApplicationFlag.shift|{}shift[0] @@ -7129,8 +7101,6 @@ sealed class dev.kord.common.entity/ApplicationFlag { // dev.kord.common.entity/ } sealed class dev.kord.common.entity/ApplicationRoleConnectionMetadataType { // dev.kord.common.entity/ApplicationRoleConnectionMetadataType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/ApplicationRoleConnectionMetadataType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/ApplicationRoleConnectionMetadataType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/ApplicationRoleConnectionMetadataType.value.|(){}[0] @@ -7166,8 +7136,6 @@ sealed class dev.kord.common.entity/ApplicationRoleConnectionMetadataType { // d } sealed class dev.kord.common.entity/ArchiveDuration { // dev.kord.common.entity/ArchiveDuration|null[0] - constructor (kotlin.time/Duration) // dev.kord.common.entity/ArchiveDuration.|(kotlin.time.Duration){}[0] - final val duration // dev.kord.common.entity/ArchiveDuration.duration|{}duration[0] final fun (): kotlin.time/Duration // dev.kord.common.entity/ArchiveDuration.duration.|(){}[0] @@ -7197,8 +7165,6 @@ sealed class dev.kord.common.entity/ArchiveDuration { // dev.kord.common.entity/ } sealed class dev.kord.common.entity/AttachmentFlag { // dev.kord.common.entity/AttachmentFlag|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/AttachmentFlag.|(kotlin.Int){}[0] - final val shift // dev.kord.common.entity/AttachmentFlag.shift|{}shift[0] final fun (): kotlin/Int // dev.kord.common.entity/AttachmentFlag.shift.|(){}[0] final val value // dev.kord.common.entity/AttachmentFlag.value|{}value[0] @@ -7223,8 +7189,6 @@ sealed class dev.kord.common.entity/AttachmentFlag { // dev.kord.common.entity/A } sealed class dev.kord.common.entity/AuditLogEvent { // dev.kord.common.entity/AuditLogEvent|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/AuditLogEvent.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/AuditLogEvent.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/AuditLogEvent.value.|(){}[0] @@ -7356,8 +7320,6 @@ sealed class dev.kord.common.entity/AuditLogEvent { // dev.kord.common.entity/Au } sealed class dev.kord.common.entity/AutoModerationActionType { // dev.kord.common.entity/AutoModerationActionType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/AutoModerationActionType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/AutoModerationActionType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/AutoModerationActionType.value.|(){}[0] @@ -7383,8 +7345,6 @@ sealed class dev.kord.common.entity/AutoModerationActionType { // dev.kord.commo } sealed class dev.kord.common.entity/AutoModerationRuleEventType { // dev.kord.common.entity/AutoModerationRuleEventType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/AutoModerationRuleEventType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/AutoModerationRuleEventType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/AutoModerationRuleEventType.value.|(){}[0] @@ -7406,8 +7366,6 @@ sealed class dev.kord.common.entity/AutoModerationRuleEventType { // dev.kord.co } sealed class dev.kord.common.entity/AutoModerationRuleKeywordPresetType { // dev.kord.common.entity/AutoModerationRuleKeywordPresetType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/AutoModerationRuleKeywordPresetType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/AutoModerationRuleKeywordPresetType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/AutoModerationRuleKeywordPresetType.value.|(){}[0] @@ -7433,8 +7391,6 @@ sealed class dev.kord.common.entity/AutoModerationRuleKeywordPresetType { // dev } sealed class dev.kord.common.entity/AutoModerationRuleTriggerType { // dev.kord.common.entity/AutoModerationRuleTriggerType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/AutoModerationRuleTriggerType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/AutoModerationRuleTriggerType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/AutoModerationRuleTriggerType.value.|(){}[0] @@ -7462,8 +7418,6 @@ sealed class dev.kord.common.entity/AutoModerationRuleTriggerType { // dev.kord. } sealed class dev.kord.common.entity/ButtonStyle { // dev.kord.common.entity/ButtonStyle|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/ButtonStyle.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/ButtonStyle.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/ButtonStyle.value.|(){}[0] @@ -7493,8 +7447,6 @@ sealed class dev.kord.common.entity/ButtonStyle { // dev.kord.common.entity/Butt } sealed class dev.kord.common.entity/ChannelFlag { // dev.kord.common.entity/ChannelFlag|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/ChannelFlag.|(kotlin.Int){}[0] - final val code // dev.kord.common.entity/ChannelFlag.code|{}code[0] final fun (): kotlin/Int // dev.kord.common.entity/ChannelFlag.code.|(){}[0] final val shift // dev.kord.common.entity/ChannelFlag.shift|{}shift[0] @@ -7523,8 +7475,6 @@ sealed class dev.kord.common.entity/ChannelFlag { // dev.kord.common.entity/Chan } sealed class dev.kord.common.entity/ChannelType { // dev.kord.common.entity/ChannelType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/ChannelType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/ChannelType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/ChannelType.value.|(){}[0] @@ -7570,8 +7520,6 @@ sealed class dev.kord.common.entity/ChannelType { // dev.kord.common.entity/Chan } sealed class dev.kord.common.entity/Choice { // dev.kord.common.entity/Choice|null[0] - constructor () // dev.kord.common.entity/Choice.|(){}[0] - abstract val name // dev.kord.common.entity/Choice.name|{}name[0] abstract fun (): kotlin/String // dev.kord.common.entity/Choice.name.|(){}[0] abstract val nameLocalizations // dev.kord.common.entity/Choice.nameLocalizations|{}nameLocalizations[0] @@ -7642,8 +7590,6 @@ sealed class dev.kord.common.entity/Choice { // dev.kord.common.entity/Choice|nu } sealed class dev.kord.common.entity/ComponentType { // dev.kord.common.entity/ComponentType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/ComponentType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/ComponentType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/ComponentType.value.|(){}[0] @@ -7679,8 +7625,6 @@ sealed class dev.kord.common.entity/ComponentType { // dev.kord.common.entity/Co } sealed class dev.kord.common.entity/DefaultMessageNotificationLevel { // dev.kord.common.entity/DefaultMessageNotificationLevel|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/DefaultMessageNotificationLevel.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/DefaultMessageNotificationLevel.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/DefaultMessageNotificationLevel.value.|(){}[0] @@ -7704,8 +7648,6 @@ sealed class dev.kord.common.entity/DefaultMessageNotificationLevel { // dev.kor } sealed class dev.kord.common.entity/DiscordComponent { // dev.kord.common.entity/DiscordComponent|null[0] - constructor () // dev.kord.common.entity/DiscordComponent.|(){}[0] - abstract val channelTypes // dev.kord.common.entity/DiscordComponent.channelTypes|{}channelTypes[0] abstract fun (): dev.kord.common.entity.optional/Optional> // dev.kord.common.entity/DiscordComponent.channelTypes.|(){}[0] abstract val components // dev.kord.common.entity/DiscordComponent.components|{}components[0] @@ -7747,8 +7689,6 @@ sealed class dev.kord.common.entity/DiscordComponent { // dev.kord.common.entity } sealed class dev.kord.common.entity/DiscordConnectionVisibility { // dev.kord.common.entity/DiscordConnectionVisibility|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/DiscordConnectionVisibility.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/DiscordConnectionVisibility.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/DiscordConnectionVisibility.value.|(){}[0] @@ -7772,8 +7712,6 @@ sealed class dev.kord.common.entity/DiscordConnectionVisibility { // dev.kord.co } sealed class dev.kord.common.entity/EmbedType { // dev.kord.common.entity/EmbedType|null[0] - constructor (kotlin/String) // dev.kord.common.entity/EmbedType.|(kotlin.String){}[0] - final val value // dev.kord.common.entity/EmbedType.value|{}value[0] final fun (): kotlin/String // dev.kord.common.entity/EmbedType.value.|(){}[0] @@ -7805,8 +7743,6 @@ sealed class dev.kord.common.entity/EmbedType { // dev.kord.common.entity/EmbedT } sealed class dev.kord.common.entity/ExplicitContentFilter { // dev.kord.common.entity/ExplicitContentFilter|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/ExplicitContentFilter.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/ExplicitContentFilter.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/ExplicitContentFilter.value.|(){}[0] @@ -7832,8 +7768,6 @@ sealed class dev.kord.common.entity/ExplicitContentFilter { // dev.kord.common.e } sealed class dev.kord.common.entity/ForumLayoutType { // dev.kord.common.entity/ForumLayoutType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/ForumLayoutType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/ForumLayoutType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/ForumLayoutType.value.|(){}[0] @@ -7859,8 +7793,6 @@ sealed class dev.kord.common.entity/ForumLayoutType { // dev.kord.common.entity/ } sealed class dev.kord.common.entity/GuildFeature { // dev.kord.common.entity/GuildFeature|null[0] - constructor (kotlin/String) // dev.kord.common.entity/GuildFeature.|(kotlin.String){}[0] - final val value // dev.kord.common.entity/GuildFeature.value|{}value[0] final fun (): kotlin/String // dev.kord.common.entity/GuildFeature.value.|(){}[0] @@ -7934,8 +7866,6 @@ sealed class dev.kord.common.entity/GuildFeature { // dev.kord.common.entity/Gui } sealed class dev.kord.common.entity/GuildMemberFlag { // dev.kord.common.entity/GuildMemberFlag|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/GuildMemberFlag.|(kotlin.Int){}[0] - final val code // dev.kord.common.entity/GuildMemberFlag.code|{}code[0] final fun (): kotlin/Int // dev.kord.common.entity/GuildMemberFlag.code.|(){}[0] final val shift // dev.kord.common.entity/GuildMemberFlag.shift|{}shift[0] @@ -7966,8 +7896,6 @@ sealed class dev.kord.common.entity/GuildMemberFlag { // dev.kord.common.entity/ } sealed class dev.kord.common.entity/GuildScheduledEventPrivacyLevel { // dev.kord.common.entity/GuildScheduledEventPrivacyLevel|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/GuildScheduledEventPrivacyLevel.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/GuildScheduledEventPrivacyLevel.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/GuildScheduledEventPrivacyLevel.value.|(){}[0] @@ -7989,8 +7917,6 @@ sealed class dev.kord.common.entity/GuildScheduledEventPrivacyLevel { // dev.kor } sealed class dev.kord.common.entity/GuildScheduledEventStatus { // dev.kord.common.entity/GuildScheduledEventStatus|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/GuildScheduledEventStatus.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/GuildScheduledEventStatus.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/GuildScheduledEventStatus.value.|(){}[0] @@ -8018,8 +7944,6 @@ sealed class dev.kord.common.entity/GuildScheduledEventStatus { // dev.kord.comm } sealed class dev.kord.common.entity/IntegrationExpireBehavior { // dev.kord.common.entity/IntegrationExpireBehavior|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/IntegrationExpireBehavior.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/IntegrationExpireBehavior.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/IntegrationExpireBehavior.value.|(){}[0] @@ -8043,8 +7967,6 @@ sealed class dev.kord.common.entity/IntegrationExpireBehavior { // dev.kord.comm } sealed class dev.kord.common.entity/InteractionResponseType { // dev.kord.common.entity/InteractionResponseType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/InteractionResponseType.|(kotlin.Int){}[0] - final val type // dev.kord.common.entity/InteractionResponseType.type|{}type[0] final fun (): kotlin/Int // dev.kord.common.entity/InteractionResponseType.type.|(){}[0] @@ -8078,8 +8000,6 @@ sealed class dev.kord.common.entity/InteractionResponseType { // dev.kord.common } sealed class dev.kord.common.entity/InteractionType { // dev.kord.common.entity/InteractionType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/InteractionType.|(kotlin.Int){}[0] - final val type // dev.kord.common.entity/InteractionType.type|{}type[0] final fun (): kotlin/Int // dev.kord.common.entity/InteractionType.type.|(){}[0] @@ -8109,8 +8029,6 @@ sealed class dev.kord.common.entity/InteractionType { // dev.kord.common.entity/ } sealed class dev.kord.common.entity/InviteTargetType { // dev.kord.common.entity/InviteTargetType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/InviteTargetType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/InviteTargetType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/InviteTargetType.value.|(){}[0] @@ -8134,8 +8052,6 @@ sealed class dev.kord.common.entity/InviteTargetType { // dev.kord.common.entity } sealed class dev.kord.common.entity/MFALevel { // dev.kord.common.entity/MFALevel|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/MFALevel.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/MFALevel.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/MFALevel.value.|(){}[0] @@ -8159,8 +8075,6 @@ sealed class dev.kord.common.entity/MFALevel { // dev.kord.common.entity/MFALeve } sealed class dev.kord.common.entity/MessageActivityType { // dev.kord.common.entity/MessageActivityType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/MessageActivityType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/MessageActivityType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/MessageActivityType.value.|(){}[0] @@ -8188,8 +8102,6 @@ sealed class dev.kord.common.entity/MessageActivityType { // dev.kord.common.ent } sealed class dev.kord.common.entity/MessageFlag { // dev.kord.common.entity/MessageFlag|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/MessageFlag.|(kotlin.Int){}[0] - final val code // dev.kord.common.entity/MessageFlag.code|{}code[0] final fun (): kotlin/Int // dev.kord.common.entity/MessageFlag.code.|(){}[0] final val shift // dev.kord.common.entity/MessageFlag.shift|{}shift[0] @@ -8234,8 +8146,6 @@ sealed class dev.kord.common.entity/MessageFlag { // dev.kord.common.entity/Mess } sealed class dev.kord.common.entity/MessageStickerType { // dev.kord.common.entity/MessageStickerType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/MessageStickerType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/MessageStickerType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/MessageStickerType.value.|(){}[0] @@ -8263,8 +8173,6 @@ sealed class dev.kord.common.entity/MessageStickerType { // dev.kord.common.enti } sealed class dev.kord.common.entity/MessageType { // dev.kord.common.entity/MessageType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/MessageType.|(kotlin.Int){}[0] - final val code // dev.kord.common.entity/MessageType.code|{}code[0] final fun (): kotlin/Int // dev.kord.common.entity/MessageType.code.|(){}[0] @@ -8346,8 +8254,6 @@ sealed class dev.kord.common.entity/MessageType { // dev.kord.common.entity/Mess } sealed class dev.kord.common.entity/NsfwLevel { // dev.kord.common.entity/NsfwLevel|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/NsfwLevel.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/NsfwLevel.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/NsfwLevel.value.|(){}[0] @@ -8375,8 +8281,6 @@ sealed class dev.kord.common.entity/NsfwLevel { // dev.kord.common.entity/NsfwLe } sealed class dev.kord.common.entity/OnboardingMode { // dev.kord.common.entity/OnboardingMode|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/OnboardingMode.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/OnboardingMode.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/OnboardingMode.value.|(){}[0] @@ -8400,8 +8304,6 @@ sealed class dev.kord.common.entity/OnboardingMode { // dev.kord.common.entity/O } sealed class dev.kord.common.entity/OnboardingPromptType { // dev.kord.common.entity/OnboardingPromptType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/OnboardingPromptType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/OnboardingPromptType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/OnboardingPromptType.value.|(){}[0] @@ -8425,8 +8327,6 @@ sealed class dev.kord.common.entity/OnboardingPromptType { // dev.kord.common.en } sealed class dev.kord.common.entity/Option { // dev.kord.common.entity/Option|null[0] - constructor () // dev.kord.common.entity/Option.|(){}[0] - abstract val name // dev.kord.common.entity/Option.name|{}name[0] abstract fun (): kotlin/String // dev.kord.common.entity/Option.name.|(){}[0] abstract val type // dev.kord.common.entity/Option.type|{}type[0] @@ -8438,8 +8338,6 @@ sealed class dev.kord.common.entity/Option { // dev.kord.common.entity/Option|nu } sealed class dev.kord.common.entity/OverwriteType { // dev.kord.common.entity/OverwriteType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/OverwriteType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/OverwriteType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/OverwriteType.value.|(){}[0] @@ -8463,8 +8361,6 @@ sealed class dev.kord.common.entity/OverwriteType { // dev.kord.common.entity/Ov } sealed class dev.kord.common.entity/Permission { // dev.kord.common.entity/Permission|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/Permission.|(kotlin.Int){}[0] - final val code // dev.kord.common.entity/Permission.code|{}code[0] final fun (): dev.kord.common/DiscordBitSet // dev.kord.common.entity/Permission.code.|(){}[0] final val shift // dev.kord.common.entity/Permission.shift|{}shift[0] @@ -8581,8 +8477,6 @@ sealed class dev.kord.common.entity/Permission { // dev.kord.common.entity/Permi } sealed class dev.kord.common.entity/PremiumTier { // dev.kord.common.entity/PremiumTier|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/PremiumTier.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/PremiumTier.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/PremiumTier.value.|(){}[0] @@ -8610,8 +8504,6 @@ sealed class dev.kord.common.entity/PremiumTier { // dev.kord.common.entity/Prem } sealed class dev.kord.common.entity/PresenceStatus { // dev.kord.common.entity/PresenceStatus|null[0] - constructor (kotlin/String) // dev.kord.common.entity/PresenceStatus.|(kotlin.String){}[0] - final val value // dev.kord.common.entity/PresenceStatus.value|{}value[0] final fun (): kotlin/String // dev.kord.common.entity/PresenceStatus.value.|(){}[0] @@ -8641,8 +8533,6 @@ sealed class dev.kord.common.entity/PresenceStatus { // dev.kord.common.entity/P } sealed class dev.kord.common.entity/RoleFlag { // dev.kord.common.entity/RoleFlag|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/RoleFlag.|(kotlin.Int){}[0] - final val shift // dev.kord.common.entity/RoleFlag.shift|{}shift[0] final fun (): kotlin/Int // dev.kord.common.entity/RoleFlag.shift.|(){}[0] final val value // dev.kord.common.entity/RoleFlag.value|{}value[0] @@ -8667,8 +8557,6 @@ sealed class dev.kord.common.entity/RoleFlag { // dev.kord.common.entity/RoleFla } sealed class dev.kord.common.entity/ScheduledEntityType { // dev.kord.common.entity/ScheduledEntityType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/ScheduledEntityType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/ScheduledEntityType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/ScheduledEntityType.value.|(){}[0] @@ -8694,8 +8582,6 @@ sealed class dev.kord.common.entity/ScheduledEntityType { // dev.kord.common.ent } sealed class dev.kord.common.entity/SelectDefaultValueType { // dev.kord.common.entity/SelectDefaultValueType|null[0] - constructor (kotlin/String) // dev.kord.common.entity/SelectDefaultValueType.|(kotlin.String){}[0] - final val value // dev.kord.common.entity/SelectDefaultValueType.value|{}value[0] final fun (): kotlin/String // dev.kord.common.entity/SelectDefaultValueType.value.|(){}[0] @@ -8721,8 +8607,6 @@ sealed class dev.kord.common.entity/SelectDefaultValueType { // dev.kord.common. } sealed class dev.kord.common.entity/SortOrderType { // dev.kord.common.entity/SortOrderType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/SortOrderType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/SortOrderType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/SortOrderType.value.|(){}[0] @@ -8746,8 +8630,6 @@ sealed class dev.kord.common.entity/SortOrderType { // dev.kord.common.entity/So } sealed class dev.kord.common.entity/StageInstancePrivacyLevel { // dev.kord.common.entity/StageInstancePrivacyLevel|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/StageInstancePrivacyLevel.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/StageInstancePrivacyLevel.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/StageInstancePrivacyLevel.value.|(){}[0] @@ -8771,8 +8653,6 @@ sealed class dev.kord.common.entity/StageInstancePrivacyLevel { // dev.kord.comm } sealed class dev.kord.common.entity/SystemChannelFlag { // dev.kord.common.entity/SystemChannelFlag|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/SystemChannelFlag.|(kotlin.Int){}[0] - final val code // dev.kord.common.entity/SystemChannelFlag.code|{}code[0] final fun (): kotlin/Int // dev.kord.common.entity/SystemChannelFlag.code.|(){}[0] final val shift // dev.kord.common.entity/SystemChannelFlag.shift|{}shift[0] @@ -8807,8 +8687,6 @@ sealed class dev.kord.common.entity/SystemChannelFlag { // dev.kord.common.entit } sealed class dev.kord.common.entity/TeamMemberRole { // dev.kord.common.entity/TeamMemberRole|null[0] - constructor (kotlin/String) // dev.kord.common.entity/TeamMemberRole.|(kotlin.String){}[0] - final val value // dev.kord.common.entity/TeamMemberRole.value|{}value[0] final fun (): kotlin/String // dev.kord.common.entity/TeamMemberRole.value.|(){}[0] @@ -8834,8 +8712,6 @@ sealed class dev.kord.common.entity/TeamMemberRole { // dev.kord.common.entity/T } sealed class dev.kord.common.entity/TeamMembershipState { // dev.kord.common.entity/TeamMembershipState|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/TeamMembershipState.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/TeamMembershipState.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/TeamMembershipState.value.|(){}[0] @@ -8859,8 +8735,6 @@ sealed class dev.kord.common.entity/TeamMembershipState { // dev.kord.common.ent } sealed class dev.kord.common.entity/TextInputStyle { // dev.kord.common.entity/TextInputStyle|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/TextInputStyle.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/TextInputStyle.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/TextInputStyle.value.|(){}[0] @@ -8884,8 +8758,6 @@ sealed class dev.kord.common.entity/TextInputStyle { // dev.kord.common.entity/T } sealed class dev.kord.common.entity/UserFlag { // dev.kord.common.entity/UserFlag|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/UserFlag.|(kotlin.Int){}[0] - final val code // dev.kord.common.entity/UserFlag.code|{}code[0] final fun (): kotlin/Int // dev.kord.common.entity/UserFlag.code.|(){}[0] final val shift // dev.kord.common.entity/UserFlag.shift|{}shift[0] @@ -8938,8 +8810,6 @@ sealed class dev.kord.common.entity/UserFlag { // dev.kord.common.entity/UserFla } sealed class dev.kord.common.entity/UserPremium { // dev.kord.common.entity/UserPremium|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/UserPremium.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/UserPremium.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/UserPremium.value.|(){}[0] @@ -8967,8 +8837,6 @@ sealed class dev.kord.common.entity/UserPremium { // dev.kord.common.entity/User } sealed class dev.kord.common.entity/VerificationLevel { // dev.kord.common.entity/VerificationLevel|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/VerificationLevel.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/VerificationLevel.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/VerificationLevel.value.|(){}[0] @@ -8998,8 +8866,6 @@ sealed class dev.kord.common.entity/VerificationLevel { // dev.kord.common.entit } sealed class dev.kord.common.entity/VideoQualityMode { // dev.kord.common.entity/VideoQualityMode|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/VideoQualityMode.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/VideoQualityMode.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/VideoQualityMode.value.|(){}[0] @@ -9023,8 +8889,6 @@ sealed class dev.kord.common.entity/VideoQualityMode { // dev.kord.common.entity } sealed class dev.kord.common.entity/WebhookType { // dev.kord.common.entity/WebhookType|null[0] - constructor (kotlin/Int) // dev.kord.common.entity/WebhookType.|(kotlin.Int){}[0] - final val value // dev.kord.common.entity/WebhookType.value|{}value[0] final fun (): kotlin/Int // dev.kord.common.entity/WebhookType.value.|(){}[0] @@ -9050,8 +8914,6 @@ sealed class dev.kord.common.entity/WebhookType { // dev.kord.common.entity/Webh } sealed class dev.kord.common.serialization/DurationAsLongSerializer : kotlinx.serialization/KSerializer { // dev.kord.common.serialization/DurationAsLongSerializer|null[0] - constructor (kotlin.time/DurationUnit, kotlin/String) // dev.kord.common.serialization/DurationAsLongSerializer.|(kotlin.time.DurationUnit;kotlin.String){}[0] - final val descriptor // dev.kord.common.serialization/DurationAsLongSerializer.descriptor|{}descriptor[0] final fun (): kotlinx.serialization.descriptors/SerialDescriptor // dev.kord.common.serialization/DurationAsLongSerializer.descriptor.|(){}[0] final val unit // dev.kord.common.serialization/DurationAsLongSerializer.unit|{}unit[0] diff --git a/common/build.gradle.kts b/common/build.gradle.kts index c1e33f7ef30..cf27f08dad3 100644 --- a/common/build.gradle.kts +++ b/common/build.gradle.kts @@ -35,8 +35,9 @@ kotlin { dependencies { api(libs.ktor.client.js) - // workaround for https://youtrack.jetbrains.com/issue/KT-43500 - // (intended to be compileOnly in commonMain only) + // workaround for https://youtrack.jetbrains.com/issue/KT-43500 / + // https://youtrack.jetbrains.com/issue/KT-64109#focus=Comments-27-10064206.0-0 / + // https://youtrack.jetbrains.com/issue/KT-61096 (intended to be compileOnly in commonMain only) implementation(projects.kspAnnotations) } } diff --git a/common/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/common/entity/Permission.kt b/common/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/common/entity/Permission.kt index 57ec37f77d5..6f76d846002 100644 --- a/common/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/common/entity/Permission.kt +++ b/common/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/common/entity/Permission.kt @@ -549,7 +549,7 @@ public class Permissions internal constructor( @Deprecated( level = DeprecationLevel.HIDDEN, - message = "Binary compatibility, keep for some releases.", + message = "Kept for binary compatibility, this declaration will be removed in 0.17.0.", ) public inline fun copy0(builder: Builder.() -> Unit): Permissions { contract { callsInPlace(builder, EXACTLY_ONCE) } @@ -620,7 +620,8 @@ public class Permissions internal constructor( @Suppress(names = arrayOf("DEPRECATION_ERROR")) @Deprecated( level = DeprecationLevel.ERROR, - message = "Renamed to 'Companion'.", + message = + "Renamed to 'Companion'. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in 0.17.0.", replaceWith = ReplaceWith(expression = "Permissions.Companion", imports = arrayOf("dev.kord.common.entity.Permissions")), ) @@ -630,7 +631,8 @@ public class Permissions internal constructor( @Deprecated( level = DeprecationLevel.ERROR, - message = "Renamed to 'Companion'.", + message = + "Renamed to 'Companion'. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in 0.17.0.", replaceWith = ReplaceWith(expression = "Permissions.Companion", imports = arrayOf("dev.kord.common.entity.Permissions")), ) @@ -650,7 +652,7 @@ public inline fun Permissions(builder: Permissions.Builder.() -> Unit = {}): Per @Suppress(names = arrayOf("FunctionName")) @Deprecated( level = DeprecationLevel.HIDDEN, - message = "Binary compatibility, keep for some releases.", + message = "Kept for binary compatibility, this declaration will be removed in 0.17.0.", ) public inline fun Permissions0(builder: Permissions.Builder.() -> Unit = {}): Permissions { contract { callsInPlace(builder, EXACTLY_ONCE) } diff --git a/common/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/common/entity/SystemChannelFlag.kt b/common/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/common/entity/SystemChannelFlag.kt index 27f60625c5a..abac9875485 100644 --- a/common/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/common/entity/SystemChannelFlag.kt +++ b/common/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/common/entity/SystemChannelFlag.kt @@ -330,7 +330,8 @@ public class SystemChannelFlags internal constructor( @Suppress(names = arrayOf("DEPRECATION_ERROR")) @Deprecated( level = DeprecationLevel.ERROR, - message = "Renamed to 'Companion'.", + message = + "Renamed to 'Companion'. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in 0.17.0.", replaceWith = ReplaceWith(expression = "SystemChannelFlags.Companion", imports = arrayOf("dev.kord.common.entity.SystemChannelFlags")), ) @@ -340,7 +341,8 @@ public class SystemChannelFlags internal constructor( @Deprecated( level = DeprecationLevel.ERROR, - message = "Renamed to 'Companion'.", + message = + "Renamed to 'Companion'. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in 0.17.0.", replaceWith = ReplaceWith(expression = "SystemChannelFlags.Companion", imports = arrayOf("dev.kord.common.entity.SystemChannelFlags")), ) diff --git a/common/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/common/entity/UserFlag.kt b/common/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/common/entity/UserFlag.kt index af3585bd8bc..0ce65c36e3d 100644 --- a/common/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/common/entity/UserFlag.kt +++ b/common/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/common/entity/UserFlag.kt @@ -315,7 +315,7 @@ public class UserFlags internal constructor( @Deprecated( level = DeprecationLevel.HIDDEN, - message = "Binary compatibility, keep for some releases.", + message = "Kept for binary compatibility, this declaration will be removed in 0.17.0.", ) public inline fun copy0(builder: Builder.() -> Unit): UserFlags { contract { callsInPlace(builder, EXACTLY_ONCE) } diff --git a/common/src/commonMain/kotlin/DiscordBitSet.kt b/common/src/commonMain/kotlin/DiscordBitSet.kt index 8b98a3b0668..45939272dc5 100644 --- a/common/src/commonMain/kotlin/DiscordBitSet.kt +++ b/common/src/commonMain/kotlin/DiscordBitSet.kt @@ -152,7 +152,7 @@ public fun DiscordBitSet(value: String): DiscordBitSet { @Deprecated( - "Replaced by 'DiscordBitSet.serializer()'.", + "Replaced by 'DiscordBitSet.serializer()'. This declaration will be removed in 0.16.0.", ReplaceWith("DiscordBitSet.serializer()", imports = ["dev.kord.common.DiscordBitSet"]), DeprecationLevel.HIDDEN, ) diff --git a/common/src/commonMain/kotlin/Locale.kt b/common/src/commonMain/kotlin/Locale.kt index 0ed29906bf0..f512ce4edb8 100644 --- a/common/src/commonMain/kotlin/Locale.kt +++ b/common/src/commonMain/kotlin/Locale.kt @@ -237,7 +237,7 @@ public data class Locale(val language: String, val country: String? = null) { } @Deprecated( - "Replaced by 'Locale.serializer()'.", + "Replaced by 'Locale.serializer()'. This declaration will be removed in 0.16.0.", ReplaceWith("Locale.serializer()", imports = ["dev.kord.common.Locale"]), DeprecationLevel.HIDDEN, ) diff --git a/common/src/commonMain/kotlin/entity/DiscordChannel.kt b/common/src/commonMain/kotlin/entity/DiscordChannel.kt index d6b247f33a8..fb6881ff398 100644 --- a/common/src/commonMain/kotlin/entity/DiscordChannel.kt +++ b/common/src/commonMain/kotlin/entity/DiscordChannel.kt @@ -233,7 +233,7 @@ public sealed class ArchiveDuration( @Suppress("UNUSED_PARAMETER") unused: Nothing?, ) : ArchiveDuration(duration) { @Deprecated( - "Replaced by 'ArchiveDuration.from()'.", + "Replaced by 'ArchiveDuration.from()'. This declaration will be removed in 0.16.0.", ReplaceWith("ArchiveDuration.from(duration)", imports = ["dev.kord.common.entity.ArchiveDuration"]), DeprecationLevel.HIDDEN, ) diff --git a/common/src/commonMain/kotlin/entity/DiscordShard.kt b/common/src/commonMain/kotlin/entity/DiscordShard.kt index b7e2b0d9d2d..8fa7bdc16c0 100644 --- a/common/src/commonMain/kotlin/entity/DiscordShard.kt +++ b/common/src/commonMain/kotlin/entity/DiscordShard.kt @@ -35,7 +35,8 @@ public data class DiscordShard(val index: Int, val count: Int) { public companion object { @Suppress("DEPRECATION_ERROR") @Deprecated( - "Renamed to 'Companion'.", + "Renamed to 'Companion'. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration " + + "will be removed in 0.17.0.", ReplaceWith("DiscordShard.Companion", imports = ["dev.kord.common.entity.DiscordShard"]), DeprecationLevel.ERROR, ) @@ -44,7 +45,8 @@ public data class DiscordShard(val index: Int, val count: Int) { } @Deprecated( - "Renamed to 'Companion'.", + "Renamed to 'Companion'. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will " + + "be removed in 0.17.0.", ReplaceWith("DiscordShard.Companion", imports = ["dev.kord.common.entity.DiscordShard"]), DeprecationLevel.ERROR, ) diff --git a/common/src/commonMain/kotlin/entity/Permissions.kt b/common/src/commonMain/kotlin/entity/Permissions.kt index 65e7af96c9a..8a6e3cefc2f 100644 --- a/common/src/commonMain/kotlin/entity/Permissions.kt +++ b/common/src/commonMain/kotlin/entity/Permissions.kt @@ -112,7 +112,8 @@ public val Permissions.Companion.ALL: Permissions get() = ALL_PERMISSIONS @Suppress("UnusedReceiverParameter", "DEPRECATION_ERROR") @Deprecated( - "'Permissions.NewCompanion' was renamed to 'Permissions.Companion'. Use 'Permissions.Companion.ALL' instead.", + "'Permissions.NewCompanion' was renamed to 'Permissions.Companion'. Use 'Permissions.Companion.ALL' instead. The " + + "deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in 0.17.0.", ReplaceWith("Permissions.ALL", imports = ["dev.kord.common.entity.Permissions", "dev.kord.common.entity.ALL"]), DeprecationLevel.ERROR, ) diff --git a/common/src/commonMain/kotlin/entity/Snowflake.kt b/common/src/commonMain/kotlin/entity/Snowflake.kt index 07a1f2a06ab..6a63097fcc4 100644 --- a/common/src/commonMain/kotlin/entity/Snowflake.kt +++ b/common/src/commonMain/kotlin/entity/Snowflake.kt @@ -138,7 +138,7 @@ public class Snowflake : Comparable { * * The comparison is based first on the value of the [timestamp], then on the value of the [workerId], then on the * value of the [processId] and finally on the value of the [increment]. It is *consistent with equals*, as defined - * by [Comparable](https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html). + * by [Comparable](https://docs.oracle.com/en/java/javase/22/docs/api/java.base/java/lang/Comparable.html). */ override fun compareTo(other: Snowflake): Int { // the layout of Snowflake values from MSB to LSB is timestamp, workerId, processId, increment, @@ -175,12 +175,13 @@ public class Snowflake : Comparable { * [processId] and [increment] are not taken into account. * * Note: this comparator imposes an ordering that is *inconsistent with equals*, as defined by - * [Comparator](https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html). It therefore shouldn't be - * used to order a [SortedSet](https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html) or - * [SortedMap](https://docs.oracle.com/javase/8/docs/api/java/util/SortedMap.html). This is because - * `TimestampComparator` only compares the first 42 bits of the ULong [value] (comparing the timestamp), whereas - * [equals][Snowflake.equals] compares all the bits of the [value]. `TimestampComparator` can return `0` even if - * [equals][Snowflake.equals] returns `false`, but [equals][Snowflake.equals] only returns `true` if + * [Comparator](https://docs.oracle.com/en/java/javase/22/docs/api/java.base/java/util/Comparator.html). It + * therefore shouldn't be used to order a + * [SortedSet](https://docs.oracle.com/en/java/javase/22/docs/api/java.base/java/util/SortedSet.html) or + * [SortedMap](https://docs.oracle.com/en/java/javase/22/docs/api/java.base/java/util/SortedMap.html). This is + * because `TimestampComparator` only compares the first 42 bits of the ULong [value] (comparing the timestamp), + * whereas [equals][Snowflake.equals] compares all the bits of the [value]. `TimestampComparator` can return `0` + * even if [equals][Snowflake.equals] returns `false`, but [equals][Snowflake.equals] only returns `true` if * `TimestampComparator` returns `0`. */ public val TimestampComparator: Comparator = Comparator { s1, s2 -> diff --git a/core/README.md b/core/README.md index 01d53ad43a6..591693de64d 100644 --- a/core/README.md +++ b/core/README.md @@ -1,8 +1,8 @@ # Kord Core -Kord `core` is an implementation of the discord api build on top of the [gateway](https://gitlab.com/kordlib/kord/tree/master/gateway), -[rest](https://gitlab.com/kordlib/kord/tree/master/rest) and [cache](https://gitlab.com/kordlib/cache) modules. It features a high level representation of Discord's entities and their behaviour -in a non-blocking, coroutine focused, event-driven design. +Kord `core` is an implementation of the discord api build on top of the [gateway](../gateway), [rest](../rest) and +[cache](https://github.com/kordlib/cache) modules. It features a high level representation of Discord's entities and +their behavior in a non-blocking, coroutine focused, event-driven design. ## Example usage @@ -31,45 +31,22 @@ suspend fun main() { } } ``` -## Installation - -Replace `{version}` with the latest version number on maven central. - -For Snapshots replace `{version}` with `{branch}-SNAPSHOT` -e.g: `0.7.x-SNAPSHOT` +## Installation -[![Download](https://img.shields.io/nexus/r/dev.kord/kord-core?color=fb5502&label=Kord&logoColor=05c1fd&server=https%3A%2F%2Frepo1.maven.org%2Fmaven2%2F&style=for-the-badge) ](https://search.maven.org/search?q=g:dev.kord) -[![Snapshot](https://img.shields.io/nexus/s/dev.kord/kord-core?label=SNAPSHOT&server=https%3A%2F%2Foss.sonatype.org%2F&style=for-the-badge)](https://oss.sonatype.org/#nexus-search;quick~dev.kord) -### Gradle (groovy) +See the root [README](../README.md#installation) for more information. -```groovy -repositories { - mavenCentral() - // Kord Snapshots Repository (Optional): - maven("https://oss.sonatype.org/content/repositories/snapshots") -} -``` +### Gradle (Kotlin) -```groovy +```kotlin dependencies { implementation("dev.kord:kord-core:{version}") } ``` -### Gradle (kotlin) +### Gradle (Groovy) -```kotlin -repositories { - mavenCentral() - // Kord Snapshots Repository (Optional): - maven("https://oss.sonatype.org/content/repositories/snapshots") -} -``` - ---- - -```kotlin +```groovy dependencies { implementation("dev.kord:kord-core:{version}") } @@ -77,26 +54,7 @@ dependencies { ### Maven -##### Kord Snapshots Repository (Optional): - ```xml - - - snapshots-repo - https://oss.sonatype.org/content/repositories/snapshots - - false - - - true - - -``` - ---- - -```xml - dev.kord kord-core-jvm diff --git a/core/api/core.klib.api b/core/api/core.klib.api index 4d94be2b45b..bc300246bd0 100644 --- a/core/api/core.klib.api +++ b/core/api/core.klib.api @@ -7089,8 +7089,6 @@ final class dev.kord.core.entity/ClientStatus { // dev.kord.core.entity/ClientSt final fun toString(): kotlin/String // dev.kord.core.entity/ClientStatus.toString|toString(){}[0] sealed class Client { // dev.kord.core.entity/ClientStatus.Client|null[0] - constructor (dev.kord.common.entity/PresenceStatus) // dev.kord.core.entity/ClientStatus.Client.|(dev.kord.common.entity.PresenceStatus){}[0] - final val status // dev.kord.core.entity/ClientStatus.Client.status|{}status[0] final fun (): dev.kord.common.entity/PresenceStatus // dev.kord.core.entity/ClientStatus.Client.status.|(){}[0] @@ -11573,9 +11571,6 @@ open class dev.kord.core.entity/User : dev.kord.core.behavior/UserBehavior { // } sealed class dev.kord.core.cache.data/ComponentData { // dev.kord.core.cache.data/ComponentData|null[0] - constructor () // dev.kord.core.cache.data/ComponentData.|(){}[0] - constructor (kotlin/Int, kotlinx.serialization.internal/SerializationConstructorMarker?) // dev.kord.core.cache.data/ComponentData.|(kotlin.Int;kotlinx.serialization.internal.SerializationConstructorMarker?){}[0] - abstract val channelTypes // dev.kord.core.cache.data/ComponentData.channelTypes|{}channelTypes[0] abstract fun (): dev.kord.common.entity.optional/Optional> // dev.kord.core.cache.data/ComponentData.channelTypes.|(){}[0] abstract val components // dev.kord.core.cache.data/ComponentData.components|{}components[0] @@ -11619,8 +11614,6 @@ sealed class dev.kord.core.cache.data/ComponentData { // dev.kord.core.cache.dat } sealed class dev.kord.core.entity.automoderation/AutoModerationAction : dev.kord.core/KordObject { // dev.kord.core.entity.automoderation/AutoModerationAction|null[0] - constructor (dev.kord.core.cache.data/AutoModerationActionData, dev.kord.core/Kord, dev.kord.common.entity/AutoModerationActionType?) // dev.kord.core.entity.automoderation/AutoModerationAction.|(dev.kord.core.cache.data.AutoModerationActionData;dev.kord.core.Kord;dev.kord.common.entity.AutoModerationActionType?){}[0] - abstract val type // dev.kord.core.entity.automoderation/AutoModerationAction.type|{}type[0] abstract fun (): dev.kord.common.entity/AutoModerationActionType // dev.kord.core.entity.automoderation/AutoModerationAction.type.|(){}[0] final val data // dev.kord.core.entity.automoderation/AutoModerationAction.data|{}data[0] @@ -11632,8 +11625,6 @@ sealed class dev.kord.core.entity.automoderation/AutoModerationAction : dev.kord } sealed class dev.kord.core.entity.automoderation/AutoModerationRule : dev.kord.core.behavior.automoderation/TypedAutoModerationRuleBehavior { // dev.kord.core.entity.automoderation/AutoModerationRule|null[0] - constructor (dev.kord.core.cache.data/AutoModerationRuleData, dev.kord.core/Kord, dev.kord.core.supplier/EntitySupplier, dev.kord.common.entity/AutoModerationRuleTriggerType?) // dev.kord.core.entity.automoderation/AutoModerationRule.|(dev.kord.core.cache.data.AutoModerationRuleData;dev.kord.core.Kord;dev.kord.core.supplier.EntitySupplier;dev.kord.common.entity.AutoModerationRuleTriggerType?){}[0] - final val actions // dev.kord.core.entity.automoderation/AutoModerationRule.actions|{}actions[0] final fun (): kotlin.collections/List // dev.kord.core.entity.automoderation/AutoModerationRule.actions.|(){}[0] final val creator // dev.kord.core.entity.automoderation/AutoModerationRule.creator|{}creator[0] @@ -11673,8 +11664,6 @@ sealed class dev.kord.core.entity.automoderation/AutoModerationRule : dev.kord.c } sealed class dev.kord.core.entity.component/SelectMenuComponent : dev.kord.core.entity.component/Component { // dev.kord.core.entity.component/SelectMenuComponent|null[0] - constructor (dev.kord.core.cache.data/ComponentData) // dev.kord.core.entity.component/SelectMenuComponent.|(dev.kord.core.cache.data.ComponentData){}[0] - final val customId // dev.kord.core.entity.component/SelectMenuComponent.customId|{}customId[0] final fun (): kotlin/String // dev.kord.core.entity.component/SelectMenuComponent.customId.|(){}[0] final val disabled // dev.kord.core.entity.component/SelectMenuComponent.disabled|{}disabled[0] @@ -11694,8 +11683,6 @@ sealed class dev.kord.core.entity.component/SelectMenuComponent : dev.kord.core. } sealed class dev.kord.core.entity.interaction.followup/FollowupMessage : dev.kord.core.behavior.interaction.followup/FollowupMessageBehavior { // dev.kord.core.entity.interaction.followup/FollowupMessage|null[0] - constructor (dev.kord.core.entity/Message) // dev.kord.core.entity.interaction.followup/FollowupMessage.|(dev.kord.core.entity.Message){}[0] - final val message // dev.kord.core.entity.interaction.followup/FollowupMessage.message|{}message[0] final fun (): dev.kord.core.entity/Message // dev.kord.core.entity.interaction.followup/FollowupMessage.message.|(){}[0] open val channelId // dev.kord.core.entity.interaction.followup/FollowupMessage.channelId|{}channelId[0] @@ -11707,8 +11694,6 @@ sealed class dev.kord.core.entity.interaction.followup/FollowupMessage : dev.kor } sealed class dev.kord.core.entity.interaction.response/MessageInteractionResponse : dev.kord.core.behavior.interaction.response/MessageInteractionResponseBehavior { // dev.kord.core.entity.interaction.response/MessageInteractionResponse|null[0] - constructor (dev.kord.core.entity/Message) // dev.kord.core.entity.interaction.response/MessageInteractionResponse.|(dev.kord.core.entity.Message){}[0] - final val message // dev.kord.core.entity.interaction.response/MessageInteractionResponse.message|{}message[0] final fun (): dev.kord.core.entity/Message // dev.kord.core.entity.interaction.response/MessageInteractionResponse.message.|(){}[0] @@ -11716,8 +11701,6 @@ sealed class dev.kord.core.entity.interaction.response/MessageInteractionRespons } sealed class dev.kord.core.entity/BaseApplication : dev.kord.core.entity/KordEntity, dev.kord.core.entity/Strategizable { // dev.kord.core.entity/BaseApplication|null[0] - constructor (dev.kord.core/Kord, dev.kord.core.supplier/EntitySupplier = ...) // dev.kord.core.entity/BaseApplication.|(dev.kord.core.Kord;dev.kord.core.supplier.EntitySupplier){}[0] - abstract val data // dev.kord.core.entity/BaseApplication.data|{}data[0] abstract fun (): dev.kord.core.cache.data/BaseApplicationData // dev.kord.core.entity/BaseApplication.data.|(){}[0] final val coverImage // dev.kord.core.entity/BaseApplication.coverImage|{}coverImage[0] @@ -11777,8 +11760,6 @@ sealed class dev.kord.core.entity/BaseApplication : dev.kord.core.entity/KordEnt } sealed class dev.kord.core.entity/ReactionEmoji { // dev.kord.core.entity/ReactionEmoji|null[0] - constructor () // dev.kord.core.entity/ReactionEmoji.|(){}[0] - abstract val mention // dev.kord.core.entity/ReactionEmoji.mention|{}mention[0] abstract fun (): kotlin/String // dev.kord.core.entity/ReactionEmoji.mention.|(){}[0] abstract val name // dev.kord.core.entity/ReactionEmoji.name|{}name[0] @@ -11833,8 +11814,6 @@ sealed class dev.kord.core.entity/ReactionEmoji { // dev.kord.core.entity/Reacti } sealed class dev.kord.core.event.gateway/DisconnectEvent : dev.kord.core.event.gateway/GatewayEvent { // dev.kord.core.event.gateway/DisconnectEvent|null[0] - constructor () // dev.kord.core.event.gateway/DisconnectEvent.|(){}[0] - final class DetachEvent : dev.kord.core.event.gateway/DisconnectEvent { // dev.kord.core.event.gateway/DisconnectEvent.DetachEvent|null[0] constructor (dev.kord.core/Kord, kotlin/Int, kotlin/Any?) // dev.kord.core.event.gateway/DisconnectEvent.DetachEvent.|(dev.kord.core.Kord;kotlin.Int;kotlin.Any?){}[0] @@ -11944,9 +11923,7 @@ sealed class dev.kord.core.event.gateway/DisconnectEvent : dev.kord.core.event.g } } -sealed class dev.kord.core.event.gateway/GatewayEvent : dev.kord.core.event/Event { // dev.kord.core.event.gateway/GatewayEvent|null[0] - constructor () // dev.kord.core.event.gateway/GatewayEvent.|(){}[0] -} +sealed class dev.kord.core.event.gateway/GatewayEvent : dev.kord.core.event/Event // dev.kord.core.event.gateway/GatewayEvent|null[0] final object dev.kord.core.cache.data/NotSerializable : kotlinx.serialization/KSerializer { // dev.kord.core.cache.data/NotSerializable|null[0] final val descriptor // dev.kord.core.cache.data/NotSerializable.descriptor|{}descriptor[0] diff --git a/core/src/commonMain/kotlin/event/interaction/ApplicationCommandCreate.kt b/core/src/commonMain/kotlin/event/interaction/ApplicationCommandCreate.kt index 60c296bb035..e44f876c6be 100644 --- a/core/src/commonMain/kotlin/event/interaction/ApplicationCommandCreate.kt +++ b/core/src/commonMain/kotlin/event/interaction/ApplicationCommandCreate.kt @@ -7,7 +7,8 @@ import dev.kord.core.event.Event @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public sealed interface ApplicationCommandCreateEvent : Event { @@ -17,7 +18,8 @@ public sealed interface ApplicationCommandCreateEvent : Event { @Suppress("DEPRECATION_ERROR") @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public class ChatInputCommandCreateEvent( @@ -31,7 +33,8 @@ public class ChatInputCommandCreateEvent( @Suppress("DEPRECATION_ERROR") @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public class UserCommandCreateEvent( @@ -45,7 +48,8 @@ public class UserCommandCreateEvent( @Suppress("DEPRECATION_ERROR") @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public class MessageCommandCreateEvent( @@ -59,7 +63,8 @@ public class MessageCommandCreateEvent( @Suppress("DEPRECATION_ERROR") @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public class UnknownApplicationCommandCreateEvent( diff --git a/core/src/commonMain/kotlin/event/interaction/ApplicationCommandDelete.kt b/core/src/commonMain/kotlin/event/interaction/ApplicationCommandDelete.kt index ba2f859353e..07da0c05680 100644 --- a/core/src/commonMain/kotlin/event/interaction/ApplicationCommandDelete.kt +++ b/core/src/commonMain/kotlin/event/interaction/ApplicationCommandDelete.kt @@ -7,7 +7,8 @@ import dev.kord.core.event.Event @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public sealed interface ApplicationCommandDeleteEvent : Event { @@ -17,7 +18,8 @@ public sealed interface ApplicationCommandDeleteEvent : Event { @Suppress("DEPRECATION_ERROR") @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public class ChatInputCommandDeleteEvent( @@ -31,7 +33,8 @@ public class ChatInputCommandDeleteEvent( @Suppress("DEPRECATION_ERROR") @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public class UserCommandDeleteEvent( @@ -45,7 +48,8 @@ public class UserCommandDeleteEvent( @Suppress("DEPRECATION_ERROR") @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public class MessageCommandDeleteEvent( @@ -59,7 +63,8 @@ public class MessageCommandDeleteEvent( @Suppress("DEPRECATION_ERROR") @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public class UnknownApplicationCommandDeleteEvent( diff --git a/core/src/commonMain/kotlin/event/interaction/ApplicationCommandUpdate.kt b/core/src/commonMain/kotlin/event/interaction/ApplicationCommandUpdate.kt index daf181e4a5a..8bd152c4a7d 100644 --- a/core/src/commonMain/kotlin/event/interaction/ApplicationCommandUpdate.kt +++ b/core/src/commonMain/kotlin/event/interaction/ApplicationCommandUpdate.kt @@ -7,7 +7,8 @@ import dev.kord.core.event.Event @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public sealed interface ApplicationCommandUpdateEvent : Event { @@ -17,7 +18,8 @@ public sealed interface ApplicationCommandUpdateEvent : Event { @Suppress("DEPRECATION_ERROR") @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public class ChatInputCommandUpdateEvent( @@ -31,7 +33,8 @@ public class ChatInputCommandUpdateEvent( @Suppress("DEPRECATION_ERROR") @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public class UserCommandUpdateEvent( @@ -45,7 +48,8 @@ public class UserCommandUpdateEvent( @Suppress("DEPRECATION_ERROR") @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public class MessageCommandUpdateEvent( @@ -58,7 +62,8 @@ public class MessageCommandUpdateEvent( @Suppress("DEPRECATION_ERROR") @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public class UnknownApplicationCommandUpdateEvent( diff --git a/core/src/commonMain/kotlin/supplier/StoreEntitySupplier.kt b/core/src/commonMain/kotlin/supplier/StoreEntitySupplier.kt index 0c53ee6adad..3404a634c86 100644 --- a/core/src/commonMain/kotlin/supplier/StoreEntitySupplier.kt +++ b/core/src/commonMain/kotlin/supplier/StoreEntitySupplier.kt @@ -60,9 +60,11 @@ public class StoreEntitySupplier( } - override suspend fun getMemberOrNull(guildId: Snowflake, userId: Snowflake): Member? { - return storeAndReturn(supplier.getMemberOrNull(guildId, userId)) { it.data } - } + override suspend fun getMemberOrNull(guildId: Snowflake, userId: Snowflake): Member? = + supplier.getMemberOrNull(guildId, userId)?.also { member -> + cache.put(member.data) + cache.put(member.memberData) + } override suspend fun getMessageOrNull(channelId: Snowflake, messageId: Snowflake): Message? { return storeAndReturn(supplier.getMessageOrNull(channelId, messageId)) { it.data } @@ -104,9 +106,11 @@ public class StoreEntitySupplier( return storeOnEach(supplier.getGuildBans(guildId, limit)) { it.data } } - override fun getGuildMembers(guildId: Snowflake, limit: Int?): Flow { - return storeOnEach(supplier.getGuildMembers(guildId, limit)) { it.data } - } + override fun getGuildMembers(guildId: Snowflake, limit: Int?): Flow = + supplier.getGuildMembers(guildId, limit).onEach { member -> + cache.put(member.data) + cache.put(member.memberData) + } override fun getGuildVoiceRegions(guildId: Snowflake): Flow { return storeOnEach(supplier.getGuildVoiceRegions(guildId)) { it.data } diff --git a/gateway/README.md b/gateway/README.md index af7c3cee1de..4a2fe908717 100644 --- a/gateway/README.md +++ b/gateway/README.md @@ -1,6 +1,6 @@ # Kord gateway -A low-level implementation of discord's [gateway](https://discordapp.com/developers/docs/topics/gateway). +A low-level implementation of discord's [gateway](https://discord.com/developers/docs/topics/gateway). ## Example usage @@ -11,7 +11,6 @@ suspend fun main(args: Array) { val gateway = DefaultGateway { // optional builder for custom configuration client = HttpClient { install(WebSockets) - install(JsonFeature) } reconnectRetry = LinearRetry(2.seconds, 20.seconds, 10) sendRateLimiter = IntervalRateLimiter(120, 60.seconds) @@ -39,46 +38,22 @@ suspend fun main(args: Array) { } } ``` -## Installation - -Replace `{version}` with the latest version number on maven central. - -For Snapshots replace `{version}` with `{branch}-SNAPSHOT` -e.g: `0.7.x-SNAPSHOT` - -[![Download](https://img.shields.io/nexus/r/dev.kord/kord-gateway?color=fb5502&label=Kord&logoColor=05c1fd&server=https%3A%2F%2Frepo1.maven.org%2Fmaven2%2F&style=for-the-badge) ](https://search.maven.org/search?q=g:dev.kord) -[![Snapshot](https://img.shields.io/nexus/s/dev.kord/kord-gateway?label=SNAPSHOT&server=https%3A%2F%2Foss.sonatype.org%2F&style=for-the-badge)](https://oss.sonatype.org/#nexus-search;quick~dev.kord) +## Installation -### Gradle (groovy) +See the root [README](../README.md#installation) for more information. -```groovy -repositories { - mavenCentral() - // Kord Snapshots Repository (Optional): - maven("https://oss.sonatype.org/content/repositories/snapshots") -} -``` +### Gradle (Kotlin) -```groovy +```kotlin dependencies { implementation("dev.kord:kord-gateway:{version}") } ``` -### Gradle (kotlin) - -```kotlin -repositories { - mavenCentral() - // Kord Snapshots Repository (Optional): - maven("https://oss.sonatype.org/content/repositories/snapshots") -} -``` - ---- +### Gradle (Groovy) -```kotlin +```groovy dependencies { implementation("dev.kord:kord-gateway:{version}") } @@ -86,26 +61,7 @@ dependencies { ### Maven -##### Kord Snapshots Repository (Optional): - ```xml - - - snapshots-repo - https://oss.sonatype.org/content/repositories/snapshots - - false - - - true - - -``` - ---- - -```xml - dev.kord kord-gateway-jvm diff --git a/gateway/api/gateway.klib.api b/gateway/api/gateway.klib.api index 49239bfd1f4..9385381b2eb 100644 --- a/gateway/api/gateway.klib.api +++ b/gateway/api/gateway.klib.api @@ -2115,8 +2115,6 @@ final class dev.kord.gateway/WebhooksUpdate : dev.kord.gateway/DispatchEvent { / } sealed class dev.kord.gateway/Close : dev.kord.gateway/Event { // dev.kord.gateway/Close|null[0] - constructor () // dev.kord.gateway/Close.|(){}[0] - final class DiscordClose : dev.kord.gateway/Close { // dev.kord.gateway/Close.DiscordClose|null[0] constructor (dev.kord.gateway/GatewayCloseCode, kotlin/Boolean) // dev.kord.gateway/Close.DiscordClose.|(dev.kord.gateway.GatewayCloseCode;kotlin.Boolean){}[0] @@ -2149,8 +2147,6 @@ sealed class dev.kord.gateway/Close : dev.kord.gateway/Event { // dev.kord.gatew } sealed class dev.kord.gateway/Command { // dev.kord.gateway/Command|null[0] - constructor () // dev.kord.gateway/Command.|(){}[0] - final class Heartbeat : dev.kord.gateway/Command { // dev.kord.gateway/Command.Heartbeat|null[0] constructor (kotlin/Int?) // dev.kord.gateway/Command.Heartbeat.|(kotlin.Int?){}[0] @@ -2173,15 +2169,11 @@ sealed class dev.kord.gateway/Command { // dev.kord.gateway/Command|null[0] } sealed class dev.kord.gateway/DispatchEvent : dev.kord.gateway/Event { // dev.kord.gateway/DispatchEvent|null[0] - constructor () // dev.kord.gateway/DispatchEvent.|(){}[0] - abstract val sequence // dev.kord.gateway/DispatchEvent.sequence|{}sequence[0] abstract fun (): kotlin/Int? // dev.kord.gateway/DispatchEvent.sequence.|(){}[0] } sealed class dev.kord.gateway/Event { // dev.kord.gateway/Event|null[0] - constructor () // dev.kord.gateway/Event.|(){}[0] - final object DeserializationStrategy : kotlinx.serialization/DeserializationStrategy { // dev.kord.gateway/Event.DeserializationStrategy|null[0] final val descriptor // dev.kord.gateway/Event.DeserializationStrategy.descriptor|{}descriptor[0] final fun (): kotlinx.serialization.descriptors/SerialDescriptor // dev.kord.gateway/Event.DeserializationStrategy.descriptor.|(){}[0] @@ -2191,8 +2183,6 @@ sealed class dev.kord.gateway/Event { // dev.kord.gateway/Event|null[0] } sealed class dev.kord.gateway/Intent { // dev.kord.gateway/Intent|null[0] - constructor (kotlin/Int) // dev.kord.gateway/Intent.|(kotlin.Int){}[0] - final val code // dev.kord.gateway/Intent.code|{}code[0] final fun (): dev.kord.common/DiscordBitSet // dev.kord.gateway/Intent.code.|(){}[0] final val shift // dev.kord.gateway/Intent.shift|{}shift[0] diff --git a/gateway/build.gradle.kts b/gateway/build.gradle.kts index 39c09f00a66..ce77a6790dd 100644 --- a/gateway/build.gradle.kts +++ b/gateway/build.gradle.kts @@ -27,8 +27,9 @@ kotlin { implementation(libs.kotlin.node) implementation(npm("fast-zlib", libs.versions.fastZlib.get())) - // workaround for https://youtrack.jetbrains.com/issue/KT-43500 - // (intended to be compileOnly in commonMain only) + // workaround for https://youtrack.jetbrains.com/issue/KT-43500 / + // https://youtrack.jetbrains.com/issue/KT-64109#focus=Comments-27-10064206.0-0 / + // https://youtrack.jetbrains.com/issue/KT-61096 (intended to be compileOnly in commonMain only) implementation(projects.kspAnnotations) } } diff --git a/gateway/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/gateway/Intent.kt b/gateway/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/gateway/Intent.kt index b5f4c49f4ca..5d189d3cd0f 100644 --- a/gateway/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/gateway/Intent.kt +++ b/gateway/build/generated/ksp/metadata/commonMain/kotlin/dev/kord/gateway/Intent.kt @@ -424,7 +424,7 @@ public class Intents internal constructor( @Deprecated( level = DeprecationLevel.HIDDEN, - message = "Binary compatibility, keep for some releases.", + message = "Kept for binary compatibility, this declaration will be removed in 0.17.0.", ) public inline fun copy0(builder: Builder.() -> Unit): Intents { contract { callsInPlace(builder, EXACTLY_ONCE) } @@ -502,7 +502,7 @@ public inline fun Intents(builder: Intents.Builder.() -> Unit = {}): Intents { @Suppress(names = arrayOf("FunctionName")) @Deprecated( level = DeprecationLevel.HIDDEN, - message = "Binary compatibility, keep for some releases.", + message = "Kept for binary compatibility, this declaration will be removed in 0.17.0.", ) public inline fun Intents0(builder: Intents.Builder.() -> Unit = {}): Intents { contract { callsInPlace(builder, EXACTLY_ONCE) } diff --git a/gateway/src/commonMain/kotlin/Event.kt b/gateway/src/commonMain/kotlin/Event.kt index bf7c4e5f93e..ac19a5dd5ce 100644 --- a/gateway/src/commonMain/kotlin/Event.kt +++ b/gateway/src/commonMain/kotlin/Event.kt @@ -302,23 +302,35 @@ public data class Heartbeat(val data: Long?) : Event() { override fun deserialize(decoder: Decoder) = Heartbeat(decoder.decodeSerializableValue(delegate)) } - @Deprecated("Binary compatibility, keep for some releases.", level = DeprecationLevel.HIDDEN) + @Deprecated( + "Kept for binary compatibility, this declaration will be removed in 0.18.0.", + level = DeprecationLevel.HIDDEN, + ) public constructor(data: Long) : this(data as Long?) @Suppress("PropertyName") - @Deprecated("Binary compatibility, keep for some releases.", level = DeprecationLevel.HIDDEN) + @Deprecated( + "Kept for binary compatibility, this declaration will be removed in 0.18.0.", + level = DeprecationLevel.HIDDEN, + ) @get:JvmName("getData") public val data_: Long get() = data ?: throw NullPointerException("This heartbeat request contains a null sequence number") @Suppress("FunctionName") - @Deprecated("Binary compatibility, keep for some releases.", level = DeprecationLevel.HIDDEN) + @Deprecated( + "Kept for binary compatibility, this declaration will be removed in 0.18.0.", + level = DeprecationLevel.HIDDEN, + ) @JvmName("component1") public fun component1_(): Long = component1() ?: throw NullPointerException("This heartbeat request contains a null sequence number") @Suppress("FunctionName") - @Deprecated("Binary compatibility, keep for some releases.", level = DeprecationLevel.HIDDEN) + @Deprecated( + "Kept for binary compatibility, this declaration will be removed in 0.18.0.", + level = DeprecationLevel.HIDDEN, + ) @JvmName("copy") public fun copy_( data: Long = this.data ?: throw NullPointerException("This heartbeat request contains a null sequence number"), @@ -327,7 +339,8 @@ public data class Heartbeat(val data: Long?) : Event() { public companion object { @Suppress("DEPRECATION_ERROR") @Deprecated( - "Renamed to 'Companion'.", + "Renamed to 'Companion'. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration " + + "will be removed in 0.17.0.", ReplaceWith("Heartbeat.Companion", imports = ["dev.kord.gateway.Heartbeat"]), DeprecationLevel.ERROR, ) @@ -336,7 +349,8 @@ public data class Heartbeat(val data: Long?) : Event() { } @Deprecated( - "Renamed to 'Companion'.", + "Renamed to 'Companion'. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will " + + "be removed in 0.17.0.", ReplaceWith("Heartbeat.Companion", imports = ["dev.kord.gateway.Heartbeat"]), DeprecationLevel.ERROR, ) @@ -535,7 +549,8 @@ public data class InteractionCreate(val interaction: DiscordInteraction, overrid @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public data class ApplicationCommandCreate(val application: DiscordApplicationCommand, override val sequence: Int?) : @@ -544,7 +559,8 @@ public data class ApplicationCommandCreate(val application: DiscordApplicationCo @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public data class ApplicationCommandUpdate(val application: DiscordApplicationCommand, override val sequence: Int?) : @@ -553,7 +569,8 @@ public data class ApplicationCommandUpdate(val application: DiscordApplicationCo @Deprecated( "This event is not supposed to be sent to bots. See https://github.com/discord/discord-api-docs/issues/3690 for " + - "details.", + "details. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will be removed in " + + "0.17.0.", level = DeprecationLevel.ERROR, ) public data class ApplicationCommandDelete(val application: DiscordApplicationCommand, override val sequence: Int?) : diff --git a/gateway/src/commonMain/kotlin/builder/LoginBuilder.kt b/gateway/src/commonMain/kotlin/builder/LoginBuilder.kt index d52f91c4a98..58681977b3f 100644 --- a/gateway/src/commonMain/kotlin/builder/LoginBuilder.kt +++ b/gateway/src/commonMain/kotlin/builder/LoginBuilder.kt @@ -26,7 +26,10 @@ public class LoginBuilder { this.intents = Intents(builder) } - @Deprecated("Binary compatibility, keep for some releases.", level = DeprecationLevel.HIDDEN) + @Deprecated( + "Kept for binary compatibility, this declaration will be removed in 0.17.0.", + level = DeprecationLevel.HIDDEN, + ) public inline fun intents0(builder: Intents.Builder.() -> Unit) { contract { callsInPlace(builder, InvocationKind.EXACTLY_ONCE) } intents(builder) diff --git a/gradle.properties b/gradle.properties index 41cba18b55b..82ac2a5d1a1 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,6 +8,10 @@ org.gradle.warning.mode=all org.gradle.kotlin.dsl.allWarningsAsErrors=true kotlin.code.style=official +# https://github.com/Kotlin/kotlinx-atomicfu/issues/448 +# https://youtrack.jetbrains.com/issue/KT-64109#focus=Comments-27-10064206.0-0 +kotlin.suppressGradlePluginWarnings=IncorrectCompileOnlyDependencyWarning + # https://github.com/Kotlin/kotlinx-atomicfu#atomicfu-compiler-plugin kotlinx.atomicfu.enableJvmIrTransformation=true kotlinx.atomicfu.enableJsIrTransformation=true diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index d83ae947ac5..d7b57b40170 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,37 +1,38 @@ [versions] # api dependencies -kotlin = "2.0.0" # https://github.com/JetBrains/kotlin -ktor = "3.0.0-beta-2" # https://github.com/ktorio/ktor +kotlin = "2.0.20" # https://github.com/JetBrains/kotlin +ktor = "3.0.0-rc-1" # https://github.com/ktorio/ktor kotlinx-coroutines = "1.8.1" # https://github.com/Kotlin/kotlinx.coroutines -kotlinx-serialization = "1.7.1" # https://github.com/Kotlin/kotlinx.serialization -kotlinx-datetime = "0.6.0" # https://github.com/Kotlin/kotlinx-datetime +kotlinx-serialization = "1.7.2" # https://github.com/Kotlin/kotlinx.serialization +kotlinx-datetime = "0.6.1" # https://github.com/Kotlin/kotlinx-datetime kord-cache = "0.5.4" # https://github.com/kordlib/cache # implementation dependencies kotlinx-io = "0.5.1" # https://github.com/Kotlin/kotlinx-io kotlin-logging = "7.0.0" # https://github.com/oshai/kotlin-logging -slf4j = "2.0.13" # https://www.slf4j.org -kotlin-node = "20.14.10-pre.773" # https://github.com/JetBrains/kotlin-wrappers +kotlin-logging-old = "3.0.5" # TODO remove after dependency is removed in rest, gateway, voice and core +slf4j = "2.0.16" # https://www.slf4j.org +kotlin-node = "20.14.10-pre.800" # https://github.com/JetBrains/kotlin-wrappers bignum = "0.3.10" # https://github.com/ionspin/kotlin-multiplatform-bignum -stately = "2.0.7" # https://github.com/touchlab/Stately +stately = "2.1.0" # https://github.com/touchlab/Stately fastZlib = "2.0.1" # https://github.com/timotejroiko/fast-zlib sodium = "0.9.2" # https://github.com/ionspin/kotlin-multiplatform-libsodium # code generation -ksp = "2.0.0-1.0.23" # https://github.com/google/ksp +ksp = "2.0.20-1.0.24" # https://github.com/google/ksp kotlinpoet = "1.18.1" # https://github.com/square/kotlinpoet # tests -junit-jupiter = "5.10.3" # https://github.com/junit-team/junit5 -junit-platform = "1.10.3" -mockk = "1.13.11" # https://github.com/mockk/mockk +junit-jupiter = "5.11.0" # https://github.com/junit-team/junit5 +junit-platform = "1.11.0" +mockk = "1.13.12" # https://github.com/mockk/mockk kbson = "0.4.0" # https://github.com/mongodb/kbson # plugins dokka = "1.9.20" # https://github.com/Kotlin/dokka kotlinx-atomicfu = "0.25.0" # https://github.com/Kotlin/kotlinx-atomicfu -binary-compatibility-validator = "0.15.1" # https://github.com/Kotlin/binary-compatibility-validator +binary-compatibility-validator = "0.16.3" # https://github.com/Kotlin/binary-compatibility-validator buildconfig = "5.4.0" # https://github.com/gmazzo/gradle-buildconfig-plugin kord-gradle-tools = "1.6.2" # https://github.com/kordlib/gradle-tools/blob/main/build.gradle.kts#L10 maven-publish-plugin = "0.29.0" # https://github.com/vanniktech/gradle-maven-publish-plugin @@ -84,7 +85,7 @@ kotlin-test-js = { module = "org.jetbrains.kotlin:kotlin-test-js", version.ref = kotlin-test-junit5 = { module = "org.jetbrains.kotlin:kotlin-test-junit5", version.ref = "kotlin" } junit-jupiter-api = { module = "org.junit.jupiter:junit-jupiter-api", version.ref = "junit-jupiter" } junit-jupiter-engine = { module = "org.junit.jupiter:junit-jupiter-engine", version.ref = "junit-jupiter" } -junit-platform-launcher = { module = "org.junit.platform:junit-platform-launcher", version = "junit-platform" } +junit-platform-launcher = { module = "org.junit.platform:junit-platform-launcher", version.ref = "junit-platform" } mockk = { module = "io.mockk:mockk", version.ref = "mockk" } slf4j-simple = { module = "org.slf4j:slf4j-simple", version.ref = "slf4j" } kbson = { module = "org.mongodb.kbson:kbson", version.ref = "kbson" } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 2c3521197d7..a4b76b9530d 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 68e8816d71c..2b189974c29 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionSha256Sum=d725d707bfabd4dfdc958c624003b3c80accc03f7037b5122c4b1d0ef15cecab -distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip +distributionSha256Sum=5b9c5eb3f9fc2c94abaea57d90bd78747ca117ddbbf96c859d3741181a12bf2a +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/kotlin-js-store/yarn.lock b/kotlin-js-store/yarn.lock index 03dff937e41..b76cb2178b9 100644 --- a/kotlin-js-store/yarn.lock +++ b/kotlin-js-store/yarn.lock @@ -14,10 +14,10 @@ abort-controller@3.0.0: dependencies: event-target-shim "^5.0.0" -ansi-colors@4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" - integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== +ansi-colors@^4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" + integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== ansi-regex@^5.0.1: version "5.0.1" @@ -68,7 +68,7 @@ braces@~3.0.2: dependencies: fill-range "^7.0.1" -browser-stdout@1.3.1: +browser-stdout@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== @@ -91,10 +91,10 @@ chalk@^4.1.0: ansi-styles "^4.1.0" supports-color "^7.1.0" -chokidar@3.5.3: - version "3.5.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" - integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== +chokidar@^3.5.3: + version "3.6.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" + integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== dependencies: anymatch "~3.1.2" braces "~3.0.2" @@ -127,10 +127,10 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -debug@4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== +debug@^4.3.5: + version "4.3.6" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.6.tgz#2ab2c38fbaffebf8aa95fdfe6d88438c7a13c52b" + integrity sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg== dependencies: ms "2.1.2" @@ -139,10 +139,10 @@ decamelize@^4.0.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== -diff@5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-5.0.0.tgz#7ed6ad76d859d030787ec35855f5b1daf31d852b" - integrity sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w== +diff@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-5.2.0.tgz#26ded047cd1179b78b9537d5ef725503ce1ae531" + integrity sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A== emoji-regex@^8.0.0: version "8.0.0" @@ -154,7 +154,7 @@ escalade@^3.1.1: resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== -escape-string-regexp@4.0.0: +escape-string-regexp@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== @@ -176,7 +176,7 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" -find-up@5.0.0: +find-up@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== @@ -216,7 +216,7 @@ glob-parent@~5.1.2: dependencies: is-glob "^4.0.1" -glob@8.1.0: +glob@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== @@ -232,7 +232,7 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -he@1.2.0: +he@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== @@ -289,7 +289,7 @@ is-unicode-supported@^0.1.0: resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== -js-yaml@4.1.0: +js-yaml@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== @@ -315,7 +315,7 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" -log-symbols@4.1.0: +log-symbols@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== @@ -323,52 +323,45 @@ log-symbols@4.1.0: chalk "^4.1.0" is-unicode-supported "^0.1.0" -minimatch@5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" - integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g== - dependencies: - brace-expansion "^2.0.1" - -minimatch@^5.0.1: +minimatch@^5.0.1, minimatch@^5.1.6: version "5.1.6" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== dependencies: brace-expansion "^2.0.1" -mocha@10.3.0: - version "10.3.0" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.3.0.tgz#0e185c49e6dccf582035c05fa91084a4ff6e3fe9" - integrity sha512-uF2XJs+7xSLsrmIvn37i/wnc91nw7XjOQB8ccyx5aEgdnohr7n+rEiZP23WkCYHjilR6+EboEnbq/ZQDz4LSbg== - dependencies: - ansi-colors "4.1.1" - browser-stdout "1.3.1" - chokidar "3.5.3" - debug "4.3.4" - diff "5.0.0" - escape-string-regexp "4.0.0" - find-up "5.0.0" - glob "8.1.0" - he "1.2.0" - js-yaml "4.1.0" - log-symbols "4.1.0" - minimatch "5.0.1" - ms "2.1.3" - serialize-javascript "6.0.0" - strip-json-comments "3.1.1" - supports-color "8.1.1" - workerpool "6.2.1" - yargs "16.2.0" - yargs-parser "20.2.4" - yargs-unparser "2.0.0" +mocha@10.7.0: + version "10.7.0" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.7.0.tgz#9e5cbed8fa9b37537a25bd1f7fb4f6fc45458b9a" + integrity sha512-v8/rBWr2VO5YkspYINnvu81inSz2y3ODJrhO175/Exzor1RcEZZkizgE2A+w/CAXXoESS8Kys5E62dOHGHzULA== + dependencies: + ansi-colors "^4.1.3" + browser-stdout "^1.3.1" + chokidar "^3.5.3" + debug "^4.3.5" + diff "^5.2.0" + escape-string-regexp "^4.0.0" + find-up "^5.0.0" + glob "^8.1.0" + he "^1.2.0" + js-yaml "^4.1.0" + log-symbols "^4.1.0" + minimatch "^5.1.6" + ms "^2.1.3" + serialize-javascript "^6.0.2" + strip-json-comments "^3.1.1" + supports-color "^8.1.1" + workerpool "^6.5.1" + yargs "^16.2.0" + yargs-parser "^20.2.9" + yargs-unparser "^2.0.0" ms@2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@2.1.3: +ms@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -440,10 +433,10 @@ safe-buffer@^5.1.0: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== -serialize-javascript@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" - integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== +serialize-javascript@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" + integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g== dependencies: randombytes "^2.1.0" @@ -476,18 +469,11 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: dependencies: ansi-regex "^5.0.1" -strip-json-comments@3.1.1: +strip-json-comments@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -supports-color@8.1.1: - version "8.1.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" - integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== - dependencies: - has-flag "^4.0.0" - supports-color@^7.1.0: version "7.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" @@ -495,6 +481,13 @@ supports-color@^7.1.0: dependencies: has-flag "^4.0.0" +supports-color@^8.1.1: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -507,10 +500,10 @@ tr46@~0.0.3: resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== -typescript@5.4.3: - version "5.4.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.3.tgz#5c6fedd4c87bee01cd7a528a30145521f8e0feff" - integrity sha512-KrPd3PKaCLr78MalgiwJnA25Nm8HAmdwN3mYUYZgG/wizIo9EainNVQI9/yDavtVFRN2h3k8uf3GLHuhDMgEHg== +typescript@5.5.4: + version "5.5.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.4.tgz#d9852d6c82bad2d2eda4fd74a5762a8f5909e9ba" + integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q== webidl-conversions@^3.0.0: version "3.0.1" @@ -525,10 +518,10 @@ whatwg-url@^5.0.0: tr46 "~0.0.3" webidl-conversions "^3.0.0" -workerpool@6.2.1: - version "6.2.1" - resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.1.tgz#46fc150c17d826b86a008e5a4508656777e9c343" - integrity sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw== +workerpool@^6.5.1: + version "6.5.1" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.5.1.tgz#060f73b39d0caf97c6db64da004cd01b4c099544" + integrity sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA== wrap-ansi@^7.0.0: version "7.0.0" @@ -554,17 +547,12 @@ y18n@^5.0.5: resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== -yargs-parser@20.2.4: - version "20.2.4" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" - integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== - -yargs-parser@^20.2.2: +yargs-parser@^20.2.2, yargs-parser@^20.2.9: version "20.2.9" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== -yargs-unparser@2.0.0: +yargs-unparser@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" integrity sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA== @@ -574,7 +562,7 @@ yargs-unparser@2.0.0: flat "^5.0.2" is-plain-obj "^2.1.0" -yargs@16.2.0: +yargs@^16.2.0: version "16.2.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== diff --git a/ksp-annotations/build.gradle.kts b/ksp-annotations/build.gradle.kts index 470698576a3..c2fa45ec56f 100644 --- a/ksp-annotations/build.gradle.kts +++ b/ksp-annotations/build.gradle.kts @@ -2,15 +2,14 @@ import org.jetbrains.dokka.gradle.AbstractDokkaLeafTask plugins { org.jetbrains.kotlin.multiplatform - // workaround for https://youtrack.jetbrains.com/issue/KT-43500 (not intended to be published) + + // workaround for https://youtrack.jetbrains.com/issue/KT-43500 / + // https://youtrack.jetbrains.com/issue/KT-64109#focus=Comments-27-10064206.0-0 / + // https://youtrack.jetbrains.com/issue/KT-61096 (not intended to be published) org.jetbrains.dokka `kord-publishing` } -kotlin { - targets() -} - tasks.withType().configureEach { dokkaSourceSets.configureEach { suppress = true diff --git a/ksp-processors/src/main/kotlin/generation/bitflags/BitFlagsGeneration.kt b/ksp-processors/src/main/kotlin/generation/bitflags/BitFlagsGeneration.kt index 10ae5f009c2..72697797fc1 100644 --- a/ksp-processors/src/main/kotlin/generation/bitflags/BitFlagsGeneration.kt +++ b/ksp-processors/src/main/kotlin/generation/bitflags/BitFlagsGeneration.kt @@ -1,3 +1,5 @@ +@file:Suppress("CONTEXT_RECEIVERS_DEPRECATED") + package dev.kord.ksp.generation.bitflags import com.google.devtools.ksp.symbol.KSFile diff --git a/ksp-processors/src/main/kotlin/generation/bitflags/Builder.kt b/ksp-processors/src/main/kotlin/generation/bitflags/Builder.kt index 5bccf4fe2b3..ca0ad0acbba 100644 --- a/ksp-processors/src/main/kotlin/generation/bitflags/Builder.kt +++ b/ksp-processors/src/main/kotlin/generation/bitflags/Builder.kt @@ -1,3 +1,5 @@ +@file:Suppress("CONTEXT_RECEIVERS_DEPRECATED") + package dev.kord.ksp.generation.bitflags import com.squareup.kotlinpoet.ClassName diff --git a/ksp-processors/src/main/kotlin/generation/bitflags/ContainsPlusMinusCopy.kt b/ksp-processors/src/main/kotlin/generation/bitflags/ContainsPlusMinusCopy.kt index 2ab53bcd710..f32bf1d10ab 100644 --- a/ksp-processors/src/main/kotlin/generation/bitflags/ContainsPlusMinusCopy.kt +++ b/ksp-processors/src/main/kotlin/generation/bitflags/ContainsPlusMinusCopy.kt @@ -1,3 +1,5 @@ +@file:Suppress("CONTEXT_RECEIVERS_DEPRECATED") + package dev.kord.ksp.generation.bitflags import com.squareup.kotlinpoet.* @@ -81,7 +83,12 @@ internal fun TypeSpec.Builder.addCopy() = addFunction("copy") { context(BitFlags, GenerationContext) internal fun TypeSpec.Builder.addCopy0() = addFunction("copy0") { @OptIn(DelicateKotlinPoetApi::class) - addAnnotation(Deprecated("Binary compatibility, keep for some releases.", level = DeprecationLevel.HIDDEN)) + addAnnotation( + Deprecated( + "Kept for binary compatibility, this declaration will be removed in 0.17.0.", + level = DeprecationLevel.HIDDEN, + ) + ) addModifiers(PUBLIC, INLINE) addParameter("builder", type = LambdaTypeName.get(receiver = builderCN, returnType = UNIT)) returns(collectionCN) diff --git a/ksp-processors/src/main/kotlin/generation/bitflags/DeprecatedNewCompanion.kt b/ksp-processors/src/main/kotlin/generation/bitflags/DeprecatedNewCompanion.kt index d3e4c0608d5..ffb0973676c 100644 --- a/ksp-processors/src/main/kotlin/generation/bitflags/DeprecatedNewCompanion.kt +++ b/ksp-processors/src/main/kotlin/generation/bitflags/DeprecatedNewCompanion.kt @@ -1,3 +1,5 @@ +@file:Suppress("CONTEXT_RECEIVERS_DEPRECATED") + package dev.kord.ksp.generation.bitflags import com.squareup.kotlinpoet.DelicateKotlinPoetApi @@ -18,7 +20,8 @@ context(BitFlags, GenerationContext) internal fun TypeSpec.Builder.addDeprecatedNewCompanion() { val newCompanion = collectionCN.nestedClass("NewCompanion") val deprecated = Deprecated( - "Renamed to 'Companion'.", + "Renamed to 'Companion'. The deprecation level will be raised to HIDDEN in 0.16.0 and this declaration will " + + "be removed in 0.17.0.", ReplaceWith("${collectionCN.simpleName}.Companion", imports = arrayOf(collectionCN.canonicalName)), LEVEL, ) diff --git a/ksp-processors/src/main/kotlin/generation/bitflags/Documentation.kt b/ksp-processors/src/main/kotlin/generation/bitflags/Documentation.kt index 0445a7f46a2..b54275be9b7 100644 --- a/ksp-processors/src/main/kotlin/generation/bitflags/Documentation.kt +++ b/ksp-processors/src/main/kotlin/generation/bitflags/Documentation.kt @@ -1,3 +1,5 @@ +@file:Suppress("CONTEXT_RECEIVERS_DEPRECATED") + package dev.kord.ksp.generation.bitflags import com.squareup.kotlinpoet.CodeBlock diff --git a/ksp-processors/src/main/kotlin/generation/bitflags/FactoryFunctions.kt b/ksp-processors/src/main/kotlin/generation/bitflags/FactoryFunctions.kt index 796e02c2750..5658590aeeb 100644 --- a/ksp-processors/src/main/kotlin/generation/bitflags/FactoryFunctions.kt +++ b/ksp-processors/src/main/kotlin/generation/bitflags/FactoryFunctions.kt @@ -1,3 +1,5 @@ +@file:Suppress("CONTEXT_RECEIVERS_DEPRECATED") + package dev.kord.ksp.generation.bitflags import com.squareup.kotlinpoet.* @@ -34,7 +36,12 @@ internal fun FileSpec.Builder.addFactoryFunctions() { @OptIn(DelicateKotlinPoetApi::class) addFunction(factoryFunctionName + '0') { addAnnotation(Suppress("FunctionName")) - addAnnotation(Deprecated("Binary compatibility, keep for some releases.", level = DeprecationLevel.HIDDEN)) + addAnnotation( + Deprecated( + "Kept for binary compatibility, this declaration will be removed in 0.17.0.", + level = DeprecationLevel.HIDDEN, + ) + ) addModifiers(PUBLIC, INLINE) addParameter("builder", type = LambdaTypeName.get(receiver = builderCN, returnType = UNIT)) { defaultValue("{}") diff --git a/ksp-processors/src/main/kotlin/generation/bitflags/Serializer.kt b/ksp-processors/src/main/kotlin/generation/bitflags/Serializer.kt index 1da43eefe47..130c08dd9fc 100644 --- a/ksp-processors/src/main/kotlin/generation/bitflags/Serializer.kt +++ b/ksp-processors/src/main/kotlin/generation/bitflags/Serializer.kt @@ -1,3 +1,5 @@ +@file:Suppress("CONTEXT_RECEIVERS_DEPRECATED") + package dev.kord.ksp.generation.bitflags import com.squareup.kotlinpoet.KModifier.OVERRIDE diff --git a/ksp-processors/src/main/kotlin/generation/kordenum/Serializer.kt b/ksp-processors/src/main/kotlin/generation/kordenum/Serializer.kt index 91a13cd0493..864ed48e039 100644 --- a/ksp-processors/src/main/kotlin/generation/kordenum/Serializer.kt +++ b/ksp-processors/src/main/kotlin/generation/kordenum/Serializer.kt @@ -1,3 +1,5 @@ +@file:Suppress("CONTEXT_RECEIVERS_DEPRECATED") + package dev.kord.ksp.generation.kordenum import com.squareup.kotlinpoet.KModifier.OVERRIDE diff --git a/ksp-processors/src/main/kotlin/generation/shared/EqualsHashCodeToString.kt b/ksp-processors/src/main/kotlin/generation/shared/EqualsHashCodeToString.kt index 79419e2fa17..b82c7031c88 100644 --- a/ksp-processors/src/main/kotlin/generation/shared/EqualsHashCodeToString.kt +++ b/ksp-processors/src/main/kotlin/generation/shared/EqualsHashCodeToString.kt @@ -1,3 +1,5 @@ +@file:Suppress("CONTEXT_RECEIVERS_DEPRECATED") + package dev.kord.ksp.generation.shared import com.squareup.kotlinpoet.ClassName diff --git a/ksp-processors/src/main/kotlin/generation/shared/FileSpecForGenerationEntity.kt b/ksp-processors/src/main/kotlin/generation/shared/FileSpecForGenerationEntity.kt index e59208b219f..9021e12cdbc 100644 --- a/ksp-processors/src/main/kotlin/generation/shared/FileSpecForGenerationEntity.kt +++ b/ksp-processors/src/main/kotlin/generation/shared/FileSpecForGenerationEntity.kt @@ -1,3 +1,5 @@ +@file:Suppress("CONTEXT_RECEIVERS_DEPRECATED") + package dev.kord.ksp.generation.shared import com.google.devtools.ksp.symbol.KSFile diff --git a/ksp-processors/src/main/kotlin/generation/shared/OptIns.kt b/ksp-processors/src/main/kotlin/generation/shared/OptIns.kt index 6231e76a2c4..23bdf44c843 100644 --- a/ksp-processors/src/main/kotlin/generation/shared/OptIns.kt +++ b/ksp-processors/src/main/kotlin/generation/shared/OptIns.kt @@ -1,3 +1,5 @@ +@file:Suppress("CONTEXT_RECEIVERS_DEPRECATED") + package dev.kord.ksp.generation.shared import com.squareup.kotlinpoet.Annotatable diff --git a/ksp-processors/src/main/kotlin/generation/shared/SharedContent.kt b/ksp-processors/src/main/kotlin/generation/shared/SharedContent.kt index 5208a238370..7ec592410b4 100644 --- a/ksp-processors/src/main/kotlin/generation/shared/SharedContent.kt +++ b/ksp-processors/src/main/kotlin/generation/shared/SharedContent.kt @@ -1,3 +1,5 @@ +@file:Suppress("CONTEXT_RECEIVERS_DEPRECATED") + package dev.kord.ksp.generation.shared import com.squareup.kotlinpoet.* diff --git a/rest/README.md b/rest/README.md index 3cef5021b66..829d54c6aae 100644 --- a/rest/README.md +++ b/rest/README.md @@ -13,48 +13,23 @@ suspend fun main(args: Array) { val username = rest.user.getCurrentUser().username println("using $username's token") } -``` -## Installation - -Replace `{version}` with the latest version number on maven central. - -For Snapshots replace `{version}` with `{branch}-SNAPSHOT` - -e.g: `0.7.x-SNAPSHOT` +``` -[![Download](https://img.shields.io/nexus/r/dev.kord/kord-rest?color=fb5502&label=Kord&logoColor=05c1fd&server=https%3A%2F%2Frepo1.maven.org%2Fmaven2%2F&style=for-the-badge) ](https://search.maven.org/search?q=g:dev.kord) -[![Snapshot](https://img.shields.io/nexus/s/dev.kord/kord-rest?label=SNAPSHOT&server=https%3A%2F%2Foss.sonatype.org%2F&style=for-the-badge)](https://oss.sonatype.org/#nexus-search;quick~dev.kord) +## Installation +See the root [README](../README.md#installation) for more information. -### Gradle (groovy) +### Gradle (Kotlin) -```groovy -repositories { - mavenCentral() - // Kord Snapshots Repository (Optional): - maven("https://oss.sonatype.org/content/repositories/snapshots") -} -``` - -```groovy +```kotlin dependencies { implementation("dev.kord:kord-rest:{version}") } ``` -### Gradle (kotlin) - -```kotlin -repositories { - mavenCentral() - // Kord Snapshots Repository (Optional): - maven("https://oss.sonatype.org/content/repositories/snapshots") -} -``` - ---- +### Gradle (Groovy) -```kotlin +```groovy dependencies { implementation("dev.kord:kord-rest:{version}") } @@ -62,26 +37,7 @@ dependencies { ### Maven -##### Kord Snapshots Repository (Optional): - ```xml - - - snapshots-repo - https://oss.sonatype.org/content/repositories/snapshots - - false - - - true - - -``` - ---- - -```xml - dev.kord kord-rest-jvm diff --git a/rest/api/rest.api b/rest/api/rest.api index 91bf1d6b21b..2b117ebf1a5 100644 --- a/rest/api/rest.api +++ b/rest/api/rest.api @@ -247,7 +247,6 @@ public final class dev/kord/rest/builder/automoderation/KeywordAutoModerationRul public final class dev/kord/rest/builder/automoderation/KeywordAutoModerationRuleCreateBuilder : dev/kord/rest/builder/automoderation/AutoModerationRuleCreateBuilder, dev/kord/rest/builder/automoderation/KeywordAutoModerationRuleBuilder { public fun (Ljava/lang/String;Ldev/kord/common/entity/AutoModerationRuleEventType;)V - public synthetic fun buildTriggerMetadata ()Ldev/kord/common/entity/optional/Optional; public fun getAllowedKeywords ()Ljava/util/List; public fun getKeywords ()Ljava/util/List; public fun getRegexPatterns ()Ljava/util/List; @@ -274,6 +273,7 @@ public abstract interface class dev/kord/rest/builder/automoderation/KeywordPres public abstract fun assignPresets (Ljava/util/List;)V public abstract fun getPresets ()Ljava/util/List; public abstract fun getTriggerType ()Ldev/kord/common/entity/AutoModerationRuleTriggerType$KeywordPreset; + public abstract fun setPresets (Ljava/util/List;)V } public final class dev/kord/rest/builder/automoderation/KeywordPresetAutoModerationRuleBuilder$DefaultImpls { @@ -283,7 +283,6 @@ public final class dev/kord/rest/builder/automoderation/KeywordPresetAutoModerat public final class dev/kord/rest/builder/automoderation/KeywordPresetAutoModerationRuleCreateBuilder : dev/kord/rest/builder/automoderation/AutoModerationRuleCreateBuilder, dev/kord/rest/builder/automoderation/KeywordPresetAutoModerationRuleBuilder { public fun (Ljava/lang/String;Ldev/kord/common/entity/AutoModerationRuleEventType;)V public fun assignPresets (Ljava/util/List;)V - public synthetic fun buildTriggerMetadata ()Ldev/kord/common/entity/optional/Optional; public fun getAllowedKeywords ()Ljava/util/List; public fun getPresets ()Ljava/util/List; public fun getTriggerType ()Ldev/kord/common/entity/AutoModerationRuleTriggerType$KeywordPreset; @@ -317,7 +316,6 @@ public final class dev/kord/rest/builder/automoderation/MentionSpamAutoModeratio public final class dev/kord/rest/builder/automoderation/MentionSpamAutoModerationRuleCreateBuilder : dev/kord/rest/builder/automoderation/AutoModerationRuleCreateBuilder, dev/kord/rest/builder/automoderation/MentionSpamAutoModerationRuleBuilder { public fun (Ljava/lang/String;Ldev/kord/common/entity/AutoModerationRuleEventType;)V - public synthetic fun buildTriggerMetadata ()Ldev/kord/common/entity/optional/Optional; public fun getMentionLimit ()Ljava/lang/Integer; public fun getMentionRaidProtectionEnabled ()Ljava/lang/Boolean; public fun getTriggerType ()Ldev/kord/common/entity/AutoModerationRuleTriggerType$MentionSpam; @@ -2229,10 +2227,12 @@ public final class dev/kord/rest/builder/message/create/UpdateMessageInteraction public final class dev/kord/rest/builder/message/create/UserMessageCreateBuilder : dev/kord/rest/builder/message/create/AbstractMessageCreateBuilder, dev/kord/rest/builder/RequestBuilder { public fun ()V + public final fun getEnforceNonce ()Ljava/lang/Boolean; public final fun getFailIfNotExists ()Ljava/lang/Boolean; public final fun getMessageReference ()Ldev/kord/common/entity/Snowflake; public final fun getNonce ()Ljava/lang/String; public final fun getStickerIds ()Ljava/util/List; + public final fun setEnforceNonce (Ljava/lang/Boolean;)V public final fun setFailIfNotExists (Ljava/lang/Boolean;)V public final fun setMessageReference (Ldev/kord/common/entity/Snowflake;)V public final fun setNonce (Ljava/lang/String;)V @@ -4773,10 +4773,11 @@ public final class dev/kord/rest/json/request/ListThreadsByTimestampRequest { public final class dev/kord/rest/json/request/MessageCreateRequest { public static final field Companion Ldev/kord/rest/json/request/MessageCreateRequest$Companion; public fun ()V - public fun (Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/OptionalBoolean;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;)V - public synthetic fun (Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/OptionalBoolean;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun (Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/OptionalBoolean;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/OptionalBoolean;)V + public synthetic fun (Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/OptionalBoolean;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/OptionalBoolean;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun component1 ()Ldev/kord/common/entity/optional/Optional; public final fun component10 ()Ldev/kord/common/entity/optional/Optional; + public final fun component11 ()Ldev/kord/common/entity/optional/OptionalBoolean; public final fun component2 ()Ldev/kord/common/entity/optional/Optional; public final fun component3 ()Ldev/kord/common/entity/optional/OptionalBoolean; public final fun component4 ()Ldev/kord/common/entity/optional/Optional; @@ -4785,14 +4786,15 @@ public final class dev/kord/rest/json/request/MessageCreateRequest { public final fun component7 ()Ldev/kord/common/entity/optional/Optional; public final fun component8 ()Ldev/kord/common/entity/optional/Optional; public final fun component9 ()Ldev/kord/common/entity/optional/Optional; - public final fun copy (Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/OptionalBoolean;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;)Ldev/kord/rest/json/request/MessageCreateRequest; - public static synthetic fun copy$default (Ldev/kord/rest/json/request/MessageCreateRequest;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/OptionalBoolean;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;ILjava/lang/Object;)Ldev/kord/rest/json/request/MessageCreateRequest; + public final fun copy (Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/OptionalBoolean;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/OptionalBoolean;)Ldev/kord/rest/json/request/MessageCreateRequest; + public static synthetic fun copy$default (Ldev/kord/rest/json/request/MessageCreateRequest;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/OptionalBoolean;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/Optional;Ldev/kord/common/entity/optional/OptionalBoolean;ILjava/lang/Object;)Ldev/kord/rest/json/request/MessageCreateRequest; public fun equals (Ljava/lang/Object;)Z public final fun getAllowedMentions ()Ldev/kord/common/entity/optional/Optional; public final fun getAttachments ()Ldev/kord/common/entity/optional/Optional; public final fun getComponents ()Ldev/kord/common/entity/optional/Optional; public final fun getContent ()Ldev/kord/common/entity/optional/Optional; public final fun getEmbeds ()Ldev/kord/common/entity/optional/Optional; + public final fun getEnforceNonce ()Ldev/kord/common/entity/optional/OptionalBoolean; public final fun getFlags ()Ldev/kord/common/entity/optional/Optional; public final fun getMessageReference ()Ldev/kord/common/entity/optional/Optional; public final fun getNonce ()Ldev/kord/common/entity/optional/Optional; diff --git a/rest/api/rest.klib.api b/rest/api/rest.klib.api index 34dd2ec0fab..22bb0930e08 100644 --- a/rest/api/rest.klib.api +++ b/rest/api/rest.klib.api @@ -460,11 +460,13 @@ sealed interface dev.kord.rest.builder.automoderation/KeywordAutoModerationRuleB } sealed interface dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleBuilder : dev.kord.rest.builder.automoderation/AllowedKeywordsAutoModerationRuleBuilder { // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleBuilder|null[0] - abstract val presets // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleBuilder.presets|{}presets[0] - abstract fun (): kotlin.collections/MutableList? // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleBuilder.presets.|(){}[0] open val triggerType // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleBuilder.triggerType|{}triggerType[0] open fun (): dev.kord.common.entity/AutoModerationRuleTriggerType.KeywordPreset // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleBuilder.triggerType.|(){}[0] + abstract var presets // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleBuilder.presets|{}presets[0] + abstract fun (): kotlin.collections/MutableList? // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleBuilder.presets.|(){}[0] + abstract fun (kotlin.collections/MutableList?) // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleBuilder.presets.|(kotlin.collections.MutableList?){}[0] + abstract fun assignPresets(kotlin.collections/MutableList) // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleBuilder.assignPresets|assignPresets(kotlin.collections.MutableList){}[0] } @@ -765,8 +767,8 @@ final class dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRule final fun (): kotlin.collections/MutableList? // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleCreateBuilder.allowedKeywords.|(){}[0] final fun (kotlin.collections/MutableList?) // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleCreateBuilder.allowedKeywords.|(kotlin.collections.MutableList?){}[0] final var presets // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleCreateBuilder.presets|{}presets[0] - final fun (): kotlin.collections/MutableList // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleCreateBuilder.presets.|(){}[0] - final fun (kotlin.collections/MutableList) // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleCreateBuilder.presets.|(kotlin.collections.MutableList){}[0] + final fun (): kotlin.collections/MutableList? // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleCreateBuilder.presets.|(){}[0] + final fun (kotlin.collections/MutableList?) // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleCreateBuilder.presets.|(kotlin.collections.MutableList?){}[0] final fun assignPresets(kotlin.collections/MutableList) // dev.kord.rest.builder.automoderation/KeywordPresetAutoModerationRuleCreateBuilder.assignPresets|assignPresets(kotlin.collections.MutableList){}[0] } @@ -2479,6 +2481,9 @@ final class dev.kord.rest.builder.message.create/UpdateMessageInteractionRespons final class dev.kord.rest.builder.message.create/UserMessageCreateBuilder : dev.kord.rest.builder.message.create/AbstractMessageCreateBuilder, dev.kord.rest.builder/RequestBuilder { // dev.kord.rest.builder.message.create/UserMessageCreateBuilder|null[0] constructor () // dev.kord.rest.builder.message.create/UserMessageCreateBuilder.|(){}[0] + final var enforceNonce // dev.kord.rest.builder.message.create/UserMessageCreateBuilder.enforceNonce|{}enforceNonce[0] + final fun (): kotlin/Boolean? // dev.kord.rest.builder.message.create/UserMessageCreateBuilder.enforceNonce.|(){}[0] + final fun (kotlin/Boolean?) // dev.kord.rest.builder.message.create/UserMessageCreateBuilder.enforceNonce.|(kotlin.Boolean?){}[0] final var failIfNotExists // dev.kord.rest.builder.message.create/UserMessageCreateBuilder.failIfNotExists|{}failIfNotExists[0] final fun (): kotlin/Boolean? // dev.kord.rest.builder.message.create/UserMessageCreateBuilder.failIfNotExists.|(){}[0] final fun (kotlin/Boolean?) // dev.kord.rest.builder.message.create/UserMessageCreateBuilder.failIfNotExists.|(kotlin.Boolean?){}[0] @@ -5197,7 +5202,7 @@ final class dev.kord.rest.json.request/ListThreadsByTimestampRequest { // dev.ko } final class dev.kord.rest.json.request/MessageCreateRequest { // dev.kord.rest.json.request/MessageCreateRequest|null[0] - constructor (dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/OptionalBoolean = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional = ...) // dev.kord.rest.json.request/MessageCreateRequest.|(dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.OptionalBoolean;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional){}[0] + constructor (dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/OptionalBoolean = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/OptionalBoolean = ...) // dev.kord.rest.json.request/MessageCreateRequest.|(dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.OptionalBoolean;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.OptionalBoolean){}[0] final val allowedMentions // dev.kord.rest.json.request/MessageCreateRequest.allowedMentions|{}allowedMentions[0] final fun (): dev.kord.common.entity.optional/Optional // dev.kord.rest.json.request/MessageCreateRequest.allowedMentions.|(){}[0] @@ -5209,6 +5214,8 @@ final class dev.kord.rest.json.request/MessageCreateRequest { // dev.kord.rest.j final fun (): dev.kord.common.entity.optional/Optional // dev.kord.rest.json.request/MessageCreateRequest.content.|(){}[0] final val embeds // dev.kord.rest.json.request/MessageCreateRequest.embeds|{}embeds[0] final fun (): dev.kord.common.entity.optional/Optional> // dev.kord.rest.json.request/MessageCreateRequest.embeds.|(){}[0] + final val enforceNonce // dev.kord.rest.json.request/MessageCreateRequest.enforceNonce|{}enforceNonce[0] + final fun (): dev.kord.common.entity.optional/OptionalBoolean // dev.kord.rest.json.request/MessageCreateRequest.enforceNonce.|(){}[0] final val flags // dev.kord.rest.json.request/MessageCreateRequest.flags|{}flags[0] final fun (): dev.kord.common.entity.optional/Optional // dev.kord.rest.json.request/MessageCreateRequest.flags.|(){}[0] final val messageReference // dev.kord.rest.json.request/MessageCreateRequest.messageReference|{}messageReference[0] @@ -5222,6 +5229,7 @@ final class dev.kord.rest.json.request/MessageCreateRequest { // dev.kord.rest.j final fun component1(): dev.kord.common.entity.optional/Optional // dev.kord.rest.json.request/MessageCreateRequest.component1|component1(){}[0] final fun component10(): dev.kord.common.entity.optional/Optional // dev.kord.rest.json.request/MessageCreateRequest.component10|component10(){}[0] + final fun component11(): dev.kord.common.entity.optional/OptionalBoolean // dev.kord.rest.json.request/MessageCreateRequest.component11|component11(){}[0] final fun component2(): dev.kord.common.entity.optional/Optional // dev.kord.rest.json.request/MessageCreateRequest.component2|component2(){}[0] final fun component3(): dev.kord.common.entity.optional/OptionalBoolean // dev.kord.rest.json.request/MessageCreateRequest.component3|component3(){}[0] final fun component4(): dev.kord.common.entity.optional/Optional> // dev.kord.rest.json.request/MessageCreateRequest.component4|component4(){}[0] @@ -5230,7 +5238,7 @@ final class dev.kord.rest.json.request/MessageCreateRequest { // dev.kord.rest.j final fun component7(): dev.kord.common.entity.optional/Optional> // dev.kord.rest.json.request/MessageCreateRequest.component7|component7(){}[0] final fun component8(): dev.kord.common.entity.optional/Optional> // dev.kord.rest.json.request/MessageCreateRequest.component8|component8(){}[0] final fun component9(): dev.kord.common.entity.optional/Optional> // dev.kord.rest.json.request/MessageCreateRequest.component9|component9(){}[0] - final fun copy(dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/OptionalBoolean = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional = ...): dev.kord.rest.json.request/MessageCreateRequest // dev.kord.rest.json.request/MessageCreateRequest.copy|copy(dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.OptionalBoolean;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional){}[0] + final fun copy(dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/OptionalBoolean = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional> = ..., dev.kord.common.entity.optional/Optional = ..., dev.kord.common.entity.optional/OptionalBoolean = ...): dev.kord.rest.json.request/MessageCreateRequest // dev.kord.rest.json.request/MessageCreateRequest.copy|copy(dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.OptionalBoolean;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional>;dev.kord.common.entity.optional.Optional;dev.kord.common.entity.optional.OptionalBoolean){}[0] final fun equals(kotlin/Any?): kotlin/Boolean // dev.kord.rest.json.request/MessageCreateRequest.equals|equals(kotlin.Any?){}[0] final fun hashCode(): kotlin/Int // dev.kord.rest.json.request/MessageCreateRequest.hashCode|hashCode(){}[0] final fun toString(): kotlin/String // dev.kord.rest.json.request/MessageCreateRequest.toString|toString(){}[0] @@ -6871,9 +6879,6 @@ final class dev.kord.rest/Image { // dev.kord.rest/Image|null[0] } sealed class Format { // dev.kord.rest/Image.Format|null[0] - constructor (kotlin.collections/List) // dev.kord.rest/Image.Format.|(kotlin.collections.List){}[0] - constructor (kotlin/Array...) // dev.kord.rest/Image.Format.|(kotlin.Array...){}[0] - final val extension // dev.kord.rest/Image.Format.extension|{}extension[0] final fun (): kotlin/String // dev.kord.rest/Image.Format.extension.|(){}[0] final val extensions // dev.kord.rest/Image.Format.extensions|{}extensions[0] @@ -6964,8 +6969,6 @@ final value class dev.kord.rest.ratelimit/Total { // dev.kord.rest.ratelimit/Tot } sealed class <#A: kotlin/Any, #B: kotlin/Any?> dev.kord.rest.request/Request { // dev.kord.rest.request/Request|null[0] - constructor (kotlin/String = ...) // dev.kord.rest.request/Request.|(kotlin.String){}[0] - abstract val body // dev.kord.rest.request/Request.body|{}body[0] abstract fun (): dev.kord.rest.request/RequestBody<#A>? // dev.kord.rest.request/Request.body.|(){}[0] abstract val files // dev.kord.rest.request/Request.files|{}files[0] @@ -6985,8 +6988,6 @@ sealed class <#A: kotlin/Any, #B: kotlin/Any?> dev.kord.rest.request/Request { / } sealed class <#A: kotlin/Any?, #B: dev.kord.common.entity/Choice> dev.kord.rest.builder.interaction/BaseChoiceBuilder : dev.kord.rest.builder.interaction/OptionsBuilder { // dev.kord.rest.builder.interaction/BaseChoiceBuilder|null[0] - constructor (kotlin/String, kotlin/String, dev.kord.common.entity/ApplicationCommandOptionType) // dev.kord.rest.builder.interaction/BaseChoiceBuilder.|(kotlin.String;kotlin.String;dev.kord.common.entity.ApplicationCommandOptionType){}[0] - final var choices // dev.kord.rest.builder.interaction/BaseChoiceBuilder.choices|{}choices[0] final fun (): kotlin.collections/MutableList<#B>? // dev.kord.rest.builder.interaction/BaseChoiceBuilder.choices.|(){}[0] final fun (kotlin.collections/MutableList<#B>?) // dev.kord.rest.builder.interaction/BaseChoiceBuilder.choices.|(kotlin.collections.MutableList<1:1>?){}[0] @@ -6997,9 +6998,6 @@ sealed class <#A: kotlin/Any?, #B: dev.kord.common.entity/Choice> dev.kord.rest. } sealed class <#A: kotlin/Any?> dev.kord.rest.route/Route { // dev.kord.rest.route/Route|null[0] - constructor (io.ktor.http/HttpMethod, kotlin/String, dev.kord.rest.route/ResponseMapper<#A>, kotlin/Boolean = ...) // dev.kord.rest.route/Route.|(io.ktor.http.HttpMethod;kotlin.String;dev.kord.rest.route.ResponseMapper<1:0>;kotlin.Boolean){}[0] - constructor (io.ktor.http/HttpMethod, kotlin/String, kotlinx.serialization/DeserializationStrategy<#A>, kotlin/Boolean = ...) // dev.kord.rest.route/Route.|(io.ktor.http.HttpMethod;kotlin.String;kotlinx.serialization.DeserializationStrategy<1:0>;kotlin.Boolean){}[0] - final val mapper // dev.kord.rest.route/Route.mapper|{}mapper[0] final fun (): dev.kord.rest.route/ResponseMapper<#A> // dev.kord.rest.route/Route.mapper.|(){}[0] final val method // dev.kord.rest.route/Route.method|{}method[0] @@ -7413,8 +7411,6 @@ sealed class <#A: kotlin/Any?> dev.kord.rest.route/Route { // dev.kord.rest.rout } sealed class <#A: kotlin/Number, #B: dev.kord.common.entity/Choice> dev.kord.rest.builder.interaction/NumericOptionBuilder : dev.kord.rest.builder.interaction/BaseChoiceBuilder<#A, #B> { // dev.kord.rest.builder.interaction/NumericOptionBuilder|null[0] - constructor (kotlin/String, kotlin/String, dev.kord.common.entity/ApplicationCommandOptionType) // dev.kord.rest.builder.interaction/NumericOptionBuilder.|(kotlin.String;kotlin.String;dev.kord.common.entity.ApplicationCommandOptionType){}[0] - final var maxValue // dev.kord.rest.builder.interaction/NumericOptionBuilder.maxValue|{}maxValue[0] final fun (): #A? // dev.kord.rest.builder.interaction/NumericOptionBuilder.maxValue.|(){}[0] final fun (#A?) // dev.kord.rest.builder.interaction/NumericOptionBuilder.maxValue.|(1:0?){}[0] @@ -7426,8 +7422,6 @@ sealed class <#A: kotlin/Number, #B: dev.kord.common.entity/Choice> dev.kord.res } sealed class dev.kord.rest.builder.automoderation/AutoModerationActionBuilder : dev.kord.rest.builder/RequestBuilder { // dev.kord.rest.builder.automoderation/AutoModerationActionBuilder|null[0] - constructor () // dev.kord.rest.builder.automoderation/AutoModerationActionBuilder.|(){}[0] - abstract val type // dev.kord.rest.builder.automoderation/AutoModerationActionBuilder.type|{}type[0] abstract fun (): dev.kord.common.entity/AutoModerationActionType // dev.kord.rest.builder.automoderation/AutoModerationActionBuilder.type.|(){}[0] @@ -7436,8 +7430,6 @@ sealed class dev.kord.rest.builder.automoderation/AutoModerationActionBuilder : } sealed class dev.kord.rest.builder.automoderation/AutoModerationRuleCreateBuilder : dev.kord.rest.builder.automoderation/TypedAutoModerationRuleBuilder, dev.kord.rest.builder/AuditRequestBuilder { // dev.kord.rest.builder.automoderation/AutoModerationRuleCreateBuilder|null[0] - constructor (kotlin/String, dev.kord.common.entity/AutoModerationRuleEventType) // dev.kord.rest.builder.automoderation/AutoModerationRuleCreateBuilder.|(kotlin.String;dev.kord.common.entity.AutoModerationRuleEventType){}[0] - final var actions // dev.kord.rest.builder.automoderation/AutoModerationRuleCreateBuilder.actions|{}actions[0] final fun (): kotlin.collections/MutableList // dev.kord.rest.builder.automoderation/AutoModerationRuleCreateBuilder.actions.|(){}[0] final fun (kotlin.collections/MutableList) // dev.kord.rest.builder.automoderation/AutoModerationRuleCreateBuilder.actions.|(kotlin.collections.MutableList){}[0] @@ -7468,8 +7460,6 @@ sealed class dev.kord.rest.builder.automoderation/AutoModerationRuleCreateBuilde } sealed class dev.kord.rest.builder.automoderation/AutoModerationRuleModifyBuilder : dev.kord.rest.builder.automoderation/AutoModerationRuleBuilder, dev.kord.rest.builder/AuditRequestBuilder { // dev.kord.rest.builder.automoderation/AutoModerationRuleModifyBuilder|null[0] - constructor () // dev.kord.rest.builder.automoderation/AutoModerationRuleModifyBuilder.|(){}[0] - final var actions // dev.kord.rest.builder.automoderation/AutoModerationRuleModifyBuilder.actions|{}actions[0] final fun (): kotlin.collections/MutableList? // dev.kord.rest.builder.automoderation/AutoModerationRuleModifyBuilder.actions.|(){}[0] final fun (kotlin.collections/MutableList?) // dev.kord.rest.builder.automoderation/AutoModerationRuleModifyBuilder.actions.|(kotlin.collections.MutableList?){}[0] @@ -7500,8 +7490,6 @@ sealed class dev.kord.rest.builder.automoderation/AutoModerationRuleModifyBuilde } sealed class dev.kord.rest.builder.component/ActionRowComponentBuilder : dev.kord.rest.builder.component/ComponentBuilder { // dev.kord.rest.builder.component/ActionRowComponentBuilder|null[0] - constructor () // dev.kord.rest.builder.component/ActionRowComponentBuilder.|(){}[0] - final var _disabled // dev.kord.rest.builder.component/ActionRowComponentBuilder._disabled|{}_disabled[0] final fun (): dev.kord.common.entity.optional/OptionalBoolean // dev.kord.rest.builder.component/ActionRowComponentBuilder._disabled.|(){}[0] final var disabled // dev.kord.rest.builder.component/ActionRowComponentBuilder.disabled|{}disabled[0] @@ -7510,8 +7498,6 @@ sealed class dev.kord.rest.builder.component/ActionRowComponentBuilder : dev.kor } sealed class dev.kord.rest.builder.component/ButtonBuilder : dev.kord.rest.builder.component/ActionRowComponentBuilder { // dev.kord.rest.builder.component/ButtonBuilder|null[0] - constructor () // dev.kord.rest.builder.component/ButtonBuilder.|(){}[0] - final var _emoji // dev.kord.rest.builder.component/ButtonBuilder._emoji|{}_emoji[0] final fun (): dev.kord.common.entity.optional/Optional // dev.kord.rest.builder.component/ButtonBuilder._emoji.|(){}[0] final var _label // dev.kord.rest.builder.component/ButtonBuilder._label|{}_label[0] @@ -7550,8 +7536,6 @@ sealed class dev.kord.rest.builder.component/ButtonBuilder : dev.kord.rest.build } sealed class dev.kord.rest.builder.component/SelectMenuBuilder : dev.kord.rest.builder.component/ActionRowComponentBuilder { // dev.kord.rest.builder.component/SelectMenuBuilder|null[0] - constructor (kotlin/String) // dev.kord.rest.builder.component/SelectMenuBuilder.|(kotlin.String){}[0] - abstract val type // dev.kord.rest.builder.component/SelectMenuBuilder.type|{}type[0] abstract fun (): dev.kord.common.entity/ComponentType // dev.kord.rest.builder.component/SelectMenuBuilder.type.|(){}[0] @@ -7572,8 +7556,6 @@ sealed class dev.kord.rest.builder.component/SelectMenuBuilder : dev.kord.rest.b } sealed class dev.kord.rest.builder.interaction/BaseCommandOptionBuilder : dev.kord.rest.builder.interaction/OptionsBuilder { // dev.kord.rest.builder.interaction/BaseCommandOptionBuilder|null[0] - constructor (kotlin/String, kotlin/String, dev.kord.common.entity/ApplicationCommandOptionType) // dev.kord.rest.builder.interaction/BaseCommandOptionBuilder.|(kotlin.String;kotlin.String;dev.kord.common.entity.ApplicationCommandOptionType){}[0] - final var options // dev.kord.rest.builder.interaction/BaseCommandOptionBuilder.options|{}options[0] final fun (): kotlin.collections/MutableList? // dev.kord.rest.builder.interaction/BaseCommandOptionBuilder.options.|(){}[0] final fun (kotlin.collections/MutableList?) // dev.kord.rest.builder.interaction/BaseCommandOptionBuilder.options.|(kotlin.collections.MutableList?){}[0] @@ -7582,8 +7564,6 @@ sealed class dev.kord.rest.builder.interaction/BaseCommandOptionBuilder : dev.ko } sealed class dev.kord.rest.builder.interaction/MultiApplicationCommandBuilder { // dev.kord.rest.builder.interaction/MultiApplicationCommandBuilder|null[0] - constructor () // dev.kord.rest.builder.interaction/MultiApplicationCommandBuilder.|(){}[0] - final val commands // dev.kord.rest.builder.interaction/MultiApplicationCommandBuilder.commands|{}commands[0] final fun (): kotlin.collections/MutableList // dev.kord.rest.builder.interaction/MultiApplicationCommandBuilder.commands.|(){}[0] @@ -7591,8 +7571,6 @@ sealed class dev.kord.rest.builder.interaction/MultiApplicationCommandBuilder { } sealed class dev.kord.rest.builder.interaction/OptionsBuilder : dev.kord.rest.builder.interaction/LocalizedDescriptionCreateBuilder, dev.kord.rest.builder.interaction/LocalizedNameCreateBuilder, dev.kord.rest.builder/RequestBuilder { // dev.kord.rest.builder.interaction/OptionsBuilder|null[0] - constructor (kotlin/String, kotlin/String, dev.kord.common.entity/ApplicationCommandOptionType) // dev.kord.rest.builder.interaction/OptionsBuilder.|(kotlin.String;kotlin.String;dev.kord.common.entity.ApplicationCommandOptionType){}[0] - final val type // dev.kord.rest.builder.interaction/OptionsBuilder.type|{}type[0] final fun (): dev.kord.common.entity/ApplicationCommandOptionType // dev.kord.rest.builder.interaction/OptionsBuilder.type.|(){}[0] @@ -7622,8 +7600,6 @@ sealed class dev.kord.rest.builder.interaction/OptionsBuilder : dev.kord.rest.bu } sealed class dev.kord.rest.builder.message.create/AbstractMessageCreateBuilder : dev.kord.rest.builder.message.create/MessageCreateBuilder { // dev.kord.rest.builder.message.create/AbstractMessageCreateBuilder|null[0] - constructor () // dev.kord.rest.builder.message.create/AbstractMessageCreateBuilder.|(){}[0] - final val files // dev.kord.rest.builder.message.create/AbstractMessageCreateBuilder.files|{}files[0] final fun (): kotlin.collections/MutableList // dev.kord.rest.builder.message.create/AbstractMessageCreateBuilder.files.|(){}[0] @@ -7657,8 +7633,6 @@ sealed class dev.kord.rest.builder.message.create/AbstractMessageCreateBuilder : } sealed class dev.kord.rest.builder.message.modify/AbstractMessageModifyBuilder : dev.kord.rest.builder.message.modify/MessageModifyBuilder { // dev.kord.rest.builder.message.modify/AbstractMessageModifyBuilder|null[0] - constructor () // dev.kord.rest.builder.message.modify/AbstractMessageModifyBuilder.|(){}[0] - final val files // dev.kord.rest.builder.message.modify/AbstractMessageModifyBuilder.files|{}files[0] final fun (): kotlin.collections/MutableList // dev.kord.rest.builder.message.modify/AbstractMessageModifyBuilder.files.|(){}[0] @@ -7686,8 +7660,6 @@ sealed class dev.kord.rest.builder.message.modify/AbstractMessageModifyBuilder : } sealed class dev.kord.rest.ratelimit/RequestResponse { // dev.kord.rest.ratelimit/RequestResponse|null[0] - constructor () // dev.kord.rest.ratelimit/RequestResponse.|(){}[0] - abstract val bucketKey // dev.kord.rest.ratelimit/RequestResponse.bucketKey|{}bucketKey[0] abstract fun (): dev.kord.rest.ratelimit/BucketKey? // dev.kord.rest.ratelimit/RequestResponse.bucketKey.|(){}[0] abstract val rateLimit // dev.kord.rest.ratelimit/RequestResponse.rateLimit|{}rateLimit[0] @@ -7765,8 +7737,6 @@ sealed class dev.kord.rest.ratelimit/RequestResponse { // dev.kord.rest.ratelimi } sealed class dev.kord.rest.request/RequestIdentifier { // dev.kord.rest.request/RequestIdentifier|null[0] - constructor () // dev.kord.rest.request/RequestIdentifier.|(){}[0] - final class MajorParamIdentifier : dev.kord.rest.request/RequestIdentifier { // dev.kord.rest.request/RequestIdentifier.MajorParamIdentifier|null[0] constructor (dev.kord.rest.route/Route<*>, kotlin/String) // dev.kord.rest.request/RequestIdentifier.MajorParamIdentifier.|(dev.kord.rest.route.Route<*>;kotlin.String){}[0] diff --git a/rest/src/commonMain/kotlin/builder/automoderation/AutoModerationRuleBuilder.kt b/rest/src/commonMain/kotlin/builder/automoderation/AutoModerationRuleBuilder.kt index b9bd19072b9..8b91fd43bce 100644 --- a/rest/src/commonMain/kotlin/builder/automoderation/AutoModerationRuleBuilder.kt +++ b/rest/src/commonMain/kotlin/builder/automoderation/AutoModerationRuleBuilder.kt @@ -282,18 +282,24 @@ public sealed interface KeywordPresetAutoModerationRuleBuilder : AllowedKeywords override val triggerType: KeywordPreset get() = KeywordPreset /** The internally pre-defined wordsets which will be searched for in content. */ - public val presets: MutableList? + public var presets: MutableList? /** * Use this to set [presets][KeywordPresetAutoModerationRuleBuilder.presets] for * [KeywordPresetAutoModerationRuleBuilder]. */ + @Deprecated( + "This can be replaced with 'presets', it is now a 'var'. The deprecation level will be raised to ERROR in " + + "0.16.0, to HIDDEN in 0.17.0, and this declaration will be removed in 0.18.0.", + ReplaceWith("this.run { this@run.presets = presets }", imports = ["kotlin.run"]), + DeprecationLevel.WARNING, + ) public fun assignPresets(presets: MutableList) } /** Add a [preset] to [presets][KeywordPresetAutoModerationRuleBuilder.presets]. */ public fun KeywordPresetAutoModerationRuleBuilder.preset(preset: AutoModerationRuleKeywordPresetType) { - presets?.add(preset) ?: assignPresets(mutableListOf(preset)) + presets?.add(preset) ?: run { presets = mutableListOf(preset) } } diff --git a/rest/src/commonMain/kotlin/builder/automoderation/AutoModerationRuleCreateBuilder.kt b/rest/src/commonMain/kotlin/builder/automoderation/AutoModerationRuleCreateBuilder.kt index 82acfabeb75..2a90eaee32f 100644 --- a/rest/src/commonMain/kotlin/builder/automoderation/AutoModerationRuleCreateBuilder.kt +++ b/rest/src/commonMain/kotlin/builder/automoderation/AutoModerationRuleCreateBuilder.kt @@ -74,8 +74,8 @@ public class KeywordAutoModerationRuleCreateBuilder( private var _allowedKeywords: Optional> = Optional.Missing() override var allowedKeywords: MutableList? by ::_allowedKeywords.delegate() - // one of keywords or regexPatterns is required, don't bother to send missing trigger metadata if both are missing - override fun buildTriggerMetadata(): Optional.Value = + // triggerMetadata is required for Keyword rules + override fun buildTriggerMetadata(): Optional = DiscordAutoModerationRuleTriggerMetadata( keywordFilter = _keywords.mapCopy(), regexPatterns = _regexPatterns.mapCopy(), @@ -97,9 +97,16 @@ public class KeywordPresetAutoModerationRuleCreateBuilder( eventType: AutoModerationRuleEventType, ) : AutoModerationRuleCreateBuilder(name, eventType), KeywordPresetAutoModerationRuleBuilder { - override var presets: MutableList = mutableListOf() + private var _presets: Optional> = Optional.Missing() + override var presets: MutableList? by ::_presets.delegate() /** @suppress Use `this.presets = presets` instead. */ + @Deprecated( + "Use 'this.presets = presets' instead. The deprecation level will be raised to ERROR in 0.16.0, to HIDDEN in " + + "0.17.0, and this declaration will be removed in 0.18.0.", + ReplaceWith("this.run { this@run.presets = presets }", imports = ["kotlin.run"]), + DeprecationLevel.WARNING, + ) override fun assignPresets(presets: MutableList) { this.presets = presets } @@ -107,9 +114,10 @@ public class KeywordPresetAutoModerationRuleCreateBuilder( private var _allowedKeywords: Optional> = Optional.Missing() override var allowedKeywords: MutableList? by ::_allowedKeywords.delegate() - override fun buildTriggerMetadata(): Optional.Value = + // triggerMetadata is required for KeywordPreset rules + override fun buildTriggerMetadata(): Optional = DiscordAutoModerationRuleTriggerMetadata( - presets = presets.toList().optional(), + presets = _presets.mapCopy(), allowList = _allowedKeywords.mapCopy(), ).optional() } @@ -127,9 +135,8 @@ public class MentionSpamAutoModerationRuleCreateBuilder( private var _mentionRaidProtectionEnabled: OptionalBoolean = OptionalBoolean.Missing override var mentionRaidProtectionEnabled: Boolean? by ::_mentionRaidProtectionEnabled.delegate() - // one of mentionTotalLimit or mentionRaidProtectionEnabled is required, don't bother to send missing trigger - // metadata if both are missing - override fun buildTriggerMetadata(): Optional.Value = + // triggerMetadata is required for MentionSpam rules + override fun buildTriggerMetadata(): Optional = DiscordAutoModerationRuleTriggerMetadata( mentionTotalLimit = _mentionLimit, mentionRaidProtectionEnabled = _mentionRaidProtectionEnabled, diff --git a/rest/src/commonMain/kotlin/builder/automoderation/AutoModerationRuleModifyBuilder.kt b/rest/src/commonMain/kotlin/builder/automoderation/AutoModerationRuleModifyBuilder.kt index 0bbeb537c30..133595999e9 100644 --- a/rest/src/commonMain/kotlin/builder/automoderation/AutoModerationRuleModifyBuilder.kt +++ b/rest/src/commonMain/kotlin/builder/automoderation/AutoModerationRuleModifyBuilder.kt @@ -103,7 +103,7 @@ public class KeywordAutoModerationRuleModifyBuilder : } /** A [SpamAutoModerationRuleBuilder] for building [AutoModerationRuleModifyRequest]s. */ -@Suppress("CanSealedSubClassBeObject") // has state in super class +@Suppress("CanSealedSubClassBeObject") // superclass is mutable @KordDsl public class SpamAutoModerationRuleModifyBuilder : AutoModerationRuleModifyBuilder(), @@ -119,6 +119,12 @@ public class KeywordPresetAutoModerationRuleModifyBuilder : override var presets: MutableList? by ::_presets.delegate() /** @suppress Use `this.presets = presets` instead. */ + @Deprecated( + "Use 'this.presets = presets' instead. The deprecation level will be raised to ERROR in 0.16.0, to HIDDEN in " + + "0.17.0, and this declaration will be removed in 0.18.0.", + ReplaceWith("this.run { this@run.presets = presets }", imports = ["kotlin.run"]), + DeprecationLevel.WARNING, + ) override fun assignPresets(presets: MutableList) { this.presets = presets } diff --git a/rest/src/commonMain/kotlin/builder/message/create/UserMessageCreateBuilder.kt b/rest/src/commonMain/kotlin/builder/message/create/UserMessageCreateBuilder.kt index bd13c9ebf97..99a56168e0b 100644 --- a/rest/src/commonMain/kotlin/builder/message/create/UserMessageCreateBuilder.kt +++ b/rest/src/commonMain/kotlin/builder/message/create/UserMessageCreateBuilder.kt @@ -8,7 +8,6 @@ import dev.kord.common.entity.optional.* import dev.kord.common.entity.optional.delegate.delegate import dev.kord.rest.builder.RequestBuilder import dev.kord.rest.builder.message.AllowedMentionsBuilder -import dev.kord.rest.builder.message.allowedMentions import dev.kord.rest.builder.message.buildMessageFlags import dev.kord.rest.json.request.MessageCreateRequest import dev.kord.rest.json.request.MultipartMessageCreateRequest @@ -25,6 +24,15 @@ public class UserMessageCreateBuilder : AbstractMessageCreateBuilder(), RequestB /** A value that can be used to verify a message was sent (up to 25 characters). */ public var nonce: String? by ::_nonce.delegate() + private var _enforceNonce: OptionalBoolean = OptionalBoolean.Missing + + /** + * If `true` and [nonce] is present, it will be checked for uniqueness in the past few minutes. + * If another message was created by the same author with the same nonce, + * that message will be returned and no new message will be created. + */ + public var enforceNonce: Boolean? by ::_enforceNonce.delegate() + private var _messageReference: OptionalSnowflake = OptionalSnowflake.Missing /** @@ -62,12 +70,14 @@ public class UserMessageCreateBuilder : AbstractMessageCreateBuilder(), RequestB messageReference = when (val id = _messageReference) { is OptionalSnowflake.Value -> Optional.Value(DiscordMessageReference(id = id, failIfNotExists = _failIfNotExists)) + is OptionalSnowflake.Missing -> Optional.Missing() }, components = _components.mapList { it.build() }, stickerIds = _stickerIds.mapCopy(), attachments = _attachments.mapList { it.toRequest() }, flags = buildMessageFlags(flags, suppressEmbeds, suppressNotifications), + enforceNonce = _enforceNonce, ), files = files.toList(), ) diff --git a/rest/src/commonMain/kotlin/json/request/MessageRequests.kt b/rest/src/commonMain/kotlin/json/request/MessageRequests.kt index f451d6da3b3..9444374bcc0 100644 --- a/rest/src/commonMain/kotlin/json/request/MessageRequests.kt +++ b/rest/src/commonMain/kotlin/json/request/MessageRequests.kt @@ -23,7 +23,9 @@ public data class MessageCreateRequest( @SerialName("sticker_ids") val stickerIds: Optional> = Optional.Missing(), val attachments: Optional> = Optional.Missing(), - val flags: Optional = Optional.Missing() + val flags: Optional = Optional.Missing(), + @SerialName("enforce_nonce") + val enforceNonce: OptionalBoolean = OptionalBoolean.Missing, ) public data class MultipartMessageCreateRequest( diff --git a/rest/src/commonMain/kotlin/route/DiscordCdn.kt b/rest/src/commonMain/kotlin/route/DiscordCdn.kt index 0ea69a8aade..994578eaad7 100644 --- a/rest/src/commonMain/kotlin/route/DiscordCdn.kt +++ b/rest/src/commonMain/kotlin/route/DiscordCdn.kt @@ -21,7 +21,8 @@ public object DiscordCdn { public fun userBanner(userId: Snowflake, hash: String): CdnUrl = CdnUrl("$BASE_URL/banners/$userId/$hash") @Deprecated( - "Renamed to 'defaultUserAvatar' to align name with documentation and overload taking Snowflake.", + "Renamed to 'defaultUserAvatar' to align name with documentation and overload taking Snowflake. This " + + "declaration will be removed in 0.16.0.", ReplaceWith("DiscordCdn.defaultUserAvatar(discriminator)", imports = ["dev.kord.rest.route.DiscordCdn"]), DeprecationLevel.HIDDEN, ) diff --git a/settings.gradle.kts b/settings.gradle.kts index d0ab04959b0..2a6e06084e9 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,8 +1,3 @@ -plugins { - // https://github.com/gradle/foojay-toolchains - id("org.gradle.toolchains.foojay-resolver-convention") version "0.8.0" -} - rootProject.name = "kord" include( diff --git a/voice/README.md b/voice/README.md index e3daf9504b7..b46ce67bd2e 100644 --- a/voice/README.md +++ b/voice/README.md @@ -124,19 +124,19 @@ processIncomingAudio(connection.streams.incomingAudioFrames) ## Installation -Replace `{version}` with the latest version number on maven central. +See the root [README](../README.md#installation) for more information. -[![Download](https://img.shields.io/maven-central/v/dev.kord/kord-voice.svg?color=fb5502&label=Kord&logoColor=05c1fd&style=for-the-badge)](https://search.maven.org/search?q=g:%22dev.kord%22%20AND%20a:%22kord-voice%22) +### Gradle (Kotlin) -### Gradle (groovy) -```groovy +```kotlin dependencies { implementation("dev.kord:kord-voice:{version}") } ``` -### Gradle (kotlin) -```kotlin +### Gradle (Groovy) + +```groovy dependencies { implementation("dev.kord:kord-voice:{version}") } @@ -144,7 +144,6 @@ dependencies { ### Maven -##### Kord Snapshots Repository (Optional): ```xml dev.kord diff --git a/voice/src/commonMain/kotlin/gateway/VoiceEvent.kt b/voice/src/commonMain/kotlin/gateway/VoiceEvent.kt index 711f216c223..edce66dbd63 100644 --- a/voice/src/commonMain/kotlin/gateway/VoiceEvent.kt +++ b/voice/src/commonMain/kotlin/gateway/VoiceEvent.kt @@ -109,7 +109,8 @@ public data class Speaking( public object Resumed : VoiceEvent() { @Deprecated( "'Resumed' is no longer serializable, deserialize it with 'VoiceEvent.DeserializationStrategy' instead. " + - "Deprecated without a replacement.", + "Deprecated without a replacement. The deprecation level will be raised to HIDDEN in 0.16.0 and this " + + "declaration will be removed in 0.17.0.", level = DeprecationLevel.ERROR, ) public fun serializer(): KSerializer = Serializer