Thanks to the following for their contributions:
- @acdenisSK
- @AldanTanneo
- @almeidx
- @Atakku
- @drklee3
- @Friz64
- @HarmoGlace
- @JellyWX
- @JohnTheCoolingFan
- @KaDiWa4
- @kafinsalim
- @kangalioo
- @kristopherbullinger
- @lhjt
- @lo48576
- @mbenoukaiss
- @mdonoughe
- @Milo123459
- @mkrasnitski
- @nickelc
- @OverHash
- @pascalharp
- @Splingush
- @Squili
- @Th3-M4jor
- @Vaimer9
- @vicky5124
- @woongzeyi
Added
- [misc] Implement missing fields, methods, endpoints, and other values that are documented (@vicky5124) c:be5cb54
- [builder] Add a
timeout
doc alias to various methods (@Milo123459) c:1d05a1e - [builder] Add support for enabling slowmode on thread creation (@nickelc) c:69896e0
- [ci] Add GitHub Actions workflow for labeling pull requests (@nickelc) c:93b66d0
- [model] Add
banner
andaccent_color
fields toUser
(@drklee3) c:9e10d54 - [client] Add
get_*
methods for manyClientBuilder
fields (@kangalioo) c:90dae53 - [model] Add support for member timeout (@kristopherbullinger) c:944cd54
- [utils] Add
get_webhook_from_url
(@mkrasnitski) c:b026f00 c:6bd2f74 c:7b89775 - [examples] Add an example for message components (@pascalharp) c:ee00e92
- [examples] Add step for installing
cargo make
to the Running Examples section (@kafinsalim) c:47a297b - [model] Add support for
min_value
andmax_value
to slash command options (@kangalioo) c:cfd518e - [model] Add
SUPPRESS_JOIN_NOTIFICATION_REPLIES
system channel flag (@almeidx) c:6121fd0 - [model] Add support for Autocomplete interactions (@Th3-M4jor) c:c322657
- [misc] Format code in documentation comments (@acdenisSK) c:5b84896
- [client] Add a method to
ClientBuilder
for retrieving the current token (@kangalioo) c:6f87d25 - [utils] Add Discord's new branding, CSS & role colours (@nickelc) c:c0463c0
- [misc] Add
poise
to the "Projects extending Serenity" section (@vicky5124) c:bfb5f13 - [model] Add channel types to application command options (@vicky5124) c:5a700f7
- [model] Add new audit log models for
STAGE_INSTANCE
,STICKER
, andTHREAD
(@woongzeyi) c:0bc3ce0 - [model] Add
defer
helper methods for deferring interactions (@Milo123459) c:d50628e - [examples] Add a database example using SQLite (@kangalioo) c:02a5e15
- [model] Add support for editing threads (@lhjt) c:afeb76e
- [ci] Use a better cache designed for Rust software in CI (@Milo123459) c:c74162c
- [examples] Add a simple web dashboard example (@vicky5124) c:6c5aa4d
- [model] Add new invite fields (@vicky5124) c:cf4e216
- [model] Add
ApplicationCommand::version
field (@HarmoGlace) c:c85d44a - [http] Add the guild active threads endpoint (@HarmoGlace) c:93d6ab8
- [builder] Implement
From<Datetime>
forTimestamp
(@drklee3) c:b905554 - [command_attr] Add undocumented
#[required_permissions(perms)]
requirements (@woongzeyi) c:f9de6c5 - [http] Add paths to HTTP errors (@Splingush) c:2da46a8
- [builder] Add a
set_component
method to respective builders (@JellyWX) c:99eba2b - [model] Support context menus (@HarmoGlace) c:e87293e
- [model] Add
ContextMenuCommand
message type (@HarmoGlace) c:2a571d3
Changed
- [model] Mark the
model::guild::GuildStatus
enum as deprecated (@nickelc) c:bd1342e - [model] Suppress deprecation warning for the use of
Region
(@nickelc) c:2dcb9b3 - [builder] Deprecate
slow_mode_rate
/rate_limit
methods and field (@nickelc) c:5c1e31e - [builder] Update the notice about the max value for the "per user" ratelimit (@nickelc) c:32f4430
- [model] Mark the
model::guild::Region
enum as deprecated (@nickelc) c:6d476cf - [model] Improve the download of
Attachment
s by callingBytes::to_vec
(@nickelc) c:f630f32 - [examples] Refactor examples 03 and 13 to better use the builder pattern (@mkrasnitski) c:34c2f22
- [examples] Refactor example 09 to more idiomatically use the builder pattern (@mkrasnitski) c:4f7dad7
- [misc] Increase MSRV to 1.51 (@acdenisSK) c:04fc541
- [model] Use the
write_all
variant in theAttachment::download
example (@acdenisSK) c:a8b4e2f - [misc] Use
Formatter::write_str
directly instead ofwriteln
for string literals (@nickelc) c:6a0106c - [model] Use the permission flags for the
permissions::PRESET_*
constants (@nickelc) c:fc7c76a - [model] Use bitshift notation for the values of Discord's bit flags (@nickelc) c:57a2e4d
- [model] Make the
u64
value ofAttachmentId
s public (@nickelc) c:5379d3e - [model] Simplify the
*Id::created_at
method by usingUtc.timestamp_millis
(@nickelc) c:1977e9f - [misc] Set
rustfmt
edition to match library edition (@mkrasnitski) c:4f2a73b - [misc] Remove old version of
time
from dependency tree (@KaDiWa4) c:d9c8980 - [framework] Change
Configuration::prefix
to accept types that implementToString
(@mkrasnitski) c:738465f - [gateway] Remove guilds from cache if they were removed between a disconnect and a ready (@Squili) c:b21f053
- [internal] Put the internal
tokio
module behindtokio*
features (@nickelc) c:921ff6f - [examples] Use
ClientBuilder::type_map_insert
in examples where it makes sense (@nickelc) c:c3358cf - [examples] Simplify
tracing_subscriber
initialization in the examples (@nickelc) c:46f7608 - [ci] Specify MSRV for clippy and use stable toolchain for the lint job (@nickelc) c:bade6e5
- [misc] Replace instances of
tokio::spawn
withspawn_named
(@Milo123459 @acdenisSK) c:5f81d4a c:247c073 c:b2197db - [voice] Replace some instances of
match
with thematches!
macro (@Milo123459) c:6987175 - [utils] Fall back to
Member
parsing ifUser
is not in the cache inArgumentConvert
(@kangalioo) c:6085aad - [model] Define
Sticker::pack_id
as optional (@Atakku) c:cf040cb - [model] Guarantee the
MessageComponentInteraction::message
to not be partial (@HarmoGlace) c:f915fee
Fixed
- [examples] Fix a typo in example 12 (@Vaimer9) c:38b11da
- [model] Fix documentation typo in
Message::crosspost
(@OverHash) c:b180f21 - [model] Fix non-idiomatic comment (@nickelc) c:f70112d
- [model] Fix panic in
ReactionType
deserialization (@nickelc) c:fe946df - [model] Fix faulty (de)serialization of
InteractionApplicationCommandDataFlags
(@nickelc) c:62b9c84 - [model] Fix the example for
permissions::PRESET_GENERAL
(@nickelc) c:707697e - [command_attr] Fix
#[help]
to generate its variables without an extra underscore (@JohnTheCoolingFan) c:df47df1 - [model] Fix
Permissions
bitflags (@AldanTanneo) c:0acabdf - [misc] Make the library compilable with minimal dependency versions (@lo48576) c:37e33bd
- [model] Perform owner check when calculating permissions for a member (@acdenisSK) c:ccf0d5b
- [misc] Clean up Clippy errors (@mdonoughe) c:2eeb336
- [framework] Handle Unicode double-quote characters when parsing arguments (@acdenisSK) c:9bfc1e7
- [builder] Fix permission overwrites by sending Discord the correct overwrite types (@woongzeyi) c:f36b4c1
- [misc] Fix compilation without default features (@nickelc) c:0611e2c
- [framework] Check for discrepancies in default commands of groups (@acdenisSK) c:cfbb7b3
- [misc] Apply fixes by clippy (@Milo123459) c:7e1a64e
- [command_attr] Fix support for raw identifiers in
command_attr
's macros (@Friz64) c:5b7a23c - [utils] Use the correct method for formatting an emoji in
MessageBuilder
documentation (@mbenoukaiss) c:eb29760 - [model] Make
CreateApplicationCommandPermissions
public and fix documentation links (@Squili) c:7392f3f