Changelog
This project follows Semantic Versioning and Keep A Change Log.
[v0.6.1]
Fixed
- Removed stray log message in the
command_handler
. - Corrected infinite reconnects introduced in
v0.6.0
.
[v0.6.0] 2021-11-06
Added
- Support for resuming,
RESUMED
event, andon_resume
callbacks. - Requirement for the
logging_levels
lib.
Changed
- All command helper registrations now take callbacks with 0-3 arguments. They must be in (interaction, dict, client) order.
- Huge reduction in log chatter, most logs moved to
debug
level. - Several
critical
level logs moved towarning
as we can recover from them.
Fixed
- Detect zombie connections and attempt resume.
[v0.5.3] 2021-11-05
Changed
- Made connections a bit more stable, added some nice debug.
[v0.5.2] 2021-11-05
Added
InteractionDataOptionStructure
now supports aget()
method like a dict.- More testing coverage.
[v0.5.1] 2021-11-04
Fixed
Interaction
would fail on simple data types due to a logic error within the type resolver. Added test and corrected.
[v0.5.0] 2021-11-04
Changed
- Reworked
Interactions
to use values on their options fields. This allows for thefocused
field to exist next to it, which is required for Autocomplete actions.
[v0.4.4] 2021-10-31
Added
- Support for autocomplete
Interaction
flows. - All
BaseDiscordObjects
now supportvalidation
as a defaulted (NonImplementedError
) function. All classes should implement this soon.
Removed
- We had a
CHANNEL_TYPE
andCHANNEL_TYPES
enumeration in two places, removed the one ininteractions
.
Fixed
- Interaction processing called the API without reason, fixed that.
[v0.4.3] 2021-10-31
Added
- Handle
VOICE_STATE_UPDATE
events.
Fixed
PRESENCE_UPDATE
could sometimes brick us with IDs and creation timestamps in the 4000's. Handle both now.- Registering a command to a guild errored if you gave it a valid string of a guild_id.
[v0.4.2] 2021-10-30
Added
Activty
and friends.Presence
and friends.- Support
GUILD_MEMBER_UPDATE
events.
Fixed
- Made reconnection more robust.
[v0.4.1] 2021-10-27
Added
- Added the
dyscord.command
alias to point to commonly used command interfaces. Message.formatter.TIMESTAMP_FLAGS
was missing theSHORT_DATE_TIME
option.
Changed
MESSAGE_UPDATE
events now return aMessageUpdate
object. This is a duplicate ofMessage
, except most fields are annotated asOptional
.User
andMember
objects now support mentions straight from the__str__()
method. This allows you to dof'Hello {user_variable}
and get a mention!\- Unit testing coverage now > 70% for the project. On our way to 100%!
Deprecated
Command.generate(options)
Argument is optional, and should be removed by0.6.0
.
Removed
- Unused
Cache()
function fromUser
andMember
. - Nonfunctionl
edit_origional_response()
anddelete_initial_response()
fromInteractionResponse
, they are not in the discord API.
Fixed
- Removed
ephemeral
from followup generate messages, discord ignores this flag anyway! Message
objects assumed they would get a lot of fields, which is not true inMESSAGE_UPDATE
events.
[v0.4.0] 2021-10-27
Added
- New set_all_intents() function in DiscordClient. Sets all intents to True.
- Better example code.
- User and Member now have all attributes set to
None
by default. - Role now has all attributes set to
None
by default. - Begin restructure of documentation to make some sense.
- Registering to a guild allows you to register different commands to different guilds.
- TTL Cache to API.get_user, API.get_guild and API.get_channel.
Changed
InteractionStructure
renamed toInteraction
.InteractionDataStructure
renamed toInteractionData
.register_handler
renamed todecorate_handler
.DISCORD_EVENTS
moved fromdyscord.objects
todiscord.client
.- Reworked the repo to be a bit cleaner.
- Moved Dockerfiles to their own folder, with a 4x speedup on initial build times.
- Attributes of classes updated to be
None
by default.- Channel (and subclasses).
- Guild
- Embed
- Removed
ingest_raw_dict()
from classes.- Channel (and subclasses).
- Guild
- Embed
- Message
- Ready
- User
- Member
Fixed
- Exposed the
__version__
string at the top module level.
[v0.3.1] 2021-10-22
Added
- Handle invalid session events.
- Support for ReadTheDocs.
Fixed
- Importing actually works again.
[v0.3.0] 2021-10-22
Added
- Built in reconnect support.
- Support giving an event loop to DiscordClient.run()
[v0.2.0] 2021-10-18
Added
- cachetools>=4.2.4 now required.
- validators>=0.18.2 now required.
- Helper classes to manage Questions and Confirmations.
Changed
- Started the process of documenting out most of the existing codebase.
Fixed
- Corrected typo in webhook intents.
[v0.1.0] 2021-10-09
Added
- Documentation!
- helper.CommandHandler added to bind Interaction responses from the API to local code in a sane way.
- client.DiscordClient.register_class wrapper added to allow users to wrap their handlers in classes.
Changed
- Updated client.DiscordClient.register_handler to support async and sync functions.
Removed
- Cleaned out some to_dict() functions from objects that we will never really need to turn into dicts.