* Update CHANGELOG.md * Update Discord.Net.nuspec * Update Discord.Net.targets * Update docfx.json * i'll just hope it magically works
56 KiB
56 KiB
Changelog
[3.17.0] - 2024-12-20
Added
-
#3025 Build with .NET 9 SDK (
164a289) -
#3032 Add
net8.0andnet9.0(d780d6c) -
#3033 Add
net8.0andnet9.0to the metapackage (93229f6) -
#3005 Add StickerId to REST and WebSocket Sticker audit log data classes (
8a2ea4b) -
#3023 Scheduled event recurrence rule (
b7208d4) -
#3024 Support sending voice messages (
5904ecd) -
#3036 Support for multiple subscription tiers (
79fade6) -
#3017 Add support for keyed services. (
3017f6b)
Fixed
- #2974 rest client add webporxy config, keep the processing logic with WebSocketProvider (
292f8c4) - #3008 fix webhook ctor (
433bdc2) - #3015 Fixes incorrect cast of parameters in CommandBuilder (
aaa8df9) - #3028 Create a new scope when building interaction service modules if
AutoServiceScopes = true(a1e50c4) - #3035 NRE in message commands in user app contexts (
c78296f) - #3034 Entitlements
starts_atis nullable (d5879c8) - #3031 Interaction Service failing to create scopes with some DI providers (
a884ad1) - #3030 NRE on thread member creation without a guild user in the payload (
96a8327)
Misc
- #3021 Expose channel type property on
IChannel(8b92969) - #3006 Add missing permissions (
6b92cc2) - #3007 Allow setting SuppressNotification in webhook client (
682d87e) - #3027 Eliminate the waste of checking arguments under the same conditions. (
f644e68) - #3037 add missing overwrite perms (
d2d8d73) - #3038 Clamp cache size (
438e31e)
[3.16.0] - 2024-09-14
Added
- #2918 Message Forwards (
c4d90cd) - #2976 New interactions precondition attribute that supports app commands (
1f252a3) - #2978 Add Application Approximate User Install Count (
47f98bc) - #2987 Add guild profile banners (
57eb906) - #3002 Add subscriptions support (
88ea2ed) - #2994 Add more member flags (
9b8c7b1) - #2989 Add GetRoleAsync (
466b491) - #2986 Add StickFormat gif and animated guild icon (
2aaa0fd)
Fixed
- #3001 StackOverflow in sharded clients (
c53aac3)
Misc
- #2979 Create a (Discord)Color using a string (
bc84b94) - #2991 Minor optimization + make sure top level components are action rows (
623a457) - #2995 Use interaction method in
InteractionModuleBase.DeleteOriginalResponse(f65d3ad) - #2999 Option to dump gw payloads on errors (
b87ec6e)
[3.15.3] - 2024-07-21
Added
- #2963 Application Emojis (
26bb789) - [EXPERIMENTAL] #2931 Member search v2 (
e18915a) - #2952 add
IsAvailabletoGuildEmote(cb79f04) - #2965 Add team member
Roleproperty (6e531a2)
Fixed
- #2958 crash when poll is null in RestMessageComponent (
24c7605) - #2962 incomplete validation when ChannelFlags.RequireTag is true (
f5fdfb2) - #2948 Fix IndexOf bug in CreateBucketId (
ec0ba49) - #2959 Fix automod related events in the sharded client (
8b6be64) - #2966 Fix
CustomSticker.DeleteAsync()(359f6db)
Misc
- #2951 Update for the breaking change discord has made + v3 is cringe (
8afea2c) - #2953 longer polls (
ae49794) - #2956 Add missing role tags (
6b691b1) - #2957 Longer MaxCustomBlockMessageLength (
bae7861)
[3.15.2] - 2024-06-18
Hotfix
- fix
AutocompleteAttributewith empty constructor - fix
Emoteconstructor related issues
[3.15.1] - 2024-06-18
Added
- #2927 Add missing PollProperties (
a59f4ba) - #2942 Add purchase notification (
9d92435) - #2934 Add MessageCallData (
21195a8) - #2932 Config Bypass for CanSendResponse (
9030a5b) - #2933 Premium Buttons (
531b5eb) - #2941 Add UseExternalApps permission (
f7f29d5)
Misc
- #2936 Public constructor for Emote (
3be72a8) - #2935 Generic autocomplete (
35b102a) - #2929 Enable nuget debug symbols. (
aa424f6)
[3.15.0] - 2024-05-12
Added
- #2902 Polls (
476ec06) - #2898 Guild bans with seconds prune period (
d1da2a0) - #2903 Create
RequireTeamAttribute(753724d) - #2906 Create
DoHierarchyCheckAttribute(1a5cba8) - #2923 Create
RequireRoleAttribute(5dadcb2) - #2919 More store stuff (
f9086d3) - #2920 Add
SocketInteraction.InteractionChannel(3054505)
Fixed
- #2910 RestDMChannel relies on recipient (
13ea566) - #2911 Don't rely on Guild for id (
397a887) - #2912 Don't depend on WebSocket for Interaction service (
a2f624e) - #2922 NRE with rest interactions & no api call (again) (
83fdc89) - #2924 Fix null error when using a
SelectMenuBuilderconstructor (93cb71a)
Misc
- #2905 Remove analyzer project & resolve some build warnings (
7aab366) - #2913 Replace generic exceptions. (
54d2fe5) - #2908 Support options in Rest's AddRoleAsync (
b70e21b) - #2914
.Distinct()roles(ids) inIGuildUser.ModifyAsync(27a0785) - #2915 Improve bulk bans (
f85bf9a)
[3.14.1] - 2024-03-19
Fixed
- Version number contains commit hash
[3.14.0] - 2024-03-19
Added
- #2849 Allow setting channel topic to null when creating channels (
7c96844) - #2832 Add Icon size parameter to
GetGuildIconUrlCDN method (eb5678a) - #2883 Initial user apps support (
24a6978) - #2881 Bulk ban support (
03402cd) - #2880 More banner support (
4efe3be) - #2858 Allow setting custom status with
SetGameAsync(ee386b1) - #2870 SentRequest event (
fc2fc87) - #2873 Voice reconnection and resuming (
09680c5) - #2879 Support setting banner on bot profiles (
d0c0a56)
Fixed
- #2866 Allow switching voice channels without disconnecting (external clients only) (
5a62ba1) - #2857 Receiving voice packets (use system-assigned port) (
1a16f4d) - #2850 NRE in automod audit logs (
1eb7a53) - #2862 Fixed a bug when creating a
SelectMenuBuilderfrom aSelectMenuComponentincorrectly set theCustomId(6870ac5) - Incorrect ConnectionState of a DiscordSocketClient casted to IDiscordClient/BaseSocketClient (
955fae0) - #2867
InteractionService.AddModulesXAsynccommand duplication (2787db3)
Misc
- #2806 Update library dependencies (
bfc8dc2) - #2847 Remove some redundant notes & small updates (
d0e9c8b) - #2854 Refactor
MaxBitrateandUploadLimitinGuildHelper(6256de4) - #2869 Fix optional param being non-optional (
fa51f0a)
[3.13.1] - 2024-02-11
Added
- #2804 Add Incident actions message types (
178ff58) - #2805 Add
AppliedTagstoDiscordWebhookClient.SendXAsync(d382e5c) - #2700 Optional Aliasses, Summary and Remarks Properties to CommandAttribute (
5a8582c) - #2584 Log InteractionCommand execution exceptions in Wrapped Exception (
0f0f3f7) - #2827
44(Add message type 44) (541571c) - #2837 Allow creating announcement channels (
f1777de)
Fixed
- #2801 Add null check in
SelectMenuBuilder(b18cc31) - #2813 Incorrect json model for Guild Scheduled Events (
de4b6b9) - #2800 Warning about missing intents not being logged (
8227d70) - #2818
GetEventCoverImageUrlthrowing NRE in case event cover image is null (138e18c)
Misc
- #2807 Incorrect xmldoc (
d234db7) - #2823 Update sample projects & samples in docs (
e2e8c0f) - #2819 [2024] Very important changes (update licence & docs) (
ff9b9b4) - #2831 Add checks for whitespace-only strings in button builder (
89efe0f) - #2835 Additional select menu option validations (
4d7e384)
[3.13.0] - 2023-11-18
Added
- #2707 Added Super reactions support (
9fd5c6c) - #2725 Added Media channel support (
e3cd340) - #2753 Added additional Update/Modify Async Attachment's (
ae275ab) - #2769 Added missing parameters to
RespondWithModalAsyncmethods and implement missing overloads (4e78aec) - #2773 Added useful utility methods to
ModalBuilder(8591de7) - #2776 Added Select menu default values (
ac274d4) - #2777 Added Voice channel status support (
8060dcf) - #2781 Added premium subscriptions support (
7723f61) - #2782 Added Avatar decorations support (
f64d9d6) - #2784 Added App subscriptions additional support (
a9a8da4) - #2783 Added Guild incident actions (
9b36df3) - #2787 Added Embed
ToJsonString&(Try)Parse(7b5c40a) - #2791 Added Automod member profile moderation, new application fields, use clyde ai & guild invenory settings (
699554a) - #2792 Added create roles with icons (
b45b774) - #2796 Added clips support (poggers) (
89bebc3)
Fixed
- #2758 Fixed Slash Command Localizations lost after AddCommandsToGuildAsync and deleteMissing = false (
8d5022a) - #2759 Fixed missing null checks in
RoleConnectionProperties(ab3b30d) - #2766 Fixed UpdateAsync Remove Attachment Bug (
a668757) - #2763 Fixed SocketKickAuditLogData User never having value (
5cfec05) - #2770 Fixed URL encode timestamps sent as query parameters (
589c58a) - #2774 Fixed some IDiscordClient methods are not properly implemented in clients (
8baf913) - #2789 Fixed multiline values in short TextInputs (
33e8340)
Misc
- #2739 Remove some unnecessary async/await (
86655a8) - #2754 Replace Moq with NSubstitute for Mocking in GuildHelperTests (
b988a18) - #2765 Use Discord heartbeat interval in audio. (
9cedfbc) - #2771 Extract
GetDisplayAvatarUrlinIUser(b1787d8)
[3.12.0] - 2023-08-10
Added
- #2644 Added
ComponentBuildercomponent removal methods. (d5d7378) - #2668 Added a method for sending silent audio frames on
OpusEncodeStream. (59094d2) - #2675 Added missing
removeproperty toMemberRoleAudit. (5fb9152) - #2720 Added role & attachment flags (
a421715) - #2723 Added missing properties to webhook implementation (
2b8584d) - #2729 Added new onboarding methods/properties (
8cd4c1c) - #2730 Added new
ModifyCurrentApplicationfeatures (166d40f) - #2749 Added support for setting custom status (
b2820d5)
Fixed
- #2711 Fixed modifying guild resets preferred locale (
12c50f2) - #2713 Fixed some
ReplyAsyncmethods missingMessageFlagsparameter. (56769cb) - #2714 Fixed disconnecting socket client not sending close code. (
6bb3777) - #2722 Fixed modal's
DeferAsyncimplementation (5f580f6) - #2726 Fixed global name not being passed to
UserUpdatedevent (9dfd4d7) - #2742 Fixed
ModifyAsyncattachments #2236 (0c12079) - #2745 Fixed
GetMessagesAsyncwithDirection.Afternot working as expected (c922497)
[3.11.0] - 2023-6-27
Added
- #2616 Added guild Onboarding support (
3a8f76c) - #2627 Added
Audit Log Createdgateway event support (dff6a57) - #2645 Added
Messageproperty andUpdateAsync()toIModalInteraction(83dfa0c) - #2648 Added
MaxStageVideoChannelUsersproperty toIGuild(bdd755b) - #2665 Added voice messages support (
f171684) - #2619 Added get current bot application information (
9ef5a76) - #2649 Added
SafetyAlertsChannelIdtoIGuild(2112e1f) - #2696 Added support for the new username system (
df717e6) - #2620 Added support for filtering audit log entries by after id (
529fe3d) - #2622 Added default thread ratelimit in guild text channels (
f9c8530)
Fixed
- #2628 Allow creating stickers with no description (
c950106) - #2682 Fixed missing
JsonPropertyattributes in params for modifying automod rules (9df4438) - #2702 Fixed
TypingStartedEventmodel to support Clyde (547bc92) - #2652 Fixed streams being incorrectly disposed in
DefaultRestClient(84431de) - #2708 Fixed threads not getting removed from cache on
THREAD_DELETE(fe4130d) - #2688 Fixed some internal classes being public (
9ddd922) - #2687 Allow more than 1 action to be registered per automod rule (
200bed7) - #2683 Fixed mention limit, regex patterns & allowlist for automod rules (
a41fa62) - #2663 Fixed T3 file upload size to be 25MiB (
98f974d) - #2662 Fixed duplicate
SlashCommandExecutedevent on failed result (fe9657a) - #2651 Fixed name translations (
NameLocalizations) forChoiceAttribute(75ae488) - #2647 Fixed
ChannelPermissions.All()exception on forums (6265dd5) - #2642 Enforce rate limits on 429s (
69cce5b)
Misc
- #2601 Add missing json error (
a8ae1e9) - #2609 Refactor
SendMessageAsync&SendFile(s)Asyncmethods & modify webhook message attachments (898ee56) - #2646 Create forum channels with default layout (
0720049) - #2666 Switch
channeltochannel_idin interactions (d5ba7d2) - #2670 Disable FEC in OPUS (
2be9b00)
[3.10.0] - 2023-03-27
Added
- #2507 Added selects v2 support (
48fb1b5) - #2509 Added
SendFileAsynctoUserExtensions(25cfb88) - #2510 Added missing invite guild properties & welcome screen support (
7c535b9) - #2520 Added
ClientDisconnectevent for audio client. (4cad546) - #2521 Added
OwnerIdtoIThreadChannelandRestThreadChannel - #2521 Added
ActiveDevelopertoUserProperies - #2523 Added emojis from Emoji 13.0, Emoji 13.1 and Emoji 14.0 (
23b2822) - #2528 Added wildcard length quantifiers and
TreatAsRegexproperty - #2530 Added application Role Connections Metadata support (
37d868f) - #2531 Added age restricted (NSFW) application commands support (
56b1a93) - #2537 Added
RemoveModulesFromGuildAsync(7acbcfd) - #2560 Added app Command channel target permission (
2616d35) - #2562 Added new message types & error codes (
a3ee855) - #2564 Added
RespondWithModal()which accepts anIModalinstance as template (e7bda0f) - #2571 Added guild member flags (
7d8d6ec) - #2573 Added missing VoiceChannel properties (
1e21a6e) - #2574 Added
GetCurrentUsermethod toDiscordRestClient(e3da96f) - #2574 Added
GetCurrentUserGuildMemberAsyncmethod toDiscordRestClientandRestGuild(e3da96f) - #2574 Added
GuildFeaturesproperty toIUserGuild(e3da96f) - #2575 Added
Threadproperty toRestMessage(91e2084) - #2578 Added AutoMod support (
673b02d) - #2579 Added
Threadproperty toIUserMessage(0998285) - #2580 Added thread user member & thread members pagination (
b085621) - #2582 Added
IIntegrationChannel(75f3c91) - #2582 Added support for creating webhooks in forums (
75f3c91) - #2590 Added
FollowAnnouncementChannelAsynctoINewsChannel(bb056df) - #2591 Added support for silent mentions (
2ea8af1) - #2599 Added
AddModalCommandtoModalBuilderwith option to specify callback (50e0e59) - #2605 Added
GuildFeaturestoGuildProperties(177df2c) - #2603 Added support for creating forum posts with
DiscordWebhookClient(e69e27a) - #2610 Added Text-In-Stage support & missing
IVoiceChannelproperties (76bb901) - #2613 Added AutoMod custom block message (
709364a) - #2615 Added missing invite properties (
abfa8d1)
Fixed
- #2483 Fixed an NRE when event was changed from in channel to external or vice versa (
493f604) - #2526 Fixed
GetActiveThreadsAsync& add it toITextChannel(bd2f719) - #2528 Fixed catastrophic backtracking (
3b107c2) - #2532 Fixed permissions on deleteMissing=false (
274be5d) - #2540 Fixed
reasonnot being included in audit logs when callingAddBanAsyncandBanAsync(e71faf7) - #2541 Fixed
CreatePostmethods forIForumChannel(a53f1df) - #2549 Fixed
NullReferenceExceptioncaused by Options being undefined. (02d3ce6) - #2557 Fixed
customIdtemplate generator to escape regex metachars used in … (1602437) - #2577 Fixed
GetEventCoverImageUrl(0af835a) - #2600 Fixed gateway deadlock (
0c27395) - #2606 Fixed AutoMod action executed event message being null (
7b321af)
Misc
- #2542 Resolve inconsistencies with components (
f224eb0) - #2546 Argument handling with thread tags(
c67642a) - #2551 Format the project with 'dotnet format' (
257f246) - #2561 Remove outdated checks (
94996e7) - #2572 Reduce
DateTimeBoilerplate fromLogMessage(14b2901) - #2614 Optimize
Add/RemoveRolesAsyncmethods (11481a1) - #2617 Update IP discovery to send 74 bytes (
66e6329)
[3.9.0] - 2022-12-23
Added
- #2469 Add missing properties in forum & thread channels (
01ae904) - #2501 Add new discord stuff (
ed38635) - #2521 Add missing property & new stuff (
82b772a) - #2520 Implemented ClientDisconnect event for audio client. (
4cad546) - #2509 Add SendFiles to UserExtensions (
4cad546) - #2528 Implement wildcard lenght quantifiers, TreatAsRegex property and solve catastrpohic backtracking (
25cfb88) - #2531 Add Age restricted (NSFW) application commands support (
60956c7)
Fixed
- #2500 Fix duplicated members of DiscordErrorCode (
6712ef4) - #2468 Fix TimestampTag being sadge (
bc89d3c) - #2497 Avoid throwing on missing Application (
7077c44) - #2485 Fixed an oversight clearing session data upon any disconnect. (
c7ac59d) - #2526 Fix
GetActiveThreadsAsync& add it toITextChannel(bd2f719) - #2535 Fix deploy.yml (
20d8fdf)
Misc
- #2471 Update samples to use
MessageContentintent & updatev2 => v3 guide(a4d34f6) - #2505 Update events.cs (
ea039b8) - #2467 Update license and icon nuspec props (
11ed0ff) - #2306 Command execution code rework & TypeConverters auto-scope fix (
6869817) - #2534 Fully qualify SlashCommandBuilder namespace (
3b107c2)
[3.8.1] - 2022-09-12
Added
- #2437 Added scheduled event types to AuditLog ActionTypes (
fca9c6b) - #2423 Added support for resume gateway url (
d4c533a)
Fixed
- #2443 Fixed typos of word length (
adf012d) - #2438 Fixed http query symbol in ModifyWebhookMessageAsync (
0aa381d) - #2444 Fixed BulkOverwriteCommands NRE (
9feb703) - #2417 Fixed CommandService RemoveModuleMethod not removing modules (
fca9c6b) - #2345 Fixed EmbedBuilder.Length NRE (
11ece4b) - #2453 Fixed NRE on SlashCommandBuilder.Build method (
5073afa) - #2457 Fixed typo in SlashCommandBuilder.AddNameLocalizationMethod (
1b01fed)
Misc
- #2462 Add additional checks for gateway event warnings (
b45b152) - #2448 Bump to Discord API V10 (
fbc5ad4) - #2451 Return a list instead of an array in GetModulePath and GetChoicePath methods (
370bdfa) - #2453 Update app commands regex and fix localization on app context commands (
3dec99f) - #2333 Update package logo (
2b86a79)
[3.8.0] - 2022-08-27
Added
- #2384 Added support for the WEBHOOKS_UPDATED event (
010e8e8) - #2370 Add async callbacks for IModuleBase (
503fa75) - #2367 Added DeleteMessagesAsync for TIV and added remaining rate limit in client log (
f178660) - #2379 Added Max/Min length fields for ApplicationCommandOption (
e551431) - #2369 Added support for using
RespondWithModalAsync<IModal>()without prior IModal declaration (500e7b4) - #2347 Added Embed field comparison operators (
89a8ea1) - #2359 Added support for creating lottie stickers (
32b03c8) - #2395 Added App Command localization support and
ILocalizationManagerto IF (39bbd29)
Fixed
- #2425 Fix missing Fact attribute in ColorTests (
92215b1) - #2424 Fix IGuild.GetBansAsync() (
b7b7964) - #2416 Fix role icon & emoji assignment (
b6b5e95) - #2414 Fix NRE on RestCommandBase Data (
02bc3b7) - #2421 Fix placeholder length being hardcoded (
8dfe19f) - #2352 Fix issues related to the absence of bot scope (
1eb42c6) - #2346 Fix IGuild.DisconnectAsync(IUser) not disconnecting users (
ba02416) - #2404 Fix range of issues presented by 3rd party analyzer (
902326d) - #2409 Removes GroupContext from requirecontext (
b0b8167)
Misc
- #2366 Fixed typo in ChannelUpdatedEvent's documentation (
cfd2662) - #2408 Fix sharding sample throwing at appcommand registration (
519deda) - #2420 Fix broken code snippet in dependency injection docs (
ddcf68a) - #2430 Add a note about DontAutoRegisterAttribute (
917118d) - #2418 Update xmldocs to reflect the ConnectedUsers split (
65b98f8) - #2415 Adds missing DI entries in TOC (
c49d483) - #2407 Introduces high quality dependency injection documentation (
6fdcf98) - #2348 Added
RequiredInputattribute to example in int.framework intro (ee6e0ad) - #2385 Add ServerStarter.Host to deployment.md (
06ed995) - #2405 Add a note about
IgnoreGroupNamesto IF docs (cf25acd) - #2356 Makes voice section about precompiled binaries more visible (
e0d68d4) - #2405 IF intro docs improvements (
246282d) - #2406 Labs deprecation & readme/docs edits (
bf493ea)
[3.7.2] - 2022-06-02
Added
- #2328 Add method overloads to InteractionService (
0fad3e8) - #2336 Add support for attachments on interaction response type 7 (
35db22e) - #2338 AddOptions no longer has an uneeded restriction, added AddOptions to SlashCommandOptionBuilder (
3a37f89)
Fixed
- #2342 Disable TIV restrictions for rollout of TIV (
7adf516)
[3.7.1] - 2022-05-27
Added
- #2325 Add missing interaction properties (
d3a693a) - #2330 Add better call control in ParseHttpInteraction (
a890de9)
Fixed
- #2329 Voice perms not retaining text perms. (
712a4ae) - #2331 NRE with Cacheable.DownloadAsync() (
e1f9b76)
[3.7.0] - 2022-05-24
Added
- #2269 Text-In-Voice (
23656e8) - #2281 Optional API calling to RestInteraction (
a24dde4) - #2283 Support FailIfNotExists on MessageReference (
0ec8938) - #2284 Add Parse & TryParse to EmbedBuilder & Add ToJsonString extension (
cea59b5) - #2289 Add UpdateAsync to SocketModal (
b333de2) - #2291 Webhook support for threads (
b0a3b65) - #2295 Add DefaultArchiveDuration to ITextChannel (
1f01881) - #2296 Add
.Withmethods to ActionRowBuilder (13ccc7c) - #2307 Add Nullable ComponentTypeConverter and TypeReader (
6fbd396) - #2316 Forum channels (
7a07fd6)
Fixed
- #2290 Possible NRE in Sanitize (
20ffa64) - #2293 Application commands are disabled to everyone except admins by default (
b465d60) - #2299 Close-stage bucketId being null (
725d255) - #2313 Upload file size limit being incorrectly calculated (
54a5af7) - #2319 Use
IDiscordClient.GetUserAsyncimpl inDiscordSocketClient(f47f319) - #2320 NRE with bot scope and user parameters (
88f6168)
[3.6.1] - 2022-04-30
Added
- #2272 add 50080 Error code (
503e720)
Fixed
- #2267 Permissions v2 Invalid Operation Exception (
a8f6075) - #2271 null user on interaction without bot scope (
f2bb55e) - #2274 Implement fix for Custom Id Segments NRE (
0d74c5c)
Misc
- 3.6.0 (
27226f0)
[3.6.0] - 2022-04-28
Added
Fixed
- #2260 Guarding against empty descriptions in
SlashCommandBuilder/SlashCommandOptionBuilder(0554ac2) - #2248 Fix SocketGuild not returning the AudioClient (
daba58c) - #2254 Fix browser property (
275b833)
[3.5.0] - 2022-04-05
Added
- #2204 Added config option for bidirectional formatting of usernames (
e38104b) - #2210 Add a way to remove type readers from the interaction/command service. (
7339945) - #2213 Add global interaction post execution event. (
a744948) - #2223 Add ban pagination support (
d8757a5) - #2201 Add missing interface methods to IComponentInteraction (
741ed80) - #2226 Add an action delegate parameter to
RespondWithModalAsync<T>()for modifying the modal (d2118f0) - #2227 Add RespondWithModal methods to RestInteractinModuleBase (
1c680db)
Fixed
- #2168 Fix Integration model from GuildIntegration and added INTEGRATION gateway events (
305d7f9) - #2187 Fix modal response failing (
d656722) - #2188 Fix serialization error on thread creation timestamp. (
d48a7bd) - #2209 Fix GuildPermissions.All not including newer permissions (
91d8fab) - #2219 Fix ShardedClients not pushing PresenceUpdates (
c4131cf) - #2225 Fix GuildMemberUpdated cacheable
beforeentity being incorrect (bfd0d9b) - #2217 Fix gateway interactions not running without bot scope. (
8522447)
Misc
- #2193 Update GuildMemberUpdated comment regarding presence (
82473bc) - #2206 Fixed typo (
c286b99) - #2216 Fix small typo in modal example (
0439437) - #2228 Correct minor typo (
d1cf1bf)
[3.4.1] - 2022-03-9
Added
- #2169 Component TypeConverters and CustomID TypeReaders (
fb4250b) - #2180 Attachment description and content type (
765c0c5) - #2162 Add configuration toggle to suppress Unknown dispatch warnings (
1ba96d6) - #2178 Add 10065 Error code (
cc6918d)
Fixed
- #2179 Logging out sharded client throws (
24b7bb5) - #2182 Thread owner always returns null (
25aaa49) - #2165 Fix error with flag params when uploading files. (
a5d3add) - #2181 Fix ambiguous reference for creating roles (
f8ec3c7)
[3.4.0] - 2022-3-2
Added
- #2146 Add FromDateTimeOffset in TimestampTag (
553055b) - #2062 Add return statement to precondition handling (
3e52fab) - #2131 Add support for sending Message Flags (
1fb62de) - #2137 Add self_video to VoiceState (
8bcd3da) - #2151 Add Image property to Guild Scheduled Events (
1dc473c) - #2152 Add missing json error codes (
202554f) - #2153 Add IsInvitable and CreatedAt to threads (
6bf5818) - #2155 Add Interaction Service Complex Parameters (
9ba64f6) - #2156 Add Display name support for enum type converter (
c800674)
Fixed
- #2117 Fix stream access exception when ratelimited (
a1cfa41) - #2128 Fix context menu comand message type (
f601e9b) - #2135 Fix NRE when ratelimmited requests don't return a body (
b95b942) - #2154 Fix usage of CacheMode.AllowDownload in channels (
b3370c3)
Misc
- #2149 Clarify Users property on SocketGuildChannel (
5594739) - #2157 Enforce valid button styles (
507a18d)
[3.3.2] - 2022-02-16
Fixed
- #2116 Fix null rest client in shards
[3.3.1] - 2022-02-16
Added
- #2107 Add DisplayName property to IGuildUser. (
abfba3c)
Fixed
- #2110 Fix incorrect ratelimit handles for 429's (
b2598d3) - #2094 Fix ToString() on CommandInfo (
01735c8) - #2098 Fix channel being null in DMs on Interactions (
7e1b8c9) - #2100 Fix crosspost ratelimits (
fad217e) - #2108 Fix being unable to modify AllowedMentions with no embeds set. (
169d54f) - #2109 Fix unused creation of REST clients for DiscordShardedClient shards. (
6039378)
Misc
- #2099 Update interaction summaries (
503d32a)
[3.3.0] - 2022-02-09
Added
Fixed
- #2091 Fix modifying attachments on interactions and extend the module base (
97e54e1) - #2076 Fix rest message components cannot pass through execute method (
b45aebf) - #2077 Fix clone being created on updated entity (
7d6f4f3) - #2092 Fix Current user null on reconnect (
b424bb2) - #2089 Fix guild feature enum (
d142710) - #2090 Fix attempts to fetch channels in interactions (
6290f75)
Misc
- #1713 Simplify code in DiscordComparers (
43b20bc) - #2079 Add IEnumerable collection parameters instead of arrays for MessageExtensions (
75e94fe)
[3.2.1] - 2022-01-30
Added
- #2055 Add IThreadUser interface (
3475bd8)
Fixed
- #2030 Fix logging a TaskCanceledException out of users control (
82f3879) - #2064 Fix markdown formatting in Glossary (
f525131) - #2066 Fix Channel Types Attribute (
1917961) - #2071 Fix attempt to get application info for non-bot tokens (
37ada59) - #2072 Fix thread member download on create (
09eb9fa) - #2063 Fix stream position not being zero when uploading files (
6dada66)
Misc
- #2059 Update HttpException to display inner-errors on the HttpException.Message for better debugging (
5773b8e)
[3.2.0] - 2022-01-15
Added
- #2015 Add user-built AddCommand overloads to ModuleBuilder (
68e3bed) - #2016 Add Construct Method to InteractionModuleBase and Fix NRE on User-Built Module Creation (
4ed4718) - #2035 Add GetChannelType extension method (
64423a0) - #2036 Add missing guild features (
7075d4e) - #2037 Add default ratelimit callback (
4d9389b) - #2038 Add AddRow and WithRows to ComponentBuilder (
3429cf9) - #2040 Add user locale & guild locale in interactions (
2731e20) - #2041 Add search methods to InteractionService (
9a52d05)
Fixed
- #1562 Fix OperationCancelledException and add IAsyncEnumerable to wait without thread blocking (
cd36bb8) - #2014 Fix InteractionContext.Guild (
944a0de) - #2023 Fix ModifyAsync when only modifying a message's flags (
e3eb0a9) - #2025 Fix IsTopLevelCommand returning the wrong value (
4b7cda0) - #2031 Fix DefaultChannel to exclude threads (
a06ba9f) - #2033 Fix Interaction delete original response throwing 404 (
291d1e4) - #2034 Fix exception when uploading files with non seekable streams (
7f4feea) - #2044 Fix ApplicationId not being used for interactions (
c682564) - #2045 Fix argument null exception on Message Create (
a07531f) - #2046 Fix ThreadMember null ref in constructor (
bcd5fa4)
Misc
- #2018 Match argument defaults with IDiscordInteraction on SocketInteraction (
093e548) - #2024 Remove .ToLower from group name registration (
9594ccc) - #2042 Move gateway intents warning to ready event (
3633929)
[3.1.0] - 2021-12-24
Added
- #1996 Add nullable type converter to Interaction service (
ccc365e) - #1998 Add before and after execute async (
9f124b2) - #2001 Add MaxUploadLimit to guilds (
7745558) - #2002 Add RTCRegion to voice channels (
2a416a3) - #2003 Add Guilduser timeouts and MODERATE_MEMBERS permission (
144741e)
Fixed
- #1976 fix guild scheduled events update (
8daa0b6) - #1977 fix thread member nre (
5d43fe6) - #1980 fix requireRole attribute of interaction service (
a2f57f8) - #1990 Fix images path for select menu section (
a8b5506) - #1992 fix images; fix closing brace on cs ref (
fb52525) - #1993 Fix CommandExecuted not invoked on failed parse (
82bb3e4) - #1995 Fixed file being disposed on upload (
ad20e03) - #1999 Fix SocketGuildUser being changed to SocketGlobalUser in UserLeft (
5446bfe) - Fix voice codes namespace (
768a0a9)
Misc
- #1994 Make HasResponded public and add it to IDiscordInteraction (
1fbcbb8) - #1997 Make module service scopes optional (
cb1aad3)
[3.0.0] - 2021-12-13
Added
- #1152 Add characters commonly use in links to Sanitize (
b9274d1) - #1518 Add default nullable enum typereader (
f7a07ae) - #1700 Added Implementation of ValidateAndGetBestMatch (
3cd9f39) - #1767 Add method to clear guild user cache (
19a66bf) - #1847 Bump API version to 9 (
06a64b7) - #1848 Remove obsolete sync voice regions methods and properties (
ed8e573) - #1851 Remove DM cache and fix references (
7a201e9) - #1860 Remove /users/@me call for socket and rework sharded client a bit (
384ad85) - #1863 Change GuildMemberUpdate before state to cacheable (
c2e87f5) - #1666 Added negative TimeSpan handling (
6abdfcb) - #1861 Add MaxBitrate to the interface (
e0dbe7c) - #1865 Add null check to AllowedMentions.ToModel() (
3cb662f) - #1879 Add Name property to Teams (
c5b4b64) - #1890 Add default avatar to WithAuthor extension (
c200861) - #1896 IVoiceChannel implements IMentionable (
3395700) - #1923 Add Interaction Support (
933ea42) - #1923 Add Application commands (
933ea42) - #1923 Add Message Components (
933ea42) - #1923 Add Thread Channels (
933ea42) - #1923 Add Stage Channels (
933ea42) - #1923 Add Guild Events (
933ea42) - #1923 Revamped Stickers (
933ea42) - #1923 Add TimestampTag (
933ea42) - #1923 Add name property to teams (
933ea42) - #1923 Add url validation on embeds (
933ea42) - #1923 Add NsfwLevel to Guilds (
933ea42) - #1923 Add helpers to Emoji for parsing (
933ea42) - #1923 Add banner and accent color to guild users (
933ea42) - #1923 Add RatelimitCallback to RequestOptions (
933ea42) - #1923 Add Emoji to roles (
933ea42) - #1923 Add UseInteractionSnowflakeDate to config (
933ea42) - #1923 Add checks for gateway intent in some methods (
933ea42) - #1923 Add SendFilesAsync to channels (
933ea42) - #1923 Add Attachments property to MessageProperties (
933ea42) - #1942 Add multi-file upload to webhooks (
bc440ab) - #1943 Handle bidirectional usernames (
10afd96) - #1945 Updated socket presence and add new presence event (
9d6dc62) - #1948 Added warnings on invalid gateway intents (
51e06e9) - #1949 Add default application games (
82276e3) - #1950 Add custom setter to Group property of ModuleBuilder to automatically invoke AddAliases (
ba656e9) - #1958 Add Discord.Interactions framework (
aa6bb5e)
Fixed
- #1832 Grab correct Uses value for vanity urls (
8ed8714) - #1849 Remove obsolete methods and properties (
70aab6c) - #1850 Create DM channel with id and author alone (
95bae78) - #1853 Fire GuildMemberUpdated without cached user (
d176fef) - #1854 Gateway events for DMs (
a7ff6ce) - #1858 MessageUpdated without author (
8b29e0f) - #1859 Fix missing AddRef and related (
de7f9b5) - #1862 Message update without author (
fabe034) - #1864 ApiClient.CurrentUser being null (
08507c0) - #1871 Fix empty role list if not present (
f47001a) - #1872 Connection deadlock when trying to Send and Disconnect (
97d90b9) - #1873 Remove OperationCanceledException handling in connecting logic (
7cf8499) - #1876 Fix SocketMessage type always being default (
ac52a11) - #1877 Fix RestMessage type always being default (
22bb1b0) - #1886 Change embed description max length to 4096 (
8349cd7) - #1923 Fix ReactionAdded cached parameters (
933ea42) - #1923 Fixed GuildMemberUpdated cached parameters (
933ea42) - #1923 Fixed UserIsTypeing cached parameters (
933ea42) - #1941 Fix Emote.TryParse (
900c1f4) - #1946 Fix NRE when adding parameters in ModuleBuilders (
143ca6d) - #1947 ShardedClient's CurrentUser interface property being null (
d5f5ae1)
Misc
- #1852 Internal change to GetOrCreateUser (
dfaaa21) - #1923 Make Hierarchy a IGuildUser property (
933ea42) - #1923 Fixed gateway serialization to include nulls for API v9 (
933ea42) - #1923 Removed error log for gateway reconnects (
933ea42)
[2.4.0] - 2021-05-22
Added
- #1726 Add stickers (
91a9063) - #1753 Webhook message edit & delete functionality (
f67cd8e) - #1757 Add ability to add/remove roles by id (
4c9910c) - #1781 Add GetEmotesAsync to IGuild (
df23d57) - #1801 Add missing property to MESSAGE_REACTION_ADD event (
0715d7d) - #1828 Add methods to interact with reactions without a message object (
5b244f2) - #1830 Add ModifyMessageAsync to IMessageChannel (
365a848) - #1844 Add Discord Certified Moderator user flag (
4b8d444)
Fixed
- #1486 Add type reader when entity type reader exists (
c46daaa) - #1835 Cached message emoji cleanup at MESSAGE_REACTION_REMOVE_EMOJI (
8afef82)
Misc
- #1778 Remove URI check from EmbedBuilder (
25b04c4) - #1800 Fix spelling in SnowflakeUtils.FromSnowflake (
6aff419)
[2.3.1] - 2021-03-10
Fixed
- #1761 Deadlock in DiscordShardedClient when Ready is never received (
73e5cc2) - #1773 Private methods aren't added as commands (
0fc713a) - #1780 NullReferenceException in pin/unpin audit logs (
f794163) - #1786 Add ChannelType property to ChannelInfo audit log (
6ac5ea1) - #1791 Update Webhook ChannelId from model change (
d2518db) - #1794 Audit log UserId can be null (
d41aeee)
Misc
- #1774 Add remark regarding CustomStatus as the activity (
51b7afe)
[2.3.0] - 2021-01-28
Added
- #1491 Add INVITE_CREATE and INVITE_DELETE events (
1ab670b) - #1520 Support reading multiple activities (
421a0c1) - #1521 Allow for inherited commands in modules (
a51cdf6) - #1526 Add Direction.Around to GetMessagesAsync (
f2130f8) - #1537 Implement gateway ratelimit (
ec673e1) - #1544 Add MESSAGE_REACTION_REMOVE_EMOJI and RemoveAllReactionsForEmoteAsync (
a89f076) - #1549 Add GetUsersAsync to SocketGuild (
30b5a83) - #1566 Support Gateway Intents (
d5d10d3) - #1573 Add missing properties to Guild and deprecate GuildEmbed (
ec212b1) - #1581 Add includeRoleIds to PruneUsersAsync (
a80e5ff) - #1588 Add GetStreams to AudioClient (
1e012ac) - #1596 Add missing channel properties (
2d80037) - #1604 Add missing application properties (including Teams) (
10fcde0) - #1619 Add "View Guild Insights" to GuildPermission (
2592264) - #1637 Added CultureInvariant RegexOption to WebhookUrlRegex (
e3925a7) - #1659 Add inline replies (
e3850e1) - #1688 Send presence on Identify payload (
25d5d36) - #1721 Add role tags (
6a62c47) - #1722 Add user public flags (
c683b29) - #1724 Add MessageFlags and AllowedMentions to message modify (
225550d) - #1731 Add GuildUser IsPending property (
8b25c9b) - #1690 Add max bitrate value to SocketGuild (
aacfea0)
Fixed
- #1244 Missing AddReactions permission for DM channels. (
e40ca4a) - #1469 unsupported property causes an exception (
468f826) - #1525 AllowedMentions and AllowedMentionTypes (
3325031) - #1531 Add AllowedMentions to SendFileAsync (
ab32607) - #1532 GuildEmbed.ChannelId as nullable per API documentation (
971d519) - #1546 Different ratelimits for the same route (implement discord buckets) (
2f6c017) - #1548 Incomplete Ready, DownloadUsersAsync, and optimize AlwaysDownloadUsers (
dc8c959) - #1555 InvalidOperationException at MESSAGE_CREATE (
bd4672a) - #1557 Sending 2 requests instead of 1 to create a Guild role. (
5430cc8) - #1571 Not using the new domain name. (
df8a0f7) - #1578 Trim token before passing it to the authorization header (
42ba372) - #1580 Stop TaskCanceledException from bubbling up (
b8fa464) - #1599 Invite audit log without inviter (
b95b95b) - #1602 Add AllowedMentions to webhooks (
bd4516b) - #1603 Cancel reconnection when 4014 (
f396cd9) - #1608 Voice overwrites and CategoryId remarks (
43c8fc0) - #1614 Check error 404 and return null for GetBanAsync (
ae9fff6) - #1621 Parse mentions from message payload (
366ca9a) - #1622 Do not update overwrite cache locally (
3860da0) - #1623 Invoke UserUpdated from GuildMemberUpdated if needed (
3085e88) - #1624 Handle null PreferredLocale in rare cases (
c1d04b4) - #1639 Invite and InviteMetadata properties (
dd2e524) - #1642 Add missing permissions (
4b389f3) - #1647 handicap member downloading for verified bots (
fa5ef5e) - #1652 Update README.MD to reflect new discord domain (
03b831e) - #1667 Audio stream dispose (
a2af985) - #1671 Crosspost throwing InvalidOperationException (
9134443) - #1672 Team is nullable, not optional (
be60d81) - #1681 Emoji url encode (
04389a4) - #1683 SocketGuild.HasAllMembers is false if a user left a guild (
47f571e) - #1686 Revert PremiumSubscriptionCount type (
97e71cd) - #1695 Possible NullReferenceException when receiving InvalidSession (
5213916) - #1702 Rollback Activities to Game (
9d7cb39) - #1727 Move and fix internal AllowedMentions object (
4a7f8fe) - limit request members batch size (
084db25) - UserMentions throwing NullRef (
5ed01a3) - Wrong author for SocketUserMessage.ReferencedMessage (
1e9b252) - Discord sends null when there's no team (
05a1f0a) - IMessage.Embeds docs remarks (
a4d32d3) - Missing MessageReference when sending files (
2095701)
Misc
- #1545 MutualGuilds optimization (
323a677) - #1551 Update webhook regex to support discord.com (
7585789) - #1556 Add SearchUsersAsync (
57880de) - #1561 Minor refactor to switch expression (
42826df) - #1576 Updating comments for privileged intents (
c42bfa6) - #1678 Change ratelimit messages (
47ed806) - #1714 Update summary of SocketVoiceChannel.Users (
e385c40) - #1720 VoiceRegions and related changes (
5934c79) - Add updated libraries for LastModified (
d761846) - Add alternative documentation link (
accd351) - Temporarily disable StyleCops until all the fixes are impl'd (
36de7b2) - Remove redundant CreateGuildRoleParams (
3df0539) - Add minor tweaks to DiscordSocketConfig docs strings (
2cd1880) - Fix MaxWaitBetweenGuildAvailablesBeforeReady docs string (
e31cdc7) - Missing summary tag for GatewayIntents (
3a10018) - Add new method of role ID copy (
857ef77) - Resolve inheritdocs for IAttachment (
9ea3291) - Mark null as a specific langword in summary (
13a41f8) - Cleanup GatewayReconnectException docs (
833ee42) - Update Docfx.Plugins.LastModified to v1.2.4 (
28a6f97) - Update framework version for tests to Core 3.1 to comply with LTS (
4988a07) - Move bulk deletes remarks from
to ( 62539f0)
[2.2.0] - 2020-04-16
Added
- #1247 Implement Client Status Support (
9da11b4) - #1310 id overload for RemoveReactionAsync (
c88b1da) - #1319 BOOST (
faf23de) - #1326 Added a Rest property to DiscordShardedClient (
9fede34) - #1348 Add Quote Formatting (
265da99) - #1354 Add support for setting X-RateLimit-Precision (
9482204) - #1355 Provide ParameterInfo with error ParseResult (
3755a02) - #1357 add the "Stream" permission. (
b00da3d) - #1358 Add ChannelFollowAdd MessageType (
794eba5) - #1369 Add SelfStream voice state property (
9bb08c9) - #1372 support X-RateLimit-Reset-After (
7b9029d) - #1373 update audit log models (
c54867f) - #1377 Support filtering audit log entries on user, action type, and before entry id (
68eb71c) - #1386 support guild subscription opt-out (
0d54207) - #1387 #1381 Guild PreferredLocale support (
a61adb0) - #1406 CustomStatusGame Activity (
79a0ea9) - #1413 Implemented Message Reference Property (
f86c39d) - #1414 add StartedAt, EndsAt, Elapsed and Remaining to SpotifyGame. (
2bba324) - #1432 Add ability to modify the banner for guilds (
d734ce0) - suppress messages (
cd28892)
Fixed
- #1318 #1314 Don't parse tags within code blocks (
c977f2e) - #1333 Remove null coalescing on ToEmbedBuilder Color (
120c0f7) - #1337 Fixed attempting to access a non-present optional value (
4edda5b) - #1346 CommandExecuted event will fire when a parameter precondition fails like what happens when standard precondition fails. (
e8cb031) - #1371 Fix keys of guild update audit (
b0a595b) - #1375 Use double precision for X-Reset-After, set CultureInfo when parsing numeric types (
606dac3) - #1392 patch todo in NamedTypeReader (
0bda8a4) - #1405 add .NET Standard 2.1 support for Color (
7f0c0c9) - #1412 GetUsersAsync to use MaxUsersPerBatch const as limit instead of MaxMessagesPerBatch. (
5439cba) - #1416 false-positive detection of CustomStatusGame based on Id property (
a484651) - #1418 #1335 Add isMentionable parameter to CreateRoleAsync in non-breaking manner (
1c63fd4) - #1421 (
3ff4e3d) - include MessageFlags and SuppressEmbedParams (
d6d4429)
Changed
- #1368 Update ISystemMessage interface to allow reactions (
07f4d5f) - #1417 fix #1415 Re-add support for overwrite permissions for news channels (
e627f07) - use millisecond precision by default (
bcb3534)
Misc
- #1290 Split Unit and Integration tests into separate projects (
a797be9) - #1328 Fix #1327 Color.ToString returns wrong value (
1e8aa08) - #1329 Fix invalid cref values in docs (
363d1c6) - #1330 Fix spelling mistake in ExclusiveBulkDelete warning (
c864f48) - #1331 Change token explanation (
0484fe8) - #1349 Fixed a spelling error. (
af79ed5) - #1353 [ci skip] Removed duplicate "any" from the readme (
15b2a36) - #1359 Fixing GatewayEncoding comment (
52565ed) - #1379 September 2019 Documentation Update (
fd3810e) - #1382 Fix .NET Core 3.0 compatibility + Drop NS1.3 (
d199d93) - #1388 fix coercion error with DateTime/Offset (
3d39704) - #1393 Utilize ValueTuples (
99d7135) - #1400 Fix #1394 Misworded doc for command params args (
1c6ee72) - #1401 Fix package publishing in azure pipelines (
a08d529) - #1402 Fix packaging (
65223a6) - #1403 Cache regex instances in MessageHelper (
007b011) - #1424 Fix the Comparer descriptions not linking the type (
911523d) - #1426 Fix incorrect and missing colour values for Color fields (
9ede6b9) - #1470 Added System.Linq reference (
adf823c) - temporary sanity checking in SocketGuild (
c870e67) - build and deploy docs automatically (
2981d6b) - 2.2.0 (
4b602b4) - target the Process env-var scope (
3c6b376) - fix metapackage build (
1794f95) - copy only _site to docs-static (
a8cdadc) - do not exit on failed robocopy (
fd204ee) - add idn debugger (
91aec9f) - rename IsStream to IsStreaming (
dcd9cdd) - feature (
40844b9)
[2.1.1] - 2019-06-08
Fixed
- #994: Remainder parameters now ignore character escaping, as there is no reason to escape characters here (
2e95c49) - #1316:
Emote.Equalsnow pays no respect to the Name property, since Discord's API does not care about an emote's name (abf3e90) - #1317:
Emote.GetHashCodenow pays no respect to the Name property, see above (1b54883) - #1323: Optionals will no longer claim to be specified when a reaction message was not cached (
1cc5d73) - Log messages sourcing from REST events will no longer be raised twice (
c78a679) - News embeds will be processed as
EmbedType.Unknown, rather than throwing an error and dropping the message (d287ed1)
Changed
- #1311: Members may now be disconnected from voice channels by passing
nullasGuildUserProperties.Channel(fc48c66) - #1313:
IMessage.Tagsnow includes the EveryoneRole on @everyone and @here mentions (1f55f01) - #1320: The maximum value for setting slow-mode has been updated to 6 hours, per the new API limit (
4433ca7)
Misc
- This library's compatibility with Semantic Versioning has been clarified. Please see the README (
4d7de17) - The depency on System.Interactive.Async has been bumped to
3.2.0(3e65e03)
[2.1.0] - 2019-05-18
Added
- #1236: Bulk deletes (for messages) may now be accessed via the
MessagesBulkDeletedevent (dec353e) - #1240: OAuth applications utilizing the
guilds.joinscope may now add users to guilds through any client (1356ea9) - #1255: Message and attachment spoilers may now be set or detected (
f3b20b2) - #1260: DiscordWebhookClient may be created from a Webhook URL (
f2113c7) - #1261: A
GetCategoryChannelhelper may now be used to retrieve category channels directly from socket guilds (e03c527) - #1263: "user joined the guild" messages are now supported (
00d3f5a) - #1271: AuthorID may now be retrieved from message delete audit log entries (
1ae4220) - #1293: News Channels are now supported 📰 (
9084c42) ExclusiveBulkDeleteconfiguration setting can be used to control bulk delete event behavior (03e6401)
Removed
- #1294: The
IGuildUseroverload ofEmbedBuilder.WithAuthorno longer exists (b52b54d)
Fixed
- #1256: Fetching audit logs no longer raises null reference exceptions when a webhook has been deleted (
049b014) - #1268: Null reference exceptions on
MESSAGE_CREATEconcerning partial member objects no longer occur (377622b) - #1278: The token validator now internally pads tokens to the proper length (
48b327b) - #1292: Messages now properly initialize empty collections (
b2ebc03) - The
DiscordSocketRestClientis now properly initialized (a44c13a) - Exceptions in event handlers are now always logged (
f6e3200)
Changed
- #1305: Token validation will fail when tokens contain whitespace (
bb61efa)
Misc
- #1241: Added documentation samples for Webhooks (
655a006) - #1243: Happy new year 🎉 (
0275f7d) - #1257: Improved clarity in comments in the command samples (
2473619) - #1276: Documentation uses a relative path for the logo asset (
b80f0e8) - #1303: EmbedBuilder documentation now builds in the correct spot (
51618e6) - #1304: Updated documentation (
4309550) - CI for this project is now powered by Azure DevOps (this is not a sponsored message 🚀) (
9b2bc18) - IDisposableAnalyzers should now be a development dependency (
8003ac8)
[2.0.1] - 2019-01-04
Fixed
- #1226: Only escape the closing quotation mark of non-remainder strings (
65b8c09) - Commands with async RunModes will now propagate exceptions up to CommandExecuted (
497918e)
Misc
- #1225: Commands sample no longer hooks the log event twice (
552f34c) - #1227: The logo on the docs index page should scale responsively (
d39bf6e) - #1230: Replaced precondition sample on docs (
feed4fd)
[2.0.0] - 2018-12-28
Added
- #747:
CommandServicenow has aCommandExecutedevent (e991715) - #765: Parameters may have a name specified via
NameAttribute(9c81ab9) - #773: Both socket clients inherit from
BaseSocketClient(9b7afec) - #785: Primitives now automatically load a NullableTypeReader (
cb0ff78) - #819: Support for Welcome Message channels (
30e867a) - #835: Emoji may now be managed from a bot (
b4bf046) - #843: Webhooks may now be managed from a bot (
7b2ddd0) - #863: An embed may be converted to an
EmbedBuilderusing the.ToEmbedBuilder()method (5218e6b) - #877: Support for reading rich presences (
34b4e5a) - #888: Users may now opt-in to using a proxy (
678a723) - #906: API Analyzers to assist users when writing their bot (
f69ef2a) - #907: Full support for channel categories (
030422f) - #913: Animated emoji may be read and written (
a19ff18) - #915: Unused parameters may be discarded, rather than failing the command (
5f46aef) - #929: Standard EqualityComparers for use in LINQ operations with the library's entities (
b5e7548) - #934: Modules now contain an
OnModuleBuildingmethod, which is invoked when the module is built (bb8ebc1) - #952: Added 'All' permission set for categories (
6d58796) - #957: Ratelimit related objects now include request information (
500f5f4) - #962: Add
GetRecommendedShardCountAsync(fc5e70c) - #970: Add Spotify track support to user Activities (
64b9cc7) - #973: Added
GetDefaultAvatarUrlto user (109f663) - #978: Embeds can be attached alongside a file upload (
e9f9b48) - #984, #1089:
VoiceServerUpdateevents are now publically accessible (e775853,48fed06) - #996: Added
DeleteMessageAsynctoIMessageChannel(bc6009e) - #1005: Added dedicated
TimeSpanTypeReader which "doesn't suck" (b52af7a) - #1009: Users can now specify the replacement behavior or default typereaders (
6b7c6e9) - #1020: Users can now specify parameters when creating channels (
bf5275e) - #1030: Added
IsDeprecated,IsCustomproperties toVoiceRegion(510f474) - #1037: Added
SocketUser.MutualGuilds, various extension methods to commands (637d9fc) - #1043:
Discord.Coloris now compatible withSystem.Drawing.Color(c275e57) - #1055: Added audit logs (
39dffe8) - #1056: Added
GetBanAsync(97c8931) - #1102: Added
GetJumpUrl()to messages (afc3a9d) - #1123: Commands can now accept named parameters (
419c0a5) - #1124: Preconditions can now set custom error messages (
5677f23) - #1126:
Colornow has equality (a2d8800) - #1159: Guild channels can now by synced with their parent category (
5ea1fb3) - #1165: Bring Guild and Message models up to date with the API (
d30d122) - #1166: Added
GetVoiceRegionsAsynctoIGuild(00717cf) - #1183: Added Add Guild Member endpoint for OAuth clients (
8ef5f81) - #1196: Channel position can now be specified when creating a channel (
a64ab60) - #1198: The Socket client can now access its underlying REST client (
65afd37) - #1213: Added
GuildEmote#CreatorId(92bf836) - 'html' variant added to the
EmbedTypeenum (42c879c) - Modules can now be nested in non-module classes (
4edbd8d) - Added
BanAsyncto guild members (1905fde) - Added the permisison bit for priority speaker (
c1d7818) - All result types can use
FromError(748e92b) - Added support for reading/writing slow mode (
97d17cf) - Added markdown format for URLs (
f005af3) - Reactions can now be added to messages in bulk (
5421df1)
Fixed
- #742:
DiscordShardedClient#GetGuildForwill now direct null guilds to Shard 0 (d5e9d6f) - #743: Various issues with permissions and inheritance of permissions (
f996338) - #755:
IRole.Mentionwill correctly tag the @everyone role (6b5a6e7) - #768:
CreateGuildAsyncwill include the icon stream (865080a) - #866: Revised permissions constants and behavior (
dec7cb2) - #872: Bulk message deletion should no longer fail for incomplete batch sizes (
804d918) - #923: A null value should properly reset a user's nickname (
227f61a) - #938: The reconnect handler should no longer deadlock during Discord outages (
73ac9d7) - #941: Fix behavior of OverrideTypeReader (
170a2e0) - #945: Fix properties on SocketCategoryChannel (
810f6d6) - #959: Webhooks now use the correct parameter when assigning to the Avatar URL (
8876597) - #966: Correct the implementation of HasFlag and ResolveChannel in permissions (
32ebdd5) - #968: Add missing parameter in WebSocket4Net constructor (
8537924) - #981: Enforce a maximum value when parsing timestamps from Discord (
bfaa6fc) - #993: Null content will no longer null-ref on message sends/edits (
55299ff) - #1003: Fixed ordering of parameters in permissions classes (
a06e212) - #1010: EmbedBuilder no longer produces mutable embeds (
2988b38) - #1012:
Embed.Lengthshould now yield the correct results (a3ce80c) - #1017: GetReactionUsersAsync includes query parameters (
9b29c00) - #1022: GetReactionUsersAsync is now correctly paginated (
79811d0) - #1023: Fix/update invite-related behaviors (
7022149) - #1031: Messages with no guild-specific data should no longer be lost (
3631886) - #1036: Fixed cases where
RetryMode.RetryRatelimitwere ignored (c618cb3) - #1044: Populate the guild in
SocketWebhookUser(6a7810b) - #1048: The REST client will now create a full GuildUser object (
033d312) - #1049: Fixed null-ref in
GetShardIdFor(7cfed7f) - #1059: Include 'view channel' in voice channel's All permissions set (
e764daf) - #1083: Default type readers will now be properly replaced (
4bc06a0) - #1093: Fixed race condition in audio client authentication (
322d46e) - #1139: Fixed consistency in exceptions (
9e9a11d) - #1151:
GetReactionUsersAsyncnow uses the correct pagination constant (c898325) - #1163: Reaction ratelimits are now placed in the same bucket, treated correctly (
5ea1fb3) - #1186: Webhooks can now send files with embeds correctly (
c1d5152) - #1192: CommandExecuted no longer fires twice for RuntimeResults (
10233f3) - #1195: Channel Create audit log events properly deserialize (
dca6c33) - #1202: The UDP client should no longer be used after disposed (
ccb16e4) - #1203: The Audio client should no longer lock up on disconnect (
2c93363) - #1209: MessageUpdated should no longer pass a null after object (
91e0f03) - Ignore messages with no ID in bulk delete (
676be40) - No longer attempt to load generic types as modules (
b1eaa44) - No longer complain when a
PRESENCES_REPLACEupdate is received (beb3d46) - CommandExecuted will be raised on async exception failures (
6260749) - ExecuteResult now contains the entire exception, not an abridged message (
f549da5) - CommandExecuted will no longer be raised twice for exceptions (
aec7105) - The default WebSocket will now close correctly (
ac389f5)
Changed
- #731:
IUserMessage#GetReactionUsersAsyncnow takes anIEmoteinstead of astring(5d7f2fc) - #744: IAsyncEnumerable has been redesigned (
5bbd9bb) - #777:
IGuild#DefaultChannelwill now resolve the first accessible channel, per changes to Discord (1ffcd4b) - #781: Attempting to add or remove a member's EveryoneRole will throw (
506a6c9) - #801:
EmbedBuilderwill no longer implicitly convert toEmbed, you must build manually (94f7dd2) - #804: Command-related tasks will have the 'async' suffix (
14fbe40) - #812: The WebSocket4Net provider has been bumped to version 0.15, allowing support for .NET Standard apps (
e25054b) - #829: DeleteMessagesAsync moved from IMessageChannel to ITextChannel (
e00f17f) - #853: WebSocket will now use
zlib-streamcompression (759db34) - #874: The
ReadMessagespermission is moving toViewChannel(edfbd05) - #877: Refactored Games into Activities (
34b4e5a) - #943: Multiple types of quotation marks can now be parsed (thanks 🍎) (
cee71ef) - #955: The
GamePartymodel will now use long values (178ea8d) - #986: Expose the internal entity TypeReaders (
660fec0) - #992: Throw an exception when trying to modify someone else's message (
d50fc3b) - #998: Commands can specify their own
IgnoreExtraArgsbehavior (6d30100) - #1033: The
ReadMessagespermission bit is now namedViewChannel(5f084ad) - #1042: Content parameter of
SendMessageAsyncis now optional (0ba8b06) - #1057: An audio channel's
ConnectAsyncnow allows users to handle the voice connection elsewhere, such as in Lavalink (890904f) - #1094: Overhauled invites, added vanity invite support (
ffe994a) - #1108: Reactions now use the undocumented 1/.25 ratelimit, making them 4x faster (
6b21b11) - #1128: Bot tokens will now be validated for common mishaps before use (
2de6cef) - #1140: Check the invite
maxAgeparameter before making the request (649a779) - #1164: All command results will now be raised in
CommandExecuted(10f67a8) - #1171: Clients have been changed to properly make use of
IDisposable(7366cd4) - #1172: Invite related methods were moved from
IGuildChanneltoINestedChannel(a3f5e0b) - #1200: HasPrefix extensions now check for null values first (
46e2674) IGuildChannel#Nsfwmoved toITextChannel, now maps to the API property (608bc35)- Preemptive ratelimits are now logged under verbose, rather than warning. (
3c1e766) - The default InviteAge when creating Invites is now 24 hours (
9979a02) - All parameters to
ReplyAsynchave been made optional (b38dca7) - The socket client will now use additional fields to fill in member/guild information on messages (
8fb2c71) - The Audio Client now uses Voice WS v3 (
9ba38d7)
Removed
- #790: Redundant overloads for
AddFieldremoved from EmbedBuilder (479361b) - #925: RPC is no longer being maintained nor packaged (
b30af57) - #958: Remove support for user tokens (
2fd4f56) - User logins (including selfbots) are no longer supported (
fc5adca)
Misc
- #786: Unit tests for the Color structure (
22b969c) - #828: We now include a contributing guide (
cd82a0f) - #876: We now include a standard editorconfig (
5c8c784) - #963: Docs now include a release version, build instructions (
88e6244) - #964: Fix documentation spelling of 'echoes' (
fda19b5) - #967: Unit test permissions (
63e6704) - #968: Bumped version of WebSocket4Net to 0.15.2 (
8537924) - #972: Include sample bots in the source repository (
217ec34) - #1046: We now support .NET Standard 2.0 (
bbbac85) - #1114: Various performance optimizations (
82cfdff) - #1149: The CI will now test on Ubuntu as well as Windows (
674a0fc) - #1161: The entire documentation has been rewritten, all core entities were docstringed (
ff0fea9) - #1175: Documentation changes in command samples (
fb8dbca) - #1177: Added documentation for sharded bots (
00097d3) - #1219: The project now has a logo! 🎉 (
5750c3e) - This project is now licensed to the Discord.Net contributors (
710e182) - Added templates for pull requests (
f2ddf51) - Fixed documentation layout for the logo (
bafdce4)
[1.0.2] - 2017-09-09
Fixed
- Guilds utilizing Channel Categories will no longer crash bots on the
READYevent.
[1.0.1] - 2017-07-05
Fixed
- #732: Fixed parameter preconditions not being loaded from class-based modules (
b6dcc9e) - #726: Fixed CalculateScore throwing an ArgumentException for missing parameters (
7597cf5) - EmbedBuilder URI validation should no longer throw NullReferenceExceptions in certain edge cases (
d89804d) - Fixed module auto-detection for nested modules (
d2afb06)
Changed
- ShardedCommandContext now inherits from SocketCommandContext (
8cd99be)