Version 0.6.0 supports nostrum 0.8.0 and comes with a number of improvements
for working with application commands.
Breaking changes
- The existing text command handling behaviour has been moved under
Nosedrum.TextCommand
. Application commands have been moved more into the
spotlight. The following moves have been performed:Nosedrum.Command
=>Nosedrum.TextCommand
Nosedrum.Invoker
=>Nosedrum.TextCommand.Invoker
Nosedrum.Invoker.Split
=>Nosedrum.TextCommand.Invoker.Split
Nosedrum.Storage
=>Nosedrum.TextCommand.Storage
Nosedrum.Storage.ETS
=>Nosedrum.TextCommand.Storage.ETS
Nosedrum.Interactor
=>Nosedrum.Storage
- Nosedrum will now return error tuples for converter failures (text-based
command handling) instead of strings. The main structure that you will likely
want to check against is{:error, {:not_found, {:by, :id | :name, query, options}}}
. SeeNosedrum.Converters
for details. - To prevent a race with deferred interaction responses, their
:type
field
must now be returned along with a callback to run after the application
command handler has sent out the initial deferred interaction response to the
API.
Changed
- Application command handling is now performed in the client process calling
them, not the command interactor. - Updated nostrum to 0.8.0.
- Updated all other dependencies.
Removed
- Remove member lookup by nickname
Fixed
- Name of the example application in the
Nosedrum.ApplicationCommand
supervisor example.