Releases: projectdysnomia/dysnomia
Releases · projectdysnomia/dysnomia
v0.2.4
New features
- Multi-colored roles (#209)
- User collectibles (#204)
- Invite flags (#210)
- Paginated pins (#207)
- User guild tags (#212)
- New voice options (#218, #220)
- End-to-end encrypted voice (#196, #228) – huge thanks to @Snazzah for implementing this
- Message pin and bypass slowmode permission (#219, #231)
- Added constants and typings for new modal features (file uploads, selects, etc.) (#216, #221, #224, #234)
- Support for editing the avatar, banner, and bio of the bot's member object (#223)
- Support for fetching member role counts (#232)
- Community invites (#233)
Bug fixes
Typings
- Added approximated user authorization count to OAuth2 application data (#202)
- Added some fields for v2 components (#202)
- A mapping of type IDs to the concrete interaction types has been added (#226)
Deprecations
- Code paths that involve bot user guild ownership have been deprecated, as they no longer work. (#214)
Changes of small significance
- Browser-based websockets now prefer binary data as ArrayBuffers (#203)
- Added automod quarantine constants (#213)
- Synced guild features (#211, #215)
- Member mentions no longer use the old nickname mention format (
<@!1234...>) (#225)
Contributors
- @io-spectre made their first contribution in #226
- @Snazzah
- @TTtie
Full Changelog: v0.2.3...v0.2.4
v0.2.3
What's Changed
- feat(Constants): add
MessageFlags.HAS_SNAPSHOTby @TTtie in #192 - feat: support incident actions by @TTtie in #193
- fix(types): add
globalNamealias toMemberby @TTtie in #195 - feat: add
attachmentSizeLimittoInteractionby @Snazzah in #197 - feat: support components v2 by @Snazzah in #194
- types(UnfurledMediaItem): add response-only properties by @TTtie in #199
- fix(types): widen the
AnyChanneltype to cover all channel types by @TTtie in #201
Full Changelog: v0.2.2...v0.2.3
v0.2.2
v0.2.1
v0.2.0
Breaking changes
- APIs deprecated in v0.1.0 have been removed
- Node.js v18 and later is required to install v0.2.0 and newer
tweetnaclcannot be used with Dysnomia any longer due to missing support for new voice encryption modes. To continue using voice:- Install
sodium-native(native libsodium bindings):npm install sodium-native - If it is not possible to use native libraries, install StableLib:
npm install @stablelib/xchacha20poly1305@^1.0.0- Using version 2 and newer versions of
@stablelib/xchacha20poly1305is not supported due to the newer packages using ESM.
- Using version 2 and newer versions of
- Install
New features
- Bulk member banning (#130)
- Super reactions (#107)
- Polls (#139)
- Application-level emoji (#145)
- Message forwarding (#144)
- App monetization (#114, #176)
- User installable apps (#129)
- Soundboard (#172)
- Support for voice gateway v8 and new encryption modes (#156)
- Entry point commands (#162)
- Voice channel effect send and voice user connect events (#161, #165)
withResponsesupport forcreateInteractionResponse(#167)Interaction#createMessageandInteraction#editParentare now guaranteed to return a Message object (#167)messageUpdateevent now always emits full Messages (#154)- Avatar decorations (#68)
- The current application may now be updated (#118)
- Support for message nonces (#128)
- Webhooks may now delete their messages in threads (#141)
- Voice state updates now update the member object (#131)
- Support for various new properties in the API and constant updates (#106, #110, #117, #124, #126, #135, #136, #137, #133, #138, #151, #159, #171, #174, #175)
Bug fixes
- The
nsfwproperty in Text/VoiceChannel has been brought back (#112) Client#editGuildWidgetendpoint URL has been corrected (#119)getAllUsersand resume compression works again (#121)- The debug message when ratelimit headers are missing has been corrected (#146)
VoiceState#requestToSpeakTimestampis now correctly null instead of being NaN (#150)Constants.UserFlags.HYPESQUAD_ONLINE_HOUSE_1name has been corrected (#152)- Request-level errors are now correctly parsed (#163)
Client#editGuildScheduledEventcorrectly returns aGuildScheduledEventobject (#166)- Interaction construction from an uncached guild won't fail because of missing member ID (#181)
Deprecations
Channel#clientis going to become private in the next release - use your own client reference instead (#58)Client#getNitroStickerPackshas been renamed toClient#getStickerPacks(#109)PrivateChannel#recipienthas been migrated to a collection (#129) - this has been done to accomodate for the resurrection ofGroupChannel
Documentation and typings
SelectMenutype now allows for default values forautomatically populated menus (#111)OAuthApplicationInfohas been updated to include new properties (#153, #177)- Inline
@props were migrated to class members (#113)
Other changes
- Using voice in browser-like runtimes now triggers a runtime warning instead of being blocked outright (#108)
- Using voice in non-Node runtimes is not officially supported. Proceed at your own caution.
- Peer dependency syntax for
erlpackhas been corrected (#157)
Full Changelog: v0.1.3...v0.2.0
v0.1.3
New features
- Unique username system support (#70)
- Additional headers and HTTP server port can now be specified in REST options (#78, #79)
- The onboarding object can now be updated (#69)
- Attachment and role flags (#85, #86)
- Uncached
messageReactionAddevents may now include data about the author of the message (#87) - Support for
/applications/@meendpoint (#90) - Support for
withCountsinClient#getRESTGuilds()(#88) - Support for
defaultForumLayoutinClient#createChannel()(#84) - Support for media channels (#96)
- Document being able to set activity state (#101)
- New permission constants (#76)
Performance improvements
- The
update()method is now called only once in classes inheriting fromChannelandUser(#91)
Bug fixes
AnyInteractionGatewaytype now includesModalSubmitInteraction(#97)Constants.REST_VERSIONandConstants.GATEWAY_VERSIONhave been corrected in the typings (#98)- Attachment command options are now allowed in TypeScript (#92)
Full Changelog: v0.1.2...v0.1.3
v0.1.2
New features
- Voice messages (#67)
- Onboarding (read only) (#65)
- Support for new permission bits (#60) and application flags (#59)
Note
BothmanageEmojisAndStickersandmanageGuildExpressionspermissions are supported in v0.1.x releases.manageEmojisAndStickersis going to be deprecated starting with v0.2.0. - Support
Guild#maxStageVideoChannelUsers(#61) - Join raid protection support (#71)
Future-proofing
- Interactions now use the
channelfield to identify the channel the interaction originated in (#63)
Full Changelog: v0.1.1...v0.1.2
v0.1.1
Upstream backports
- Added
Client#addGuildMember(backported from abalabahaha/eris@61b3b4f) - Added missing properties to
guildUpdateevent (backported from abalabahaha/eris@9320ab2)
Bug fixes
- Updates to
PrivateThreadChannels are now correctly propagated (#54)
Future-proofing
- The base
Interactionclass is going to be emitted if the type is unknown (#43)
Full Changelog: v0.1.0...v0.1.1
v0.1.0
Additions/removals from Eris PRs
- Slash command permissions, v2 (abalabahaha/eris#1372)
- Attachment type (abalabahaha/eris#1358)
- Removed user account-related features (abalabahaha/eris#1338)
- Interaction refactor (abalabahaha/eris#1309)
- Interaction modals (abalabahaha/eris#1404)
- Usage of process warnings for deprecations (abalabahaha/eris#1276)
- Guild scheduled events (abalabahaha/eris#1275)
- Redirect following when playing songs (abalabahaha/eris#494)
- Return void on 204 (abalabahaha/eris#1021)
- Ability to use HTTP instead of HTTPS for REST (abalabahaha/eris#1193)
- Standardized parsing errors (abalabahaha/eris#1227)
- Gateway resume URL support (abalabahaha/eris#1410)
- Support message deletion in seconds when banning (abalabahaha/eris#1397)
- Auto moderation (abalabahaha/eris#1390)
- Gateway option split (abalabahaha/eris#1384)
- Consistency/QoL fixes (abalabahaha/eris#1379)
- Support for async permission checks for CommandClient (now deprecated) (abalabahaha/eris#1414)
- Switch to Discord API v10 (abalabahaha/eris#1371)
editGuildVanityremoval (#18)
Additions
- Entity select types (#4)
- Modernized file uploading (#5)
- Support for new trigger metadata (#9, #34)
Warning
Compared to other Eris forks, camel-cased trigger metadata properties are deprecated. Use snake_case instead. ACTIVE_DEVELOPERuser flag (#10, #23)- Forum channel support (#1, #14)
- Consistent casing of
Attachment#proxyURL(#11) Guild#eventsis now populated onguildCreate(#12)- Support for new message types (#22)
GIFsticker format support (#24)- Thread member pagination support (#25)
- Role subscriptions (#21)
threadIDineditWebhookMessage(#28)
Removals/deprecations
- Removed what was marked as deprecated after merging PRs from the Eris tree.
- Any undocumented features and constants were marked as deprecated.
Guild#fetchAllMembersis deprecated in favor ofGuild#fetchMembers- The
fileparameter/option in functions that take message attachments is deprecated in favor of theattachmentsoption createThreadWithoutMessage()is deprecated in favor ofcreateThread()- Creation of a
Clientby calling the default package export is deprecated - Discovery-related methods are deprecated
getInvite()options have been merged into an object – passing options as parameters is deprecatedCommandClientis deprecated – use slash commands instead- Camel-cased auto moderation trigger metadata properties are deprecated – use snake_case instead
Full list of differences from Eris tree
- Calling the package export directly is deprecated
- Deprecated
CommandClient; use a slash command framework instead - Support for gateway resume URL
- Support for following gateway events:
autoModerationActionExecution(Guild, Object)autoModerationRuleCreate(Guild, AutoModerationRule)autoModerationRuleDelete(Guild, AutoModerationRule)autoModerationRuleUpdate(Guild, AutoModerationRule | null, AutoModerationRule)guildIntegrationsUpdate(Guild)applicationCommandPermissionsUpdate(Object)guildAuditLogEntryCreate(Guild, GuildAuditLogEntry)integrationCreate(Guild, GuildIntegration)integrationUpdate(Guild, GuildIntegration)integrationDelete(Guild, Object)
- Old message components are included in
messageUpdateevent nsfwproperty was removed from old guild data inguildUpdateeventguildBanAdd/guildBanRemoveevents now emit a partial guild object when the guild is uncachedRequestHandlersupports calling the API via HTTPRequestHandlersupports using multipart field names different from the file nameRequestHandler#requestreturns undefined on empty response body- Redirects are supported when playing audio from URLs
- Support for auto-moderation
CommandInteractionsupports attachments- Support for forum channels
- Removed methods available only for user accounts and classes for objects that only user accounts could receive
Guild#eventsis auto-populated with data fromguildCreate- Properties related to discovery in
Guildhave been removed - API calls related to discovery have been deprecated
Guild#fetchAllMembershas been deprecated in favor ofGuild#fetchMembers- Added additional fields to
GuildAuditLogEntry GuildAuditLogEntry#usercan be uncached- Modal submit interactions are supported
- Aligned most of the classes and constant enums with Discord's documentation
- Deprecated properties (after initial PR merge) have been removed
- Client options related to gateway have been merged into
ClientOptions.gateway - Client options related to REST have been merged into
ClientOptions.rest Client#banGuildMemberdeleteMessageDayshas been replaced bydeleteMessageSeconds- The
fileparameter (oroptions.fileproperty) in methods that create a message has been deprecated in favor ofoptions.attachments Client#createStageInstancesupports sending stage start notificationsClient#createThreadWithoutMessagehas been deprecated in favor ofClient#createThread- Added
Client#editGuildMFALevelto change the MFA level in bot-owned guilds - Support for role connections
Client#editWebhookMessagesupports passing athreadIDto edit webhook-created messages within threadsClient#executeWebhooksupports passing athreadNameto create threads within forum channels- Support for localized guild commands
Client#getGuildAuditLognow returns additional objects returned by the APIClient#getInvitesupports passing a guild scheduled event ID to include with the invite (if public)Client#getInviteparameters have been merged into a singleoptionsobject- Support for fetching a singular thread member (
Client#getThreadMember) - Support for including guild member data along with thread member data