Discord bot command framework for serenity, with advanced features like edit tracking and flexible argument parsing
New features:
Choice parameters can now be defined inline in a function signature (6167311)
For example:
#[choices("Europe", "Asia", "Africa", "America", "Australia", "Antarctica")]
continent: &'static str
Detailed changelog: https://github.com/serenity-rs/poise/compare/v0.6.0...v0.6.1
Thanks to @kangalio!
Now with serenity 0.12!
New features:
ChoiceParameter
is now not only a derive macro, but also a trait, so you can implement it manually (bc250b8)HelpConfiguration::include_description
can be used to toggle whether a single command's help output includes its description
, or only its help_text
(0ad8ee6)API updates:
#[non_exhaustive]
to allow backwards compatible new features in the future (035e035, 6c08cfb, 1cbfeef)Command
no longer has Default
bounds on its generics (695ae1d)Command
to be more idiomatic (6c08cfb)CooldownTracker
methods now take a dedicated user-constructable CooldownContext
instead of Context<'_, U, E>
, to make CooldownTracker
usable outside poise internals ([bd73861](https://github.com/serenity-rs/poise/cMake ommit/bd73861d2679c26040353eba460d933c7d3a7a15))Behavior changes:
Detailed changelog: https://github.com/serenity-rs/poise/compare/v0.5.7...v0.6.0
Thanks to @kangalio, @docwilco, @drwilco, @GnomedDev, @scottbot95!
Now with serenity 0.12!
New features:
ChoiceParameter
is now not only a derive macro, but also a trait, so you can implement it manually (bc250b8)HelpConfiguration::include_description
can be used to toggle whether a single command's help output includes its description
, or only its help_text
(0ad8ee6)API updates:
#[non_exhaustive]
to allow backwards compatible new features in the future (035e035, 6c08cfb, 1cbfeef)Command
no longer has Default
bounds on its generics (695ae1d)Command
to be more idiomatic (6c08cfb)CooldownTracker
methods now take a dedicated user-constructable CooldownContext
instead of Context<'_, U, E>
, to make CooldownTracker
usable outside poise internals (bd73861)Behavior changes:
Detailed changelog: https://github.com/serenity-rs/poise/compare/v0.5.7...v0.6.0
Thanks to @kangalio, @docwilco, @drwilco, @GnomedDev, @scottbot95!
New features:
AsRef<Cache>
, AsRef<Http>
, AsRef<ShardMessenger>
, AsRef<Context>
, and CacheHttp
were only implemented for poise::Context
#[poise::command]
-annotated functionsContext.guild_channel()
Behavior changes:
builtins::servers
command
PrefixFrameworkOptions.ignore_thread_creation
to false
Detailed changelog: https://github.com/kangalioo/poise/compare/v0.5.6...v0.5.7
New features:
cache()
, http()
, reply()
, ping()
methods to Context
, ApplicationContext
, PrefixContext
subcommand_required
command attribute
execute_modal_on_component_interaction
utility function
remaining_cooldown_2
as the successor to remaining_cooldown
which allows changing the cooldown config on a per-invocation basis instead of per-command
remaining_cooldown
will be replaced with remaining_cooldown_2
Command.source_code_name
Behavior changes:
Detailed changelog: https://github.com/kangalioo/poise/compare/v0.5.5...v0.5.6
New features:
#[min_length]
and #[max_length]
support for slash command string parametersDetailed changelog: https://github.com/kangalioo/poise/compare/v0.5.4...v0.5.5
API updates:
payload
field of FrameworkError::CommandPanic
has been changed from Box<dyn Any + Send>
to Option<String>
payload
field in 0.5.3 made FrameworkError
accidentally not Sync anymoreFrameworkError::CommandPanic
has only been introduced a few days ago in 0.5.3Detailed changelog: https://github.com/kangalioo/poise/compare/v0.5.3...v0.5.4
New features:
builtins::paginate()
as an example implementation of paginationEventWrapper
(#144)FrameworkError::CommandPanic
to allow custom handling of panics (#140)
builtins::on_error
responds with an "Internal error" embed when encountering CommandPanic
Behavior changes:
builtins::on_error
now prints FrameworkError::Command
not just in Discord chat, but in console as well
name_localized
or description_localized
are used multiple times (#143)Detailed changelog: https://github.com/kangalioo/poise/compare/v0.5.2...v0.5.3
New features:
track_deletion
feature to commandsContext
's methods to PrefixContext
and ApplicationContext
Behavior changes:
builtins::servers
now shows hidden statistics for the entire bot team, not just ownerDetailed changelog: https://github.com/kangalioo/poise/compare/v0.5.1...v0.5.2
New features:
FrameworkOptions::skip_checks_for_owner
Behavior changes:
execute_modal
doesn't panic anymore when the timeout is reachedDetailed changelog: https://github.com/kangalioo/poise/compare/v0.5.0...v0.5.1