Overview
- Fixes bugs from
11.3
- Backports features such as Rich Presence
Deprecations
Guild#defaultChannel
, there will be no fallback/alternative (407500b)- Permissions:
READ_MESSAGES
, useVIEW_CHANNEL
instead (1fe201a) ClientUser#setGame
, useClientUser#setActivity
instead (cd06684)Collection#filterArray
, convert to an array and filter, or the other way round instead. (09ddbcb)Collection#findAll
, same asCollection#filterArray
but also pass a function instead (09ddbcb)Collection#exists
, useCollection#filter
and convert to a boolean instead. (09ddbcb)Collection#find
andCollection#findKey
's'key', 'property'
overload, pass a function instead. (09ddbcb)- All user bot methods (95a2d25)
Additions
- Backport
GuildChannel#manageable
getter (49ad8cc) - Backport
Guild#mfaLevel
property (7b9e84d) - Backport the ability to dynamically generate Snowflakes (d9a091f)
- Backport
DiscordAPIError#method
property (8700e96) - Backport support for
discord.gg/invite/<code>
invites when usingClient#fetchInvite
(21326f6) - Backport
Emoji#deletable
getter (ed8ab91) - Backport
Permissions#valueOf
method (2d83126) - Backport 2 basic role colors,
LUMINOUS_VIVID_PINK
andDARK_VIVID_PINK
(96b115e) - Backport
Guild#verified
getter (9169958) - Backport
TextChannel#setNSFW
method (54913d9) - Backport
Game#toString
method (c0ca73a) - Backport
Emoji#fetchAuthor
method (dd7eedb) - Backport
GuildChannel#fetchInvites
method (9904167) - Backport
GuildMember#manageable
getter (9bb8831) - Backport
Collection#sweep
method (2b6592e) - Backport
Collection#tap
method (de7d90a) - Backport
Client#rateLimit
event (0d90798) (6f02be2) - Backport
Collection#partition
method (f456f4c) - Backport
RichPresence
(6de5acb) - Backport
deleted
property (3fa9ed1) - Backport
DefaultMessageNotifications
(0702a0f) - Backport permissions improvements for
Guild#createChannel
and addGuild#replacePermissionOverwrites
andGuildChannel#lockPermissions
(524a15d) - Backport
Webhook#token
enumerability (96011cf) - Backport
Message#url
(41f6eaa) - Backport
PRIORITY_SPEAKER
permission (c33ab1e) - Backport
TextChannel#bulkDelete
acceptsSnowflake[]
parameter (c76f304) - Backport
GuildChannel#permissionsFor
that also takes aRoleResolvable
(1e5b5b8) - Backport
Permissions#toArray
(6da423f)
Fixes
- Allow
GuildChannel#edit
to clear its parent (6e5b674) and topic (92b4216) - Allow
Role#edit
to set the permissions to0
(no permissions) (7c0b617) 0
is a validPermissionsResolvable
(7c0b617)- Properly resolve permissions in
Client#generateInvite
(c387e96) - Remove bulk deleted messages from cache (7c37a0d)
- Resolve with the correct member in
RESTMethods#addMemberRole
andRESTMethods#removeMemberRoles
(de78a8d) - Do not update
Message#editedTimestamp
when there is none in the payload (3ba26ad) - Do not throw an error when accessing
MessageEmbed#hexColor
when the embed has no color (b60ee25) - Use
Object.values
instead ofObject.keys
to stay compatible with node 6 (feb0991) - Use the provided voice IP from discord directly instead of resolving its host name (b056227)
- Reject on null image resolvable with a meaningful error (44fefdf)
- Throw a descriptive error when not finding an opus engine (33a4232)
ClientUser#setActivity
incorrectly resolving with theClientUser
instead of itsPresence
(a85d801)- Clean up event listener on failure in
GuildMember#addRole
andGuildMember#removeRole
(a89de09) - Increase and decrease the amount of max listeners dynamically to avoid MaxListenersExceededWarning when using
Collector
s (60288d0) - Use
Buffer.alloc
instead of deprecatednew Buffer
(bd9c9ce) - Allow to remove the color of a role (2f2e281)
- Allow to send files of url which does not resolve to a buffer by default (ae28f52)
- Decrement
Guild#memberCount
when an uncached member leaves (15a8e17) - Avoid permanently hanging of the burst ratelimit handler (3790619)
- Correctly resolve nicknames of users when creating a group dm with a bot (f23b617)
- Properly validating
CONNECT
permissions inVoiceChannel#deletable
(0387d34) ShardClientUtil#send
erroneously rejected on large payloads (eef4a4a), (493ba73)MessageReaction#fetchUsers
will now properly resolve with the fetched user rather than the full cache (f238883)GuildMember#joinedAt
is not guaranteed (ecf6e2b), (bd3d8d4)- Do not cache webhook users to preserver the correct username and avatar for all their messages (8a3ae87)
- Ensure
TextChannel#bulkDelete
always returns a Promise (72346fb) - Proper rejection when providing a falsy token (448f384, a667e44)
- Ensure
VoiceChannel#bitrate
gets set (695ff1e) - Keep reply option and do not throw an error when passing
Message#reply
an embed (1d9edec) - Fix channel bitrate not set when missing unnecessary permissions (695ff1e)
- Do not try to send voice packets via udp when there is no socket (d81441f)
- Proper rejection of using
Emoji#fetchAuthor
when an emoji is managed (d685e39) - Allow constructing
RichEmbed
fromMessageEmbed
(6d70da5, 87b4b23)