You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

CHANGELOG.md 8.3 kB

4 years ago
4 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. # Changelog
  2. ## [3.1.4 - 3.1.6] - 10/12/2021
  3. ### Added
  4. - Added check for duplicate responses to interactions.
  5. - Added check for 3 second timeout to interactions.
  6. ### Fixes
  7. - Fixed assignment of `UserMentions`
  8. - Fixed `CleanContent` not being correct
  9. - Fixed SocketSlashCommandData access modifier
  10. - Fixed url validation for embed urls
  11. ## [3.1.2 + 3.1.3] - 10/12/2021
  12. ### Added
  13. - Added .NET 5 build.
  14. - Added `Ephemeral` property to `Attachment`.
  15. - Added `ChannelTypes` to `ApplicationCommandOption` and builders.
  16. - Added event for `SocketAutocompleteInteraction` called `AutocompleteExecuted`.
  17. - Added `CleanContent` to `IMessage` and implemented entities.
  18. - Added support for `discord://` protocol on buttons.
  19. - Added `Competing` status type.
  20. - Added `Icon` and `GetIconUrl` to roles.
  21. - Added `Interaction` to `IMessage` and implemented entities.
  22. - Added `ContextMenuCommand` message type.
  23. - Added stage instance audit logs as well as thread audit log type.
  24. - Added restriction for description not being null in `SlashCommandBuilder`.
  25. ### Fixes
  26. - Fixed channel name ratelimits being ignored + any other property specific ratelimits.
  27. - Fix different rest channels not deserializing properly.
  28. - Fix NRE in modify guild channel.
  29. - Fixed system messages not including mentioned users.
  30. - Fixed sub commands being interpreted as a parameter for autocomplete.
  31. - Fixed `Type` not being set in `SocketApplicationCommand`.
  32. ### Misc
  33. - Simplified `FollowupWithFileAsync` to just take a file path.
  34. - Renamed `Default` and Required to `IsDefault` and `IsRequired` in `IApplicationCommandOption`.
  35. - Renamed `DefaultPermission` to `IsDefaultPermission` in `IApplicationCommand`.
  36. - Refactored some summaries
  37. - Renamed `Available` to `IsAvailable` in stickers.
  38. - Removed file extension check.
  39. - Remove null collections in favor for empty collections.
  40. ## [3.1.1] - 9/23/2021
  41. ### Added
  42. - Added `SocketAutocompleteInteraction`
  43. - Added `IsAutocomplete` to slash command builders
  44. ## [3.1.0] - 9/21/2021
  45. ### Added
  46. - Added warning for duplicate select menu values.
  47. - Added `DisconnectAsync` and `MoveAsync` to `IGuild` and its children (`RestGuild`/`SocketGuild`).
  48. - Added `CreateStageChannelAsync` to `IGuild` and its children (`RestGuild`/`SocketGuild`).
  49. - Added `ISticker[]` as a parameter to `SendMessageAsync` and `ReplyAsync`.
  50. ### Fixes
  51. - Fixed ratelimit sorcery and witchcraft.
  52. ### Misc
  53. - Renamed `SelectMenu` to `SelectMenuComponent`.
  54. - Removed obsolete `AcknowledgeAsync` method from interactions in favor for `DeferAsync`.
  55. ## [3.0.2] - 9/13/2021
  56. ### Added
  57. - Added `Hierarchy` to `RestGuildUser` and `IGuildUser`
  58. - Added github sponsors!
  59. - Added implicit conversion from string to emoji and emote, allowing you to just pass in unicode into any emoji/emote func
  60. - Added `ToBuilder` functions to `ButtonComponent` and `SelectMenu`
  61. - Added `FollowupWithFileAsync` to interactions.
  62. ### Fixes
  63. - Fixed `auto_archive_duration` within thread models
  64. - Fixed `ModifyGuildCommandPermissionsAsync` not allowing 0 args
  65. - Fixed `MofifyXYZCommand` using abstracts in activators (big no no)
  66. - Fixed specifying null for components within a modify context not removing the components within the message.
  67. ## [3.0.1] - 8/25/2021
  68. ### Added
  69. - Added a method in `ComponentBuilder` to create a builder from a message
  70. ### Fixes
  71. - Fixed default stickers not being set correctly
  72. - Fixed NRE with application command routes
  73. - Fixed KeyNotFoundException on Message Create
  74. - Fixed RestUserMessage not being used for some message types
  75. - Fixed NRE on default stickers
  76. - Fixed Stickers being empty on messages
  77. - Fixed `SocketUnknownSticker.ResolveAsync` throwing NRE
  78. ## [3.0.0] - 8/5/2021
  79. ### Added
  80. - Added stage support.
  81. - Added multi embed support for normal messages and refactored methods for interaction with embeds.
  82. - Added check for proper urls in embeds and buttons.
  83. - Added thread support.
  84. - Added `NsfwLevel` property to guilds.
  85. - Added missing message types: GuildDiscoveryDisqualified, GuildDiscoveryRequalified, GuildDiscoveryGracePeriodInitialWarning, GuildDiscoveryGracePeriodFinalWarning, ThreadCreated, ThreadStarterMessage, and GuildInviteReminder.
  86. - Added `NUMBER` application command option type.
  87. - Added missing audit log types: IntegrationCreated,IntegrationUpdated, IntegrationDeleted, StageInstanceCreated, StageInstanceUpdated, StageInstanceDeleted, StickerCreated, StickerUpdated, and StickerUpdated.
  88. ### Fixes
  89. - Fixed respond async fallback not taking in components.
  90. - Fixed Emoji UnicodeAndNames throwing exception because of duplicit keys.
  91. - Fixed `PermissionTarget` and `ApplicationCommandPermissionTarget` confusion and Invalid Form Body for modifying channel overwrites.
  92. ### Misc
  93. - Made custom id an optional parameter in buttons.
  94. - Refactored the component builders to be more flexible.
  95. - Changed `AcknowledgeAsync` to `DeferAsync` to avoid confusion.
  96. - Updated `MaxOptionsCount` and `MaxChoiceCount` to 25.
  97. ## [2.4.9] - 7/17/20201
  98. ### Fixes
  99. - The followup method that takes a single embed didnt return the RestFollupMessage
  100. ## [2.4.8] - 7/17/2021
  101. ### Added
  102. - Added `ApplicationCommandPermissionTarget` enum for slash command permissions, slash commands dont use `PermissionTarget` anymore.
  103. ### Fixed
  104. - Fixed `AddPermissionOverride` not working
  105. - Fixed invalid form body for responding with no embed
  106. ## [2.4.6] - 7/14/2021
  107. ### Added
  108. - Added the ability to send multiple embeds on interaction responses and also fixed a few bits of docs.
  109. ## [2.4.5] - 7/10/2021
  110. ### Added
  111. - Added `TimestampTag`
  112. - Added `DeleteAllGlobalCommandsAsync` to Rest client.
  113. - Added `DeleteSlashCommandsAsync` to SocketGuild and RestGuild, this **will** remove all the slash commands in the guild so be careful.
  114. ### Fixes
  115. - Fixed `GetOriginalResponseAsync` using wrong http method and route.
  116. # [2.4.4] - 7/7/2021
  117. - Added comment and parsing for `Mentionable` application option type.
  118. - Added another `AddOption` method to SlashCommandOptionBuilder.
  119. ### Added
  120. ### Fixes
  121. - Fixed `GetCommandPermission()` throwing if no permissions are found, it will now return null.
  122. - Fixed SlashCommandBuilder incorrectly limiting SubCommands.
  123. - Fixed incorrect casing of .net types in SocketSlashCommandData.
  124. - Fixed ambiguous method in `SlashCommandBuilder` .
  125. - Fixed `WithAuthor` extension not using default avatars: https://github.com/discord-net/Discord.Net/pull/1890
  126. - Fixed Slash command routes not throwing a `ApplicationCommandException`
  127. - Fixed duplicate `GetOriginalResponse` method in `SocketSlashCommand`
  128. ## [2.4.3] - 7/6/20201
  129. ### Added
  130. - Added `GetSlashCommandsAsync` and `GetSlashCommandAsync` methods to `SocketGuild` and `RestGuild`
  131. - Added `GetGuild` method to `RestGuildCommand`
  132. - Added `GetCommandPermission` and `ModifyCommandPermissions` to `RestGuildCommand`
  133. - Added `BulkOverwriteGlobalCommands` and `BulkOverwriteGuildCommands` to the rest client, this allows you to make a whole bunch of slash commands in one request
  134. - Added `DefaultPermission` to IApplicationCommands.
  135. ### Fixed
  136. - Fixed bad parsing on SocketSlashCommand for channel resolved types.
  137. ## [2.4.1] - 7/3/20201
  138. ### Added
  139. - Added `SelectMenu` as a component type.
  140. - Added methods to build select menus in the `ComponentBuilder`.
  141. - Added a `Values` property to `SocketMessageComponentData`, this is how you see the selected option on a select menus interaction event.
  142. - Added resolved models to `SocketSlashCommandDataOption`, the `Value` field will now use the _strong_ type of the option type, ex a guild user option will now have the value of a `SocketGuildUser`
  143. - Changed the embed description length to 4096 (https://discord.com/developers/docs/resources/channel#embed-limits)
  144. - Streamlined the interaction data parsing, no more weird null exceptions in the `INTERACTION_CREATED` event
  145. - Changed `SocketInteraction.Data` to the `IDiscordInteractionData` type.
  146. - Merged DNET into interactions, we are now on api v9. This also includes all the bug fixes that dnet did.
  147. - Added the new channel permission flags (https://discord.com/developers/docs/topics/permissions#permissions-bitwise-permission-flags)
  148. ### Fixes
  149. - Fixed the component builders checks for adding new components.
  150. ## [2.3.7 and older] - 5/29/2021
  151. ### Added
  152. - Added message component support
  153. - Added Interaction support
  154. - Added slash command support