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,
RESUMEDevent, andon_resumecallbacks. - Requirement for the
logging_levelslib.
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
debuglevel. - Several
criticallevel logs moved towarningas 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
InteractionDataOptionStructurenow supports aget()method like a dict.- More testing coverage.
[v0.5.1] 2021-11-04
Fixed
Interactionwould 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
Interactionsto use values on their options fields. This allows for thefocusedfield to exist next to it, which is required for Autocomplete actions.
[v0.4.4] 2021-10-31
Added
- Support for autocomplete
Interactionflows. - All
BaseDiscordObjectsnow supportvalidationas a defaulted (NonImplementedError) function. All classes should implement this soon.
Removed
- We had a
CHANNEL_TYPEandCHANNEL_TYPESenumeration 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_UPDATEevents.
Fixed
PRESENCE_UPDATEcould 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
Activtyand friends.Presenceand friends.- Support
GUILD_MEMBER_UPDATEevents.
Fixed
- Made reconnection more robust.
[v0.4.1] 2021-10-27
Added
- Added the
dyscord.commandalias to point to commonly used command interfaces. Message.formatter.TIMESTAMP_FLAGSwas missing theSHORT_DATE_TIMEoption.
Changed
MESSAGE_UPDATEevents now return aMessageUpdateobject. This is a duplicate ofMessage, except most fields are annotated asOptional.UserandMemberobjects 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 fromUserandMember. - Nonfunctionl
edit_origional_response()anddelete_initial_response()fromInteractionResponse, they are not in the discord API.
Fixed
- Removed
ephemeralfrom followup generate messages, discord ignores this flag anyway! Messageobjects assumed they would get a lot of fields, which is not true inMESSAGE_UPDATEevents.
[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
Noneby default. - Role now has all attributes set to
Noneby 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
InteractionStructurerenamed toInteraction.InteractionDataStructurerenamed toInteractionData.register_handlerrenamed todecorate_handler.DISCORD_EVENTSmoved fromdyscord.objectstodiscord.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
Noneby 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.