Changelog for calamity-0.1.30.2
Changelog for Calamity
0.1.30.2
- Removed all the orphan instances from the library.
- Removed the export of
CalamityCommands.HandlerfromCalamity.Commands. - Added the export of
Calamity.Commands.TypesfromCalamity.Commands. - Fixed some parameter parser instances causing type inference to fail (#48).
0.1.30.1
- Removed the re-export of
CalamityCommands.ParsePrefixfrom Calamity.Commands. - Added the
Calamity.Commands.Utils.useConstantPrefixmethod.
0.1.30.0
- Removed the
Symbolparameter of custom events, instead of'CustomEvt @"command-error" @(FullContext, CommandError)it is now'CustomEvt (CtxCommandError FullContext), etc. - Added
embedFooter,embedImage,embedThumbnail,embedAuthor, andembedFieldutility functions. - Added
Defaultinstances forEmbedAuthor. - Corrected the nullability of
EmbedImage,EmbedThumbnail,EmbedVideo, andEmbedProvider. - Changed the command parameter machinery to hold more info about parameters.
- Added a 'type cheatsheet' thing to command help in the default help command.
- Calamity now uses and re-exports the Calamity-Commands package instead of having all the code duplicated.
- An extra effect now needs to be handled for commands:
ConstructContext, this also allows you to change which context your bot uses. Calamity.Commands.Context.Contexthas been removed, instead useFullContext,LightContext, or make your own.
0.1.29.0
- The minimum version of
basehas been upped to4.13as the library fails to build on ghc-8.6 - The minimum version of
polysemyhas been upped to 1.5 - The upper bound of
lenshas been bumped to 6 - The library now compiles with ghc-9
0.1.28.5
- Use the correct HTTP method for
ModifyChannel
0.1.28.4
- Rework the route handling so that the bucket keys for emoji routes work properly
0.1.28.3
- Fix HTTP responses from discord that don't have ratelimit info being treated as errors.
0.1.28.2
- Correct the emoji HTTP endpoints to work with
CustomEmojis - Rework the ratelimit implementation more
0.1.28.1
- Rework the ratelimit implementation to use X-Ratelimit-Bucket
- Fix incorrect interpretation of the retry-after for 429s
0.1.28.0
- Added support for message types 19 (reply) and 20 (application command)
- Added the
MessageReferencetype - Changed the type of
Message.webhookIDtoSnowflake Webhook - Added the
activity,application,messageReference,flags,stickers,referencedMessage, andinteractionfields to messages. - Added
messageReferenceas a parameter ofCreateMessageOptions - Added
repliedUseras a parameter ofAllowedMentions - Fixed
CreateMessagenot actually sending theallowedMentionskey - Added the
CrosspostMessageroute - Added a
ToMessageinstance forMessageReference - Added a
replyfunction toCalamity.Types.Tellablethat replies to a given message in the same channel as the message - Added an
asReferencefunction toCalamity.Utils.Message
0.1.27.0
- Change the structure of
Reactionto be(count, me, emoji) - The previous structure of
Reactionis now known asReactionEvtData - The type of
MessageReactionAddEvtandMessageReactionRemoveEvtevents has been changed from(Message, Reaction)to(Message, User, Channel, RawEmoji) - The type of
RawMessageReactionAddEvtandRawMessageReactionRemoveEvtevents has been changed fromReactiontoReactionEvtData - More fixes to HTTP
- When parsing guilds, channels/members/ and presences that cannot be parsed are (silently) ignored instead of causing parsing of the guild to fail.
0.1.26.1
- Quick fix of GetChannelMessages
0.1.26.0
GetChannelMessagesnow has an extra parameter to allow thelimitoption to be applied at the same time as the other filters.ChannelMessagesQueryhas been renamed toChannelMessagesFilter.- The
ChannelMessagesLimittype has been introduced.
0.1.25.1
- Add
Upgradeableinstances forVoiceChannnel,DMChannel_,GroupChannel,TextChannel, andCategory.
0.1.25.0
- Changed how
ModifyGuildMemberData, andModifyGuildRoleDataare implemented to allow for the parameters to be optional and nullable. - Changed
EditMessageto useEditMessageDatainstead ofMaybe Text -> Maybe Embed, allowing for the parameters to be optional and nullable.
0.1.24.2
- Add event handlers for voice state update events:
'VoiceStateUpdateEvt - Apply some fixes for a few memory leaks
0.1.24.1
- Fix some memory leaks
0.1.24.0
- Switch from using Wreq to Req
- The
sessionparameter has been removed fromrunBotIO' - Add an
Upgradeableinstance forRoles - Add a command
Parserinstance forRoles
0.1.23.1
- Fix some more json parsing issues
0.1.23.0
- The
rolesfield was incorrectly present on thePresenceUpdatetype, that field has been removed. - The
gamefield onPresencewas changed toactivities :: [Activity]
0.1.22.1
- Bump some upper bounds
- Fix parsing of members from GetGuildMember
- Make game field in Presence correctly optional
- Make roles field in Presence updates correctly optional (internal)
0.1.22.0
- Update to gateway/http endpoint v8.
- Updated the message types.
- Added
defaultIntents, which is all but the privileged intents, also a Data.Default instance. runBotIOandrunBotIO'now always take anIntentsparameter.- Users are cached from messages, as well as member create events.
- Fix
Overwrites having an incorrecttype_field.
0.1.21.0
- Fix ToJSON instance for
RawEmoji
0.1.20.1
- Documentation improvements.
0.1.20.0
- Migrate do di-polysemy 0.2, runBotIO no longer handles the Log effect.
0.1.19.2
- Fix broken
Floatparsing.
0.1.19.1
- Fixed another missing activity type
0.1.19.0
- Support hidden commands.
0.1.18.1
- Fix custom presences failing to parse.
0.1.18.0
-
Add raw message events:
RawMessageUpdateEvt,RawMessageDeleteEvt,RawMessageDeleteBulkEvt,RawMessageReactionAddEvt,RawMessageReactionRemoveEvt,RawMessageReactionRemoveAllEvt. -
Fixed bulk message deletes firing a message delete per deleted message, instead of a bulk message delete event (I'm not sure how I did that).
-
Add
animatedfield toPartial Emojis. -
Make show instances for
Partial EmojiandRawEmojishow to their discord representation.
0.1.17.2
2020-07-04
-
Drop GHC-8.6.5, it doesn't like strictdata
-
Use unboxing-vector instead of doing stuff ourselves
0.1.17.1
2020-06-29
waitUntilandwaitUntilMnow correctly remove the temorary event handler they create if an exception is raised.
0.1.17.0
2020-06-28
-
Allow the session used for http requests to be specified to the client.
-
Drop from using a Wreq fork to vanilla Wreq.
-
TFilenow requires a filename parameter.
0.1.16.0
-
Change how commands should be manually invoked from code, instead of firing a
"invoke-command"custom event, now thehandleCommandsfunction should be used, which returns information about if the command succeeded. -
Added
fetchHandlerfor retrieving the command handler inside a command DSL.
0.1.15.0
-
General cleanup of codebase
-
Enable StrictData by default
0.1.14.9
2020-06-22
- Support manually invoking commands.
0.1.14.8
2020-06-21
- Replace uses of withLowerToIO with interpretFinal (should be more performant)
0.1.14.7
2020-06-21
- Fix missing usage of GetAuditLogOptions in GetAuditLog
0.1.14.6
2020-06-18
- Add command parameter
Parsers forInt,Integer,Word,Natural, andFloat.
0.1.14.5
2020-06-18
-
The
DecodeErrorvariant of theRestErrortype has been renamed toInternalClientErroras all issues in the rest client now end up here. -
We're now using
discord.cominstead ofdiscordapp.com
0.1.14.4
2020-06-11
-
Added
activityto construct Activities -
Added aliases for commands and groups, with new functions to create them (
commandA,groupA, ...). -
The built in help command now shows aliases and checks.
0.1.14.3
2020-06-10
- Fix some bugs in the gateway
0.1.14.2
2020-06-09
-
Fix broken json decoding for DMs
-
Add
mentionChannelstoMessage
0.1.14.1
2020-06-08
- Fix broken json decoding for member's
0.1.14.0
2020-06-08
-
Unpacked the
userfield ofMemberinto itself. -
Add message formatting utilities (
Calamity.Utils.Message). -
Add support for allowed mentions in
Tellable. -
Change Snowflake's show instance to just show the numberic id.
-
Added parsers for RawEmoji and Either.
0.1.13.0
2020-06-06
- Changed event handlers to take tuples instead of being higher arity when there is more than one parameter to the callback.
0.1.12.0
2020-06-06
- Changed some events to take enums instead of booleans:
GuildCreateEvtandGuildDeleteEvt.
0.1.11.2
2020-06-03
- Moved the internal
UpdatedMessagefromCalamity.Types.Model.Channel.MessageintoCalamity.Types.Model.Channel.UpdatedMessage.
0.1.11.0
2020-05-31
- Add command parameter parsers for channel/guild/emoji
- Support allowed mentions
- Support invite events
- Support setting gateway intents
- Add
Calamity.Types.Model.Guild.PermissionandCalamity.Utils.Permissionsand change permissions fields fromWord64toPermissions - Add
Calamity.Utils.Colourand change color fields fromWord64toData.Color.Color Double
0.1.10.0
2020-05-27
-
Renamed
Calamity.Commands.Parser.KleeneConcattoCalamity.Commands.Parser.KleeneStarConcatand addedCalamity.Commands.Parser.KleenePlusConcat -
Added
Calamity.Types.Upgradeable
0.1.9.2
2020-05-23
-
Added a default help command, located in
Calamity.Commands.Help. -
Commands now have the list of parameters they take
0.1.9.1
2020-05-23
-
Added
Calamity.Commands.Parser.Namedfor parameters that have a name. -
General improvements to parser errors
0.1.9.0
2020-05-22
-
Added commands, located in
Calamity.Commands, along with a DSL for declaring commands nicely. -
Renamed
waitUntiltowaitUntilM, and introduced a variant with a pure check function that takes the original name ofwaitUntil.
0.1.8.0
2020-05-15
- Did a large rework of how event handlers are stored internally.
- introduced
waitUntil
0.1.4.0
- Added back extra exports of
Calamity.Types.PartialfromCalamity.Types.Model.Guild.Guild,Calamity.Type.Model.Guild.Emoji, andCalamity.Types.Model.Channel. There is now way to export the constructor without also exporting Partial apparently?
0.1.3.0
2020-04-27
-
Removed extra exports of
Calamity.Types.PartialfromCalamity.Types.Model.Guild.Guild,Calamity.Type.Model.Guild.Emoji, andCalamity.Types.Model.Channel -
Added missing exports of
CreateGuildEmojiOptionsandModifyGuildEmojiOptionsfromCalamity.HTTP.Emoji -
Added missing exports of
CreateGuildDataandModifyGuildDatafromCalamity.HTTP.Guild
0.1.2.0
2020-04-27
- Calamity.Client: runBotIO now has a
Polysemy.Faileffect