Releases: DSharpPlus/DSharpPlus
DSharpPlus 4.4.6
fixes another bug with the logger factory and shared ratelimits:
- 4.4.6 - DiscordShardedClient logger fix by @Plerx2493 in #1709
Full Changelog: v4.4.5...v4.4.6
DSharpPlus 4.4.5
applies the sharded client ratelimiting fix from 4.4.4 and #1703
DSharpPlus 4.4.4
fixes an issue where the sharded client would maintain a different ratelimiter for each shard, thus causing 429s if one shard was making a request other shards had exhausted.
this issue was originally fixed by @Plerx2493 in #1703
Full Changelog: v4.4.3...v4.4.4
DSharpPlus 4.4.3
Fixes an issue with autocomplete where not registering a configuration would break autocomplete. This fix was found by @Plerx2493
DSharpPlus 4.4.2
Release v4.4.1
This is a hotfix release fixing a bug where the 4.4.0 async events would execute in parallel, but would still block the gateway. My apologies.
DSharpPlus 4.4.0
Another stable release! This release contains a crucial fix to VoiceNext (all previous releases are broken, to our knowledge), forum support, changes to events and comes along with a large overhaul of the documentation.
What's Changed
- VNext works, somewhat (@Naamloos)
- forum support! (@VelvetThePanda)
- events are now executed in parallel, not synchronously; see the documentation for details (@akiraveliara)
- varying improvements to slash commands (@OoLunar, @BujjuIsDumb, @Plerx2493, @VelvetThePanda)
- extensions are now disposed of smoothly (@Naamloos)
- new docs! (@InFTord)
Additionally, there have been a fair few smaller fixes and improvements over the entire library.
Detailed changelog
- Move slash commands article to docs. by @lilacse in #1443
- Fix wrong URI escaping in DSharpPlus.Lavalink by @SchickenN0ck1t in #1452
- ListArchivedThreads functions use ISO8601 datetime standard when using date filter by @Aletron9000 in #1445
- Simplify getting the mention string for slash commands by @BujjuIsDumb in #1420
- Optimization: Don't double-deserialize data if possible by @VelvetThePanda in #1450
- Add slash command name to argument conversion error by @VelvetThePanda in #1454
- Auto updating docs by @InFTord in #1458
- fix FAQ+broken image in articles by @InFTord in #1464
- Update emoji map by @OneYellowLemon in #1467
- Improve docs by @InFTord in #1468
- Add Type check in SlashCommand method registration by @Plerx2493 in #1472
- Update docs to point out the MessagContents intent by @Plerx2493 in #1479
- Fix #1357 by @thunderstorm010 in #1358
- Fixed a potential NRE when setting DiscordMessageBuilder's Embed or Sticker to null. by @DubyaDude in #1481
- Added
OrderedChannels
property by @OoLunar in #1484 - Implement IP discovery fix in VNext. by @Naamloos in #1485
- [ci skip] Generic Host Docs Article by @Aaron2550 in #1488
- Update actions to include symbols and update
debug_symbols.md
by @OoLunar in #1491 - [ci-skip] Adds Ready-Event documentation and small docs fixes by @Plerx2493 in #1498
- Forum support by @VelvetThePanda in #1455
- Fix broken XML tags by @OoLunar in #1501
- remake asynchronous events by @akiraveliara in #1477
- update concurrenthashset by @akiraveliara in #1508
- Add DI to
IAutocompleteProvider
by @OoLunar in #1504 - Removed outdated portion of events article. by @Giggitybyte in #1520
- Send raw events by @OoLunar in #1521
- Enforce IDisposable for Extensions to ensure proper cleanup when the Client itself disposes. by @Naamloos in #1511
New Contributors
- @lilacse made their first contribution in #1443
- @SchickenN0ck1t made their first contribution in #1452
- @BujjuIsDumb made their first contribution in #1420
- @DubyaDude made their first contribution in #1481
- @Aaron2550 made their first contribution in #1488
Full Changelog: v4.3.0...v4.4.0
DSharpPlus v4.3.0
DSharpPlus 4.3.0
We aim for this to be one of the closing releases of the v4 development cycle.
Migration should be relatively straight-forward. One important change is that you will now need to specify the message content intent in your DiscordConfiguration.Intents
property if you wish to receive message content, as a side effect of updating to v10 of the discord API.
What's Changed
-
API v10
-
Support for Slash Commands V2
-
Support for ban pagination
-
Support for Text-in-Voice
-
Support for new thread archival rules
-
Added command category support to CommandsNext
-
Added application command cooldowns to SlashCommands
-
Unified and abstracted all message builders for easier use
-
(Slightly) improved documentation
-
Fixed a bunch of bugs
Detailed changelog:
- CNext/Entities cleanup by @OoLunar in #1284
- Fix incorrect value for MessageActivityType.JoinRequest by @Giggitybyte in #1285
- Remove misinformation by @kuylar in #1286
- Use .png for APNG stickers by @Erisa in #1283
- Fixed incorrect nullability for Command in CommandEventArgs by @aPinat in #1265
- Fix Grammar by @quinchs in #1289
- Add GenerateOAuthUri by @akiraveliara in #1293
- Add ban pagination by @OoLunar in #1295
- Slash Command V2 by @VelvetThePanda in #1186
- Fixed VoiceNext ignoring incoming packets after a while. by @airbreather in #1300
- Added RequireReferencedMessageAttribute. by @MindHardt in #1303
- Removed Three/Seven Day Thread Archive Checks by @DWaffles in #1306
- Add an option to bypass cache in GetMemberAsync and others by @Foxite in #1297
- Add guild member update username property by @zaanposni in #1154
- Restore nameof call in CNextExtension by @akiraveliara in #1310
- Add missing audit log action types and fields by @F1restar4 in #1308
- Fixed NRE in Thread Members Update by @DWaffles in #1120
- Added Client-Name header to Lavalink connection. by @DHCPCD9 in #1313
- Fix typo by @MichailiK in #1315
- Fix typo by @InFTord in #1316
- Fix docs typos in DiscordRestClient by @InFTord in #1317
- Implement smart quote handling in CommandsNext (#1268) by @MichailiK in #1320
- Text in Voice (TiV) support by @VelvetThePanda in #1149
- Update Github Actions by @OoLunar in #1323
- Fix DiscordRestClient.DeleteGuildAsync race condition by @OoLunar in #1326
- Fixed Mentions in Updated Messages by @DWaffles in #1327
- Fix guild only applications not working because of wrong JSON payload name by @kuylar in #1328
- Refactored
DiscordMessage.PopulateMentions
andDiscordClient.OnMessageUpdateEventAsync
by @OoLunar in #1331 - Improve XML documentation for DiscordClient.Ready by @Giggitybyte in #1330
- Fix ContextMenuContext.TargetMember always being null by @OoLunar in #1329
- Fix #1331 by @OoLunar in #1337
- Slash Command option length support for STRING option types by @kuylar in #1339
- Fix a small issue where TargetUser can be null in message context men… by @Naamloos in #1341
- Added DiscordConfiguration.LogUnknownEvents by @OoLunar in #1346
- Update Readme Badges by @OoLunar in #1347
- Make DiscordConfiguration.LogUnknownEvents actually work by @Erisa in #1348
- CNext: Fix NRE using CreateFakeContext with a DM channel by @DPlayer234 in #1351
- Update emoji database by @OneYellowLemon in #1352
- Fix #1249 by @thunderstorm010 in #1353
- Removed most compiler warnings. by @OoLunar in #1333
- Change GuildMemberUpdatedEventArgs to contain before and after DiscordMember objects by @selfdocumentingcode in #1359
- Fix #1325 - WebhookBuilder Throws Bad Request by @waffle-lord in #1363
- Implemented PATCH /guilds/:guild_id/roles by @OoLunar in #1311
- Cache threads upon thread creation by @OoLunar in #1366
- categorization for the cnext default help command by @akiraveliara in #1371
- Fix memberBefore missing roles in GuildMemberUpdateEventArgs when not… by @selfdocumentingcode in #1364
- Ported CommandsNext cooldown attribute to Slash Commands by @OoLunar in #1375
- Add Russian locale by @DiFFoZ in #1379
- Update emoji mappings to support Twemoji v14.0.2 by @OneYellowLemon in #1387
- Fix #1393 by @akiraveliara in #1395
- support command groups for categories by @akiraveliara in #1394
- Add DiscordAttachment to allowed parameter types in slash command documentation by @OneYellowLemon in #1398
- Improve obsoletion message on DiscordOverwriteBuilder by @akiraveliara in #1401
- Ensure packet queue size property is copied. by @Neuheit in #1403
- Support for future select types by @VelvetThePanda in #1251
- Fix Stack Overflow in Interactivity by @Neuheit in #1406
- Remove critical log message for non connecting clients by @Neuheit in #1405
- Fix Permissions.All not including Permissions.ModerateMembers by @Refragg in #1402
- Fix ChannelTypes argument ignored in DiscordChannelSelectComponent by @Tawmy in #1409
- Add CNext check for message content intent by @VelvetThePanda in #1368
- Fix role cache i guess by @JulianusIV in #1410
- Make IOptional public by @OoLunar in #1411
- Add AttributeTargets.Method on GuildOnlyAttribute since it's missing by @Naamloos in #1412
- Adds forum channel type. by @Neuheit in #1404
- Add DeferAsync() to DiscordInteraction by @Tawmy in #1415
- Add abstractions for MessageBuilders (IDiscordMessageBuilder) by @Naamloos in #1413
- remove code targeting .NET Standard 1.3 by @akiraveliara in #1414
- Make InitializeShardsAsync public by @OoLunar in #1418
- Ensure DiscordInteractionResponseBuilder correctly copies files by @OoLunar in #1422
- Minor hotfix making MessageBuilders useable in more situations by @Naamloos in #1423
- Add missing constructors to Discord Message Builders by @OoLunar in #1424
- Bump Newtonsoft.Json from 13.0.1 to 13.0.2 in /DSharpPlus by @dependabot in #1425
- Rewrite
DiscordEmoji
Try* methods to not throw by @OoLunar in #1426 - Update actions to update the channel topic on every nightly/release by @OoLunar in #1427
- Pull git history by @OoLunar in #1430
- Hard to launch an app that wasn't built - @Vamplay by @OoLunar in #1431
- Fix env var name by @OoLunar in #1432
- Correctly write the error by @OoLunar in #1433
- Fix Nuget links by @OoLunar in #1434
- Replace 1091 with 1195 due to the run number "resetting" by @OoLunar in #1435
- code and xmldocs typo fixes by @InFTord in #1429
- Don't downloa...
DSharpPlus v4.2.0
DSharpPlus v4.2.0
EDIT: Due to technical constraints we will be turning this rc1
into a stable release. As an alternative, we will follow semvar correctly and release patches when bugs are found (I.E, v4.2.1
). Thank you for understanding.
Migrating from v4.1.0
There may have been a few parameter shifts in the REST methods however no major breaking changes were made.
Additions since v4.1.0
- @IDoEverything's Slash Command package was accepted as an official extension. It handles all forms of Application Commands.
- All Discord exceptions now inherit the
DiscordException
abstract class. This makes it easier to catch exceptions from Discord. - Support for the new member timeout feature.
- Added the
.IsDefined
extension method toOptional<T>
. - Tons of other additions were made. To take a look at everything, you're welcome to scroll through the 396 commits made: v4.1.0...v4.2.0, or by using the TUI:
git log --oneline 6591ee94fbf937681892ef973bedcc25be417d55..
Thanks to the following for contributing (sorted alphabetically):
@Aletron9000
@alexhorner
@AnriaruDoragon
@b-rad15
@bakabun
@BloodfallenTear
@DHCPCD9
@dongle-the-gadget
@DPlayer234
@DWaffles
@Emzi0767
@Epictek
@Erisa
@Erlite
@akiraveliara
@fazelukario
@FireController1847
@Foxite
@Giggitybyte
@IDoEverything
@JulianusIV
@Kaoticz
@kuylar
@Lulalaby
@MichailiK
@N0D4N
@nefarius
@Neuheit
@OoLunar
@quinchs
@redstarxx
@RocketPrinter
@roxxel
@SakuraIsayeki
@Scartzz
@Scordium
@Silverdimond
@tenhobi
@tygore587
@VelvetThePanda
@zaanposni
DSharpPlus v4.1.0
DSharpPlus v4.1.0 release
This version contains several new interaction based entities such as support for components, buttons, and select menus, along with various other Discord entities/endpoints. It also contains fixes for guild specific avatars, async event handler exceptions, and the guild sharding formula. You can view the full list of changes by viewing the commit history between 55d27d0 and 6591ee9.
Special thanks to the following contributors for their work in making this release possible:
@IDoEverything
@VelvetThePanda
@Lulalaby
@N0D4N
@billyeatcookies
@kuylar
@Emzi0767
@ABCRic
@encodeous
@uwx
@nebulatgs
@JokinAce
@redstarxx
@SupinePandora43
@DWaffles
@Giggitybyte
@CloudTheWolf
@ProfDoof
@abnormal0666
@ZaptoInc
@Soyvolon
Migrating from v4.0.1
This is a minor version and contains several new classes/methods from the Discord API. You may also encounter breaking changes on a few REST methods due to more parameters being added on the their respective API endpoints.