Skip to content

Latest commit

 

History

History
324 lines (303 loc) · 62.7 KB

CHANGELOG.md

File metadata and controls

324 lines (303 loc) · 62.7 KB

13.0.1 (2021-08-07)

Bug Fixes

13.0.0 (2021-08-06)

Bug Fixes

  • Action: getChannel interaction DM (#6280) (a72b5a3)
  • BaseGuildTextChannel: call patch (#6298) (3eb4140)
  • Caching: sweep archived threads in all channel caches (#6312) (3725dca)
  • Channel: add default for destructured options (#6203) (6872547)
  • ChannelUpdate: restore accidentally removed line (#6263) (774f5b7)
  • CommandInteractionOptionResolver: Export CommandInteractionOptio… (#6146) (8ccfd6e)
  • CommandInteractionOptionResolver: type should be USER (#6148) (02f55f0)
  • Guild: add invite manager property, extend CachedManager (#6049) (e3d877d)
  • GuildChannel: Add missing 'cache' property (#6019) (7e30011)
  • GuildChannel: setParent not working (#6276) (7e0618f)
  • GuildChannel: use map method on cache not its manager (#6032) (d58f0d2)
  • GuildMemberManager: fetchMany fixes (#6314) (52817fc)
  • Message: fix thread getter (#6309) (913c9fa)
  • MessageMentions: check guild exists before adding roles (#6313) (1200bba)
  • export various classes that are exported in the typings (#6166) (30a58dc)
  • remove support for overriding caches that break functionality (#6282) (a6d4035)
  • CommandInteraction: change options type from Collection to array (#6139) (77784ac)
  • GuildAuditLog: Assert target to null upon not finding invite codes (#6171) (c8ca7bf)
  • GuildChannel: clone its PermissionOverwriteManager too (#6083) (f72ce7c)
  • GuildChannel: only fetch invites for the specific channel (#6132) (c40c0f9)
  • InviteScope: added missing 'bot' scope (#6052) (93e2c04)
  • Message: fix typo in sticker_items (#6173) (870a0de)
  • Message: make #channel and #guild getters (#6271) (6e3236a)
  • PermissionOverwriteManager: pass ID to API correctly (#6026) (8077e4f)
  • PermissionOverwrites: throw better error if resolving option fails (#6219) (42a0313)
  • PermissionsOverwrites: only convert type if number (#6092) (dee5c83)
  • PresenceUpdate: use added presence over nullable getter (#6077) (637c8e0)
  • SelectMenuInteraction: set values to empty array if not provided (#6045) (34708d6)
  • Sticker: replace 'this.guildID' (undefined) by 'this.guildId' in fetchUser (#6160) (07017a9)
  • Structures: remove Structures (#6027) (ab0b3b9)
  • TeamMember: Fixed incorrect return types. (#6044) (fe5d56c)
  • TextBasedChannel: Fix MessageCreate handling (#6217) (6b85f90)
  • ThreadChannel: better property handling (#6172) (9679b90)
  • Util: fix collection import (#6256) (93e0239)
  • WebSocketShard: mark shard ready if no guilds intent (#6284) (09471be)
  • array/keyArray removed (#6245) (bf221f2)
  • Use string instead of Snowflake for invites (#6202) (f060a3f)
  • Typings: type attachments to InteractionUpdateOptions (#6162) (4f8ca29)
  • channel type check in actions (#6086) (d433fe8)
  • Remove connection.url from open debug message (#6018) (39db953)
  • Util: splitMessage not working with array (#6008) (bd25ff5)
  • correct permissions checks and cache on update (#6015) (568691c)
  • typedefs and typings for image & webhook options (#5805) (a5a6e22)
  • ApplicationCommand: default option.required fix (#5848) (a1f94f6)
  • ApplicationCommand: default option.required to false (#5838) (77c1f15)
  • ApplicationCommand: fix typo in JSDoc (#5994) (6edf55c)
  • ApplicationCommand: stringType isn't supposed to be sent to the API (#5916) (ca2a36b)
  • ApplicationCommands: allow managing commands for uncached guilds (#5729) (24e5868)
  • ClientApplication: freeze flags (#5811) (e990c35)
  • Collector: docs and types (#5937) (6c447b1)
  • Guild: don't patch before instance properties (#5885) (174b7a7)
  • Guild: setChannelPositions null parenting (#5841) (01a1fd6)
  • GuildChannel: clone errors when options.name isn't provided (#5804) (41673b7)
  • GuildChannel: don't force parentID/permissionOverwrites to empty on create (#5823) (c585933)
  • GuildChannel: improve empty overwrite handling for permissionsLocked (#5821) (6df3623)
  • GuildChannel: spread clone options to avoid infinite recursion (#5800) (2f5424b)
  • GuildManager: #create throws when systemChannelFlags is undefined (#5832) (29173bf)
  • Hooks: make husky hooks executable (#5812) (77e28cf)
  • InteractionResponses: set replied status on editReply (#5899) (6d3d00b)
  • Message: editedTimestamp defaulting to 0 (#5847) (671436c)
  • Message: flags not being parsed on some edits (#5886) (2d7c12b)
  • Message: Make author of referenced message nullable (#5929) (dc671c8)
  • PermissionOverwrites: optional allow/deny OverwriteData (#5810) (a7ebb21)
  • Permissions: allow admin to override in the missing method (#5911) (ee025b0)
  • presenceUpdate: fire when only state/details change on an activity (#5846) (1f8f3ab)
  • Sharding: strict type context and return (#5933) (1925d01)
  • TextBasedChannel: allow passing an APIMessage with split (#5815) (93b0a4e)
  • Thread: make archive_timestamp not nullable (#5965) (edab5af)
  • ThreadChannel: check for existence of properties when patching (#5961) (9ac6867)
  • ThreadManager: fixed wrong private and fetchAll check (#6012) (e4be666)
  • ThreadMemberManager: fix ThreadMemberManager#add and ThreadMemberManager#fetch (#5927) (adecead)
  • Typings: erronous RawMessage (5842e35)
  • Typings: Fix BitField toJSON/valueOf return types (#5806) (935f819)
  • Typings: Improve components typings in MessageEditOptions (#6002) (3a718d8)
  • User: fix bot and system properties being incorrect in some cases (#5923) (e44ae96)
  • Webhook: resolve non-string avatars too (#5914) (4714a96)
  • Webhook: return void from #delete for consistency. (#5954) (5ad83a6)
  • Webhook: throw an error if no token is available when it's required (#5798) (eb98e33)
  • WebSocketShard: don't catch errors thrown in event handlers (#5803) (53d8e49)
  • don't patch missing properties from partial payloads (#5796) (097c7b9)
  • add missing imports for custom errors (#5767) (e980948)
  • ApiMessage: only pass objects as options directly (#5793) (3578159)
  • BitField: ensure missing returns an array of strings (#5795) (68f7aeb)
  • BitField: throw an error if bit to resolve is undefined (#5565) (0156f69)
  • ClientPresence: produce valid activities for set presences (#5799) (ea0e06f)
  • add components to MessageOption typedefs (#5768) (657635c)
  • remove remnants of awaitMessageComponentInteractions (#5783) (ae78a33)
  • APIMessage: document Interaction as valid MessageTarget (#5678) (9f491ff)
  • ApplicationCommand: return string equivalent of ApplicationCommandOptionType (#5617) (a6079bc)
  • ApplicationCommandManager: fix typo in JSDoc (#5603) (3392eb7)
  • ApplicationCommandManager: limit permission methods to guilds (#5613) (03256bd)
  • ApplicationCommandOptionData: options property should be itself (#5679) (b90b0c3)
  • CommandInteraction: channel type should be text based channels (#5690) (5141ea4)
  • CommandInteraction: cmds with no options throw error (#5734) (af2fad9)
  • CommandInteraction: update typings and docs for #editReply (#5630) (56d44fb)
  • DataResolver: fix circular dependency error with GuildTemplate (#5622) (b376f31)
  • Emoji: name can be null (#5513) (5397021)
  • GuildEmojiRoleManager: bug in #remove (#5666) (c89bdd7)
  • GuildMemberManager: allow moving members to any non-text channel (#5681) (d21e6af)
  • GuildMemberRoleManager: unable to remove roles when passed an array (#5556) (9572521)
  • HTTPOptions: change default value in jsdoc to 8 (#5547) (cb50241)
  • Interaction: add missing types and fix docs lists (#5762) (1d57754)
  • Message: bug in #suppressEmbeds due to #5612 (#5644) (840ad0a)
  • Message: editing with MessageEmbed or APIMessage (#5612) (74e97ef)
  • Message: update typings and docs related to #edit (#5745) (a2f0c11)
  • MessageComponentInteraction: correctly type defer method (#5760) (f0dad26)
  • MessageEmbed: import custom RangeError class (#5740) (bfe01b5)
  • PermissionOverwrites: fix typo in typedef jsdoc (#5704) (6567ba8)
  • RoleManager: bug in #create (#5730) (cf22456)
  • ShardingManager: client error event cannot be emitted (#5559) (d1c5b6f)
  • Types: make event listeners accept async callbacks (#5602) (a73a5cf)
  • Typings: add missing typings for HttpError -> requestData (#5742) (3e9ce35)
  • Webhook: #editMessage throws error when content is null (#5757) (2901fd5)
  • interfaces not importing due to re-export of Snowflake (#5723) (086c3f0)
  • lint-staged for typescript files (5f6ec22)
  • resolve emoji in Message#react (#5614) (c733436)
  • typo in GuildMemberManager (#5616) (73f4114)
  • Sticker: file renamed to SnowflakeUtil (#5573) (f830eb7)
  • VoiceReceiver: fix memory leak (#5609) (2eac842)
  • typings for 'Message' (#5518) (0d68ca8)
  • ApiMessage: remove resolve() from typings (#5241) (a6bc39d)
  • ApplicationFlags: export class (#5465) (404ce57)
  • BaseGuildEmoji: typo in requiresColons (#5076) (e272fd6)
  • ChannelManager: Avoid crash in remove method with uncached channel (#4937) (12c909e)
  • Collection: toJSON() errors if the collection includes empty values (#5129) (2c2249e)
  • Collector: throw an error if a non-function was provided as filter (#5034) (7365f40)
  • Guild/GuildChannel: methods reason arg usage (#5419) (8411b9e)
  • GuildAuditLogsEntry: executor can be missing (#5500) (e9bf206)
  • GuildChannel: check for community required channels in GuildChannel#deletable (#5170) (b710a43)
  • GuildChannel: overload permissionsFor and BaseManager#resolve[id] (#5260) (41bd6c2)
  • GuildChannel: regression on default channel type (#5251) (e7c4f36)
  • GuildEmoji: check for cahnges to available in equals (#5201) (f95f5dc)
  • GuildManager: add missing toString() on Permission#resolve fns (#5324) (0778926)
  • GuildMember: correctly check for premium_since (#5312) (aff3625)
  • GuildTemplate: 'guild' getter (#5040) (53529bd)
  • IntegrationApplication: add missing export to index.js (#5475) (8023250)
  • InviteDelete: guild can be missing (#5457) (6c6b105)
  • Message: #system non-zero message types are not guaranteed to be system (#5108) (bb78120)
  • Message: update getters to take null permissions into account (#5066) (98b1c58)
  • MessageEmbed: include author.name in length getter (#5167) (e37160f)
  • MessageMentions#channels: Fix type of channels of mentions (#5370) (565d7b3)
  • MessageReaction: set MessageReaction#me in patch method (#5047) (6b322f4)
  • ReactionUserManager: remove before query option (#5281) (43bd568)
  • Resolvables: valid resolvables throw error when uncached (#5495) (fa5a37e)
  • Role: pass Permissions class, not the bitfield (#5321) (d744e51)
  • RoleManager: fix ID return value, change return type to collection (#4935) (12a096b)
  • typings: return types for 'Webhook(Client)#send()' (#4876) (eb28ee7)
  • typings: update GuildMemberRoleManager typings to match implementation (#5497) (900e576)
  • UserFlags: correct early bot dev name, remove deprecated aliases (#5104) (b509862)
  • Voice: disconnect if voice channel not cached (#5467) (3af8179)
  • Voice: only skip undocumented voice packet byte if present (#5309) (2b52cdc)
  • add presence to ClientPresence from ClientOptions (#5041) (9c7fe34)
  • filtering of string forms of null and undefined (#5075) (9042d19)
  • implement valueOf on pseudomanagers (#4595) (8883a01)
  • typings for 'WebhookMessageOptions' (#5476) (67025e6)
  • Voice:* filter out silent audio from video users (#5035) (4fcb9eb)
  • VoiceConnection: make #dispatcher nullable (#5217) (0d5de43)
  • WebSocketShard: key name in WebSocketShard#_send. (#5304) (56d8b44), closes #3722

Code Refactoring

Features

  • ApplicationCommandOptionType: add NUMBER (10) (#6128) (2f1cc1f)
  • Channel: add isThread typeguard for better TS support (#5978) (b7ed675)
  • Channel: add isVoice() (#6297) (5b4efd1)
  • Client: add conditional ready typings (#6073) (4206e35)
  • Client: enforce passing scopes to generateInvite (#6024) (c6e5521)
  • Collector: better types for events (#6058) (c0a814f)
  • Collector: return a boolean on checkEnd (#6289) (f473f43)
  • CommandInteraction: add CommandInteractionOptionResolver (#6107) (f293132)
  • CommandInteractionOptionResolver: add sub-command required option (#6165) (690c121)
  • Constants: added more error codes (#6234) (6b2098f)
  • FetchRecommendedShardsOptions: account for large bot sharding (#6184) (19b242a)
  • Formatters: added new URL utilities and docs (#6014) (98e45a5)
  • Guild: add fetchWidget() for getting widget data (#6180) (b22272f)
  • GuildAuditLogs: add threads (#6195) (26ba0e1)
  • GuildPreview: add createdAt & createdTimestamp (#6130) (9f039a8)
  • InteractionCollector: reworked to be more generic (#5999) (374c779)
  • Interactions: option to auto-fetch replies (#5831) (5e28ff8)
  • LimitedCollection: export LimitedCollection (#6043) (31d3129)
  • Managers: ✨ Add GuildInviteManager (#5889) (9e08b02)
  • Managers: add customizable caching for managers (#6013) (8c7cb0e)
  • Message: add 'failIfNotExists' to ClientOptions (#6038) (28c5724)
  • MessageEmbed: add setFields method (#6186) (a25e165)
  • REST: append additional information to the required User Agent (#6112) (f200f14)
  • RoleManager: added edit method, alias Role#edit (#5983) (1e73c25)
  • StageChannel: add createStageInstance method & use better naming convention (#5951) (71fb33a)
  • Sticker: updates, sticker packs, and guild stickers (#5867) (54d6a3a)
  • ThreadChannel: add fetchOwner() method (#6207) (331a9d3)
  • Util: add SweptCollection for auto sweeping of caches (#6110) (dbb59ba)
  • Util: added formatters (#5976) (8c7a28f)
  • WebhookClient: allow creation of clients via URLs (#6192) (e000af5)
  • allow channels from uncached guilds to be returned from fetch (#6034) (755c180)
  • make Instance#fetch force true by default, and fix force parameter (#6116) (366f3c9)
  • PermissionOverwriteManager (#5318) (e7ad2fe)
  • use enums for consistency and speed (#5843) (f7eeccb)
  • Client: make use of with_expiration in #fetchInvite (#5764) (bf191df)
  • Esm: use gen-esm-wrapper instead of manually making the file (#5700) (db0d7d4)
  • Interaction: add guild guard (#5955) (87e8cdd)
  • Managers: new ApplicationCommandPermissionsManager (#5897) (6264c60)
  • MessageComponentInteraction: component getter (#5840) (1439183)
  • MessageMentions: add repliedUser (#5905) (2616125)
  • MessageSelectMenu: droppybois (#5692) (e5fcf0b)
  • api v9 and threads (#5570) (7346621)
  • InteractionCreate: move to an Action handler (#5906) (ea49f7c)
  • add missing APIError codes (#5898) (d930c81)
  • GuildChannelManager: add 'fetch' method (#4966) (e798fb7)
  • Interactions: add InteractionWebhook for better internals (#5712) (dec191a)
  • Interactions: improve error handling for ephemeral responses (#5892) (bd9f56a)
  • add APIError codes for stage instance (#5888) (c850ae1)
  • Message: applicationID for interaction responses (#5765) (65dc00f)
  • MessageComponents: clickybois (MessageButton, MessageActionRow, associated Collectors) (#5674) (cbd7f2b)
  • Rest: optional ratelimit errors (#5659) (16f261e)
  • Sharding:* contexts for broadcastEval (#5756) (c6aeebb)
  • WelcomeScreen: welcome screens (#5490) (44e2ee7)
  • stage instance invite (#5856) (2d12db0)
  • document and support embeds field in message create endpoint (#5792) (99ff715)
  • Guild: add enum for mfa_level (#5797) (ffabec3)
  • Guild: add enum for premium_tier (#5868) (a3cbcca)
  • GuildAuditLogs: make #target a channel for channel related logs (#5781) (eb0291d)
  • RequestHandler: emit more info when a rate limit was hit (#5801) (18ac72e)
  • Widget: wrapper for widget.json (#5619) (038ee99)
  • add new APIErrors (#5794) (e0ab836)
  • enforce strings (#4880) (7b85a72)
  • APIRequest: support setting global headers in HTTPOptions (#5586) (135abcc)
  • CommandInteraction: ephemeral followup messages (#5618) (68b40dd)
  • CommandInteraction: make options a collection (#5705) (fdad140)
  • Guild: add the new nsfw_level property (#5660) (3fe7add)
  • GuildChannel: createInvite target options (#5514) (f831872)
  • GuildChannel: make createOverwrite and updateOverwrite not dependent on cache (#5489) (58763b0)
  • GuildChannel#clone: support for position property (#5236) (d455cb6)
  • GuildMemberManager: extend API coverage (#4872) (2e2464b)
  • Message: add ReplyMessageOptions for #reply (#5296) (7ce741d)
  • Message: allow editing files into messages (#5718) (b212b64)
  • Rest: show the data that is sent to Discord when an errors occurs (#5701) (ef92339)
  • add support for fetching multiple guilds (#5472) (48d6850)
  • easier guards for channelUpdate (#5716) (d52bcd4)
  • general component improvements (#5787) (c4f1c75)
  • GuildBanManager (#5276) (6d09160)
  • InteractionDeferOptions (#5641) (ed593c9)
  • Guild: allow description and features in edit (#5505) (8a059cc)
  • Guild: nsfw guilds (#5525) (5968323)
  • Guild: replace owner with fetchOwner (#5480) (1be67b8)
  • Guild: setChannelPositions parent, lockPermissions keys (#5507) (4866e26)
  • GuildFeatures: added the new screening features (#5328) (3c175cb)
  • GuildManager: allow system channel flags in create (#5504) (d9fa180)
  • Message: allow removing attachments (#5557) (ca9e5a0)
  • Message: replace referencedMessage with fetchReference (#5577) (1398431)
  • MessageEmbed: remove normalizeField validation (#5459) (ff2f737)
  • MessageManager: extend API coverage (#4869) (c56c4a8)
  • ShardingManager: add options typings (#5583) (31b4390)
  • add support for application command events (#5596) (9f74f95)
  • interactions (#5448) (f7643f7)
  • Activity: add missing fields (#4984) (63ff6a0)
  • APIMessage: remove disableMentions (#4836) (4107899)
  • Application: application flags (#5147) (06e9d86)
  • BitField: move problematic bit into the error message (#5228) (273e955)
  • Client: add InviteGenerationOptions#additionalScopes (#5215) (ae3c3d8)
  • ClientEvents: add tuple labels to event arguments (#5225) (764966e)
  • GuildChannel: support conversion between text and news (#5022) (5ac3b57)
  • GuildEmojiManager: implement GuildEmojiManager#fetch (#4933) (ffe3140)
  • GuildMember: #pending (#5121) (c4c8171)
  • GuildMember: make GuildMember#setNickname first param nullable (#5070) (d70127c)
  • GuildMemberManager: add 'search' method (#4154) (0ba2bcb)
  • GuildMemberManager: throw TypeError on incorrect GuildMemberManager#ban params (#4816) (863734a)
  • Message: added string type for message nonce (#4782) (4b555fd)
  • MessageAttachment: support for #contentType (#5481) (7b161f9)
  • SysChanFlags: new flag and rename in sync with client (#5506) (fe93a7e)
  • move internal regular expressions to static properties (#5384) (207735c)
  • Message|TextChannel: Inline replies (#4874) (60e5a0e)
  • ReactionCollector: event create (#4108) (09d1f2f), closes #2844
  • Rest: better handling of global rate limit and invalid request tracking (#4711) (9d2d606)
  • typings: add ShardingManager.shardList to type definitions (#5446) (32b0d71)
  • typings: explicitly type PremiumTier and Collectors (#5458) (7c49612)
  • jsdelivr default file support (#5424) (f469402)
  • make changes to PresenceData typings and docs (#5317) (eb43ce4)
  • promisified single interaction collection (#5770) (c2b3ed0)
  • MessageTypes: add 16 and 17 (#4685) (c9107e3)
  • stage channels (#5456) (eec7cf7)
  • stage instances (#5749) (918921e)
  • Browser: remove browser � (#5113) (0a591a9)
  • Role: role tags (#4628) (d6234b7)
  • ShardingManager: Allow b-Eval/fetchClientValues on a specific shard when not all are ready (#5222) (001676c)
  • Sticker: added Sticker (#4909) (026afc2)
  • Util: allow array for StringOptions' char (#5566) (fbcbb29)
  • Util: make cleanContent take a channel instead of a message (#5535) (f1c0c04)
  • Voice: implement support for @discordjs/voice (#5402) (7b2e12b)
  • Webhook: add '(edit|delete)Message' methods (#5223) (7cabc1c)
  • Webhook: add 'fetchMessage' method (#5530) (63398d6)
  • Webhook: sourceGuild, sourceChannel, improve owner (#5508) (116ecf2)
  • WebSocketManager: let identify throw on depleted limits (#5283) (624a446)
  • BaseGuildEmojiManager (#4934) (8d650a7)

Reverts

  • support for nested arrays of components, fix error handling (#6081) (1dcad05)
  • BitField: ⏪ Bring back-compatibility after BitField serialization (#5910) (0a0630c)
  • 5047 (#5050) (b2a6720)

BREAKING CHANGES

For breaking changes please reference: https://discordjs.guide/additional-info/changes-in-v13.html