Skip to content

v0.3.0

Choose a tag to compare

@jchristgit jchristgit released this 07 Dec 00:59
· 182 commits to master since this release
c61f478

nosedrum version 0.3 comes with support for nested subcommands. This will require a small update to your add_command invocations to use lists instead of tuples.
Additionally, nosedrum no longer creates its own error messages, but allows the user to deal with creating them. For an example of how to deal with the errors, see bolt's MESSAGE_CREATE handler: https://github.com/jchristgit/bolt/blob/5c19c3d68a419a302a62d4f33b77e5cf87bac659/lib/bolt/consumer/message_create.ex#L14-L22.

Added

  • Support for nested subcommands. Command paths now need to be passed as a list
    instead of a tuple. This may also require an update to custom invokers, see
    changes to Nosedrum.Invoker.Split for details.

Fixed

  • Prevent compiler warning about @short_version module attribute.

Changed

  • Return error tuples instead of creating error messages in the API.
    Specifically, this means that for the following events, manual error checking
    needs to be performed:
    • Unknown subcommands - these return {:error, {:unknown_subcommand, name, :known, known_subcommands}} from the invoker.
    • Predicate permission check failures or error - these return {:error, :predicate, predicate_result} from the invoker.