Releases: SpaceManiac/discord-rs
Releases · SpaceManiac/discord-rs
v0.7.0 - Release train continues
- Overhaul voice support for 1-on-1 and group calls
- Add
LiveServer::permissions_forto calculate member permissions - Allow disabling voice support using Cargo features
- Move member sync methods to
Connectionrather thanState - Cleanly disconnect in
Connection::shutdown - Store discriminators as
u16rather thanString - Implement
Displayfor ID types, printing just the number - Change
Error::Closedto contain a decodedString - Discord changes
- Reaction support
- Remove
xkcdpassfrom invites - Add message pinning events
- Add permissions: administrator, external emojis, add reaction, manage webhooks
- Implement guild sharding and gateway v6
- Implement Discord's official rate limit handling
- Compression support in
READYandGUILD_CREATE - Message delete bulk event
- More fields in
UserSettings
- Rest API additions
create_permission,delete_permissionget_application_infoget_server_channelsget_unresolved_incidentssuggested_shard_count
- Update version of various dependencies
v0.6.0 - More functionality, Discord changes
- Natively support auto-reconnection and resuming the previous session
- Add utility methods to generate mentions for users, roles, and channels
- Fix errors relating to missing
read_state - Fix current voice channel going out of sync when forcibly moved
- Replace
Event::ClosedwithError::Closed, with more information and better structure - Model support for:
- Unavailable servers
- Nicknames
- Role mentionability
- "Now streaming" presences
- Pinned messages
- User notes
- 2FA information
- Existing fields now present on
Server
- Expand capabilities of
edit_server: owner, verification level, and splash - New REST wrappers:
- Server prune
- Get active and upcoming maintenances
- Get server member
- Pin and unpin messages
- Get messages around a specific message
- Delete messages in bulk
- Edit user notes
Thanks to @taiyaeix and @nstafie for their contributions to this release.
v0.5.0 - Better voice, bot accounts, more REST
- New constructor
Discord::from_bot_tokenfor bot accounts - Errors decoding optional fields are no longer silently ignored
- The ID types now wrap
u64s instead ofStrings - Voice overhaul
- Stereo support
- Voice receive support
- Encrypted voice support
- Multi-server voice support
- State is retained even if connection is lost
- New examples:
djandvoice_receive
- Rest API additions
- get_voice_regions, move_member_voice
- get_servers, get_bans, add_ban, remove_ban
- send_file
- edit_member_roles, kick_member
- edit_server, edit_profile (use read_image for avatars)
- create_invite, get_server_invites, get_channel_invites
- create_server now has an icon parameter
- Various model updates for new and changed Discord functionality
v0.4.0 - Better voice, error handling
- Simplified voice module API and added
youtube-dlsupport. - Added
Discord::new_cachewhich will cache and reuse past login tokens. Use is recommended. - Improved error handling, with better messages and more descriptive entries in the
Errorenum:Error::Statusnow also contains the json response describing the error.Error::RateLimitedadded, including how long to wait before retrying.Error::Protocoladded for protocol misunderstandings.
- Updated for protocol changes:
- Removed mentions array from
send_messageandedit_message. - Removed
UserSettings::muted_channels, added insteadUserServerSettings. - Added
PublicChannel::bitratefield. - Added
LiveServer::verification_levelandmember_count,Server::verification_level, and removedServer::joined_at.
- Removed mentions array from
- Added REST endpoints:
- create/leave/delete server
- get/accept/delete invite
- edit channel
v0.3.0 - Freeform game names
- Added
User-Agentheader to the library's requests, per official recommendation. - Changed from
game_idto freeform game names in accordance with API changes.
v0.2.0 - Voice support
- Added initial voice transmission support, including queuing and
ffmpegsupport. - Changed from
println!to using thelogcrate for logging. - Added
UserSettingsto the model, events, and state tracking. - Added support for gateway migration.
- Added REST endpoints:
- get message log
- edit/delete/acknowledge message
- create/get private channel
- get user avatar
v0.1.0 - Initial release
- Basic REST support:
- login/logout
- create/edit/delete channel
- send message
- broadcast typing
- Basic websocket event support:
- connect, set game id, and poll for events
- ready, user update, voice state update
- typing start, presence update
- message create/update/ack/delete
- server create/update/delete
- member add/update/remove
- role create/update/delete
- channel create/update/delete
- State tracking for websocket events.