Releases: kordlib/kord
0.15.0
0.15.0
Additions
- Add
User.isSelf
(by @Taubsie in #950) - Publish snapshots to https://repo.kord.dev/snapshots (#961)
- Document deprecation cycle of deprecated declarations (#969)
- Add
UserMessageCreateBuilder.enforceNonce
(by @DRSchlaubi in #971) - Implement Monetization (by @viztea in #932)
- Add
MemberProfileAutoModerationRule
(#974)
Changes
- Bump
DeprecationLevel
s after 0.14.0 (#944) - Update Auto Moderation builders (#979)
- Link to JDK 23 in Dokka output (#980)
Fixes
- Fix deserialization of members (by @NoComment1105 in #955)
- Fix deserialization of
Heartbeat
events (#957) - Fix
getMemberOrNull
andgetGuildMembers
caching only user data (by @Galarzaa90 in #964) - Fix misuse of reified type parameters (#981)
Dependencies
Updated in #942, #954, #958, #975, #976, and #986 (not including dependencies only needed for developing Kord)
- Kotlin 1.9.24 -> 2.0.21
- Ktor 2.3.11 -> 3.0.0
- kotlinx.coroutines 1.8.1 -> 1.9.0
- kotlinx.serialization 1.6.3 -> 1.7.3
- kotlinx-datetime 0.6.0 -> 0.6.1
- kord-cache 0.4.0 -> 0.5.4
- kotlin-logging 6.0.9 -> 7.0.0
- SLF4J 2.0.13 -> 2.0.16
- kotlin-node 20.11.30-pre.751 -> 22.5.4-pre.818
- kotlin-multiplatform-bignum 0.3.9 -> 0.3.10
- Stately 2.0.7 -> 2.1.0
- AtomicFU 0.24.0 -> 0.25.0
0.14.0
0.14.0
Additions
- Support other
SerialFormat
s inLongOrStringSerializer
(#937)
Changes
- Bump
DeprecationLevel
s after 0.13.0 (#908) - Rewrite
Event.DeserializationStrategy
(#923) - Deprecate application command events (#927)
- Rewrite
VoiceEvent.DeserializationStrategy
(#925) - Switch to OkHttp as http client on jvm (by @DRSchlaubi in #928)
Fixes
DiscordVoiceState.member
uses incorrect serial name (by @viztea in #914)- Use actual zero width space in
EmbedBuilder
(by @matytyma in #917) - Fix some cache links (#934)
Dependencies
Updated in #920, #929 and #943
- Gradle 8.5 -> 8.7
- Kotlin 1.9.21 -> 1.9.24
- Ktor 2.3.7 -> 2.3.11
- kotlinx.coroutines 1.7.3 -> 1.8.1
- kotlinx.serialization 1.6.2 -> 1.6.3
- kotlinx-datetime 0.5.0 -> 0.6.0
- kotlin-logging 6.0.1 -> 6.0.9
- SLF4J 2.0.9 -> 2.0.13
- kotlin-node 18.16.12-pre.619 -> 20.11.30-pre.751
- kotlin-multiplatform-bignum 0.3.8 -> 0.3.9
- Stately 2.0.6 -> 2.0.7
- KSP 1.9.21-1.0.16 -> 1.9.24-1.0.20
- KotlinPoet 1.15.3 -> 1.16.0
- JUnit Jupiter 5.10.1 -> 5.10.2
- MockK 1.13.8 -> 1.13.11
- Dokka 1.9.10 -> 1.9.20
- AtomicFU 0.23.1 -> 0.24.0
- Binary compatibility validator 0.13.2 -> 0.15.0-Beta.2
- gradle-buildconfig-plugin 5.1.0 -> 5.3.5
- Foojay Toolchains Plugin 0.7.0 -> 0.8.0
- Replace gradle/gradle-build-action with gradle/actions/setup-gradle
- Replace gradle/wrapper-validation-action with gradle/actions/wrapper-validation
House-keeping
0.13.1
0.13.1
This release fixes an exception when trying to deserialize Permissions
contained in GuildAuditLogEntryCreateEvent
s. Kord expected to receive JSON strings while Discord is sending JSON numbers.
0.13.0
0.13.0
This release fixes a bug where the Spanish Latin America Locale
(es-419) couldn't be deserialized correctly, so users
with that Locale
couldn't interact with Kord bots via interactions.
Additions
- Add
WebhookMessageCreateBuilder.appliedTags
(by @lukellmann in #899)
Changes
- Bump
DeprecationLevel
s after 0.12.0 (by @lukellmann in #896) - Remove deprecation from
User.discriminator
andUser.tag
(by @lukellmann in #901) - Align
ArchiveDuration
with generated kord enums (by @lukellmann in #902) - Deprecate
DiscordBitSetSerializer
andLocale.Serializer
(by @lukellmann in #903)
Fixes
- Support Spanish (Latin America) (by @gdude2002 in #906)
Dependencies
Updated in #900
- Gradle 8.4 -> 8.5
- Kotlin 1.9.20 -> 1.9.21
- Ktor 2.3.6 -> 2.3.7
- kotlinx.serialization 1.6.1 -> 1.6.2
- kotlinx-datetime 0.4.1 -> 0.5.0
- kotlin-logging 3.0.5 -> 6.0.1
- Stately 2.0.5 -> 2.0.6
- KSP 1.9.20-1.0.14 -> 1.9.21-1.0.16
- KotlinPoet 1.15.1 -> 1.15.3
- AtomicFU 0.23.0 -> 0.23.1
- gradle-buildconfig-plugin 4.2.0 -> 5.1.0
- actions/setup-java v3 -> v4
0.12.0
0.12.0
Additions
- Add interaction permissions to
MemberData
andMember
(by @Tmpod in #884) - Add
SelectDefaultValue
s (by @lukellmann in #881) - Add
Permission.CreateGuildExpressions
andPermission.CreateEvents
(by @lukellmann in #892) - Add
StageInstanceCreateRequest.guildScheduledEventId
(by @lukellmann in #893)
Changes
- Bump
DeprecationLevel
s (by @lukellmann in #879) - Use debug log level for unknown gateway event names (by @viztea in #890)
- Add common
MessageBuilder
supertype (by @lukellmann in #891)
Fixes
- Fix
DiscordAuditLogEntry.userId
nullability (by @lukellmann in #885)
Dependencies
Updated in #883, #888 and #894
- Gradle 8.3 -> 8.4
- Kotlin 1.9.10 -> 1.9.20
- Ktor 2.3.4 -> 2.3.6
- kotlinx.serialization 1.6.0 -> 1.6.1
- Stately 2.0.2 -> 2.0.5
- KSP 1.9.10-1.0.13 -> 1.9.20-1.0.14
- KotlinPoet 1.14.2 -> 1.15.1
- JUnit 5 5.10.0 -> 5.10.1
- MockK 1.13.7 -> 1.13.8
- Dokka 1.9.0 -> 1.9.10
- AtomicFU 0.22.0 -> 0.23.0
- gradle-buildconfig-plugin 4.1.2 -> 4.2.0
0.11.1
0.11.1
Republication of 0.11.0 with no changes.
The published artifacts for dev.kord:kord-ksp-annotations-js:0.11.0
were missing kord-ksp-annotations-js-0.11.0.klib
which would cause an error like the following for Kotlin/JS projects trying to use Kord 0.11.0:
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine the dependencies of task ':kotlinNpmInstall'.
> Could not find ksp-annotations-js.klib (dev.kord:kord-ksp-annotations-js:0.11.0).
Searched in the following locations:
https://repo.maven.apache.org/maven2/dev/kord/kord-ksp-annotations-js/0.11.0/kord-ksp-annotations-js-0.11.0.klib
* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.
0.11.0
0.11.0
Additions
- Add interaction channel field (by @NoComment1105 in #810)
- Add
avatar_decoration
to user (by @NoComment1105 in #852) - Add stage channel create functions (by @NoComment1105 in #856)
- Implement custom status (by @DRSchlaubi and @lukellmann in #857)
- Allow modifying
GuildMemberFlags
(by @lukellmann in #865) - Add
RoleFlags
(by @lukellmann in #866) - Add
AttachmentFlags
(by @lukellmann in #867) - Add
MediaChannel
s (by @lukellmann in #853) - Allow modifying
GuildOnboarding
(by @lukellmann in #819) - Add
ReactionAddEvent.messageAuthorId
(by @lukellmann in #873) - Add new
AuditLogEvent
s (by @lukellmann in #874) - Add
with_counts
param forGET
/users/@me/guilds
(by @lukellmann in #875) - Add
TeamMemberRole
(by @lukellmann in #876) - Add
AuditLogEntryOptionalInfo.integrationType
(by @lukellmann in #877)
Changes
- Bump
DeprecationLevel
s (by @lukellmann in #844) - Generate bit flags (by @DRSchlaubi and @lukellmann in #766)
- Bring kord enum API closer to bit flags API (by @lukellmann in #861)
- Replace companion object serializers (by @lukellmann in #869)
- Remove type parameter from
Choice
(by @lukellmann in #868)
Fixes
- Correctly close zlib stream when gateway disconnects (by @DRSchlaubi in #849)
- Fix usage of
BigInteger
inDiscordBitSet.value
(by @lukellmann in #864) - Fix deserialization of
DiscordApplication
(by @lukellmann in #871)
Dependencies
Updated in #842, #859 and #872
- Gradle 8.1 -> 8.3
- Kotlin 1.8.21 -> 1.9.10
- Ktor 2.3.0 -> 2.3.4
- kotlinx.coroutines 1.7.1 -> 1.7.3
- kotlinx.serialization 1.5.1 -> 1.6.0
- kotlinx-datetime 0.4.0 -> 0.4.1
- kotlin-node 18.16.3-pre.546 -> 18.16.12-pre.619
- Stately 2.0.0-rc1 -> 2.0.2
- KSP 1.8.21-1.0.11 -> 1.9.10-1.0.13
- KotlinPoet 1.13.2 -> 1.14.2
- JUnit 5 5.9.3 -> 5.10.0
- MockK 1.13.5 -> 1.13.7
- SLF4J 2.0.7 -> 2.0.9
- Dokka 1.8.10 -> 1.9.0
- AtomicFU 0.20.2 -> 0.22.0
- Binary compatibility validator 0.13.1 -> 0.13.2
- gradle-buildconfig-plugin 4.0.4 -> 4.1.2
- Foojay Toolchains Plugin 0.4.0 -> 0.7.0
- actions/checkout v3 -> v4
House-keeping
- Remove unnecessary
RedundantVisibilityModifier
suppression (by @lukellmann in #858) - Don't use value class
Reset
withAtomicRef
(by @DRSchlaubi and @lukellmann in #863)
0.10.0
0.10.0
Additions
- Support new username system (by @lukellmann in #825)
- Add
Permission.UseExternalSounds
(by @lukellmann in #833) - Add new error codes (by @lukellmann in #834)
- Add mention raid protection to Auto Moderation (by @lukellmann in #830)
- Add support for Application Role Connection Metadata (by @lukellmann in #836)
- Add support for join raid protection (by @lukellmann in #832)
Changes
- Bump
DeprecationLevel
s (by @lukellmann in #821) - Remove no longer needed pipeline interception (by @lukellmann in #824)
- Change
parentId
andlockPermissionsToParent
to Optionals (by @Tmpod in #828)
Fixes
- Fix deserializing embeds with
null
author url (by @lukellmann in #839)
Dependencies
Updated in #826
- Kotlin 1.8.10 -> 1.8.21
- Ktor 2.2.4 -> 2.3.0
- kotlinx.coroutines 1.6.4 -> 1.7.1
- kotlinx.serialization 1.5.0 -> 1.5.1
- kotlin-node 18.14.0-pre.502 -> 18.16.3-pre.546
- KSP 1.8.10-1.0.9 -> 1.8.21-1.0.11
- KotlinPoet 1.12.0 -> 1.13.2
- JUnit 5 5.9.2 -> 5.9.3
- MockK 1.13.4 -> 1.13.5
- AtomicFU 0.20.0 -> 0.20.2
- Binary compatibility validator 0.13.0 -> 0.13.1
- gradle-buildconfig-plugin 3.1.0 -> 4.0.4
House-keeping
- Simplify CI (by @lukellmann in #823)
- Use main as the permanent default branch (by @lukellmann in #831)
0.9.0
0.9.0
Breaking Changes
This release introduces a number of breaking changes, please refer to #775 for more information
Additions
- Support Kotlin/JS (by @DRSchlaubi and @lukellmann in #775)
- Add support for voice messages (by @DRSchlaubi and @lukellmann in #814)
Changes
- Bump
DeprecationLevel
s (by @lukellmann in #794) - Replace
Icon
withAsset
(by @oluiss and @lukellmann in #703)
Fixes
- Fix some
EntitySupplyStrategy
toString
s being incorrect (by @GreemDev in #811) - Fix List Nitro Sticker Packs endpoint (by @lukellmann in #816)
- Fix
InstantInEpochMillisecondsSerializerTest
on JS (by @lukellmann in #818)
Dependencies
Updated in #783
- Gradle 8.0.2 -> 8.1
House-keeping
- Add inspection for missing
@KordDsl
(by @DRSchlaubi in #800) - Fix Qodana findings (by @lukellmann and @DRSchlaubi in #812)
- Clean up (by @lukellmann in #813)
- Improve
GenerateKordEnum
andAnnotationArguments
(by @lukellmann in #817)
0.8.3
0.8.3
Additions
- Add
ApplicationFlag.ApplicationAutoModerationRuleCreateBadge
(by @NoComment1105 in #802) - Add error code 50163 (by @NoComment1105 in #803)
- Add
Guild.maxStageVideoChannelUsers
(by @NoComment1105 in #804) - Add guild onboarding (by @NoComment1105 and @lukellmann in #805)