Thanks to the following for their contributions:
Deprecations
Continuing with the deprecations started in 0.12.1, many more methods and fields have been deprecated in order to make an easier upgrade path to 0.13.
These deprecation messages include a migration path, it is recommended to go one by one using cargo check
and migrate each warning to reduce the burden migrating to 0.13. Following is a list of the deprecation PRs and the justification for these changes.
- (#2791) The
Channel::is_nsfw
method was wrong, useless, and served better byGuildChannel::nsfw
- (#2794) These cache methods needed arcane borrow checker dances internally, and obscure the simplicity of the cache.
- (#2816)
Member::highest_role_info
is now strictly less powerful than the newGuild::member_highest_role
and can avoid a cache lookup if used correctly. - (#2825)
-
Guild::is_large
is less accurate thanGuild::large
-
Message::is_own
is super simple to implement yourself
-
Message::is_private
simply checks ifMessage::guild_id
isnone
.
- (#2838)
Event::PresencesReplace
does not exist, and is a relic from when serenity supported user accounts. - (#2861)
TeamMember::permissions
is always["*"]
, so is useless.
Other notable changes
- (#2790) Added
CreateMessage::enforce_nonce
, to prevent sending duplicate messages. - (#2801) Added
EditProfile::banner
, allowing banners to be set for bots. - (#2810) Added
ChannelId::get_thread_member
. - (#2812) Added
Guild::partial_member_permissions_in
, which can be used to avoid fetching aMember
in message events just to check permissions. - (#2819) Added
From<User>
forCreateEmbedAuthor
, setting the author name and icon to theUser
's info. - (#2813) Added
UserId::direct_message
, so you don't need a fullUser
to direct message. - (#2834) Added
Http::default_allowed_mentions
to set theAllowedMentions
to be used with every request. - (#2830) Added
Guild
(Id
)::bulk_ban
, allowing bulk banning without hitting rate limits. - (#2836) Added support for Message Polls, including reading and sending them.
- (#2807) Added support for User Apps, alllowing user-installable application commands.
- (#2882) Added support for super reactions.
- Many documentation fixes and other optimisations to improve memory and CPU usage.