- Add a compile flag to use a
cryptonite
-based encryption implementation, which removes the necessity for libsodium. - Improve the lisp-ish-ness of the BasicMusicBot example.
- Relax package bounds for
wuss
,conduit
andstm
, and support GHC 9.0.2 and GHC 9.2.4 (CI present). - Update
discord-haskell
dependency bounds to>= 1.12.0 && <= 1.15.3
- Update
discord-haskell
dependency bounds to>= 1.12.0 && <= 1.14.0
. - Use
UnliftIO.MVar
functions internally for MVar operations inDiscordHandler
IOException
s thrown by e.g. createProcess duringrunVoice
are no longer caught and subdued - they are propagated to the user.
- Export
playYouTubeWith
andplayYouTubeWith'
fromDiscord.Voice
. - Update
discord-haskell
dependency bounds to>= 1.12.0 && <= 1.13.0
. - Migrate from
lens
tomicrolens
, following theopus
package doing the same.
- Update
discord-haskell
dependency to 1.12.0 - Bump copyright to 2022
- Fix incomplete pattern match crash in the example bot when using
bot --bash-completion-script
- Patch README having incorrect non-published details after Hackage publication.
- Change the definition of
Voice
from a type alias exposing dangerous internal handles, to a newtype wrapper. This also changes the definition ofliftDiscord
to maintain identical behaviour. - Update
discord-haskell
dependency to 1.11.0
- Removed
updateSpeakingStatus
from the publicly exported function list forDiscord.Voice
.
- Rewrite the entire library (see #1).
- Introduce the
Voice
monad, and all functions in it:join
,play
, and all other variants ofplay
. - Add
lens
as a dependency for internal library use. - Add
conduit
as the main method of piping and transforming audio on the fly. - Remove all previous functions:
joinVoice
,leaveVoice
,playPCM
, etc. - Add package documentation to public modules, and make sure the abstraction layer is solid (don't export useless internals).
- Rename the JoinSpecificVC example to BasicMusicBot and add a
bot volume
command to change the volume.
- Initial release.
- Implement
joinVoice
,leaveVoice
, etc and useDiscordVoiceHandle
to maintain a reference to the voice handle. - Add JoinAllVC and JoinSpecificVC as example usages of the library.