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_for
to calculate member permissions - Allow disabling voice support using Cargo features
- Move member sync methods to
Connection
rather thanState
- Cleanly disconnect in
Connection::shutdown
- Store discriminators as
u16
rather thanString
- Implement
Display
for ID types, printing just the number - Change
Error::Closed
to contain a decodedString
- Discord changes
- Reaction support
- Remove
xkcdpass
from 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
READY
andGUILD_CREATE
- Message delete bulk event
- More fields in
UserSettings
- Rest API additions
create_permission
,delete_permission
get_application_info
get_server_channels
get_unresolved_incidents
suggested_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::Closed
withError::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_token
for bot accounts - Errors decoding optional fields are no longer silently ignored
- The ID types now wrap
u64
s instead ofString
s - Voice overhaul
- Stereo support
- Voice receive support
- Encrypted voice support
- Multi-server voice support
- State is retained even if connection is lost
- New examples:
dj
andvoice_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-dl
support. - Added
Discord::new_cache
which will cache and reuse past login tokens. Use is recommended. - Improved error handling, with better messages and more descriptive entries in the
Error
enum:Error::Status
now also contains the json response describing the error.Error::RateLimited
added, including how long to wait before retrying.Error::Protocol
added for protocol misunderstandings.
- Updated for protocol changes:
- Removed mentions array from
send_message
andedit_message
. - Removed
UserSettings::muted_channels
, added insteadUserServerSettings
. - Added
PublicChannel::bitrate
field. - Added
LiveServer::verification_level
andmember_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-Agent
header to the library's requests, per official recommendation. - Changed from
game_id
to freeform game names in accordance with API changes.
v0.2.0 - Voice support
- Added initial voice transmission support, including queuing and
ffmpeg
support. - Changed from
println!
to using thelog
crate for logging. - Added
UserSettings
to 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.