Skip to content

Bump poise from 0.6.2 to 0.7.0 - #80

Open
dependabot[bot] wants to merge 1 commit into
releasefrom
dependabot/cargo/poise-0.7.0
Open

dependabot[bot] wants to merge 1 commit into
releasefrom
dependabot/cargo/poise-0.7.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 14, 2026

Copy link
Copy Markdown
Contributor

Bumps poise from 0.6.2 to 0.7.0.

Release notes

Sourced from poise's releases.

v0.7.0

0.7.0

New features:

  • Added configurable limits on prefix command edit tracking to prevent unintended command invocation (6ea8d6d)
    • PrefixFrameworkOptions::check_edits_against_cache (default: true) determines whether edits are checked against the cached message, when available.
    • PrefixFrameworkOptions::tracking_initiation_window (default: 15 min.) defines a window starting from message creation during which edit tracking is active.

API updates:

  • Removed redundant serenity_context and user data fields from Context (6ea554d)
    • Serenity context can be accessed via Context::serenity_context()/FrameworkContext::serenity_context.
    • User data can be accessed via Framework::user_data()/FrameworkContext::user_data()/FrameworkContext::user_data.
  • reply::CreateReply fields are now private (ead8cb1)
  • PrefixFrameworkOptions::prefix now takes Cow<'static, str> instead of String (621bf48)
  • modal::execute_modal_on_component_interaction() now takes &serenity::Context instead of impl AsRef<serenity::Context> (8f45e5d)
  • Removed magic from autocomplete (cefd69d)
    • Autocomplete functions now must return serenity::CreateAutocompleteResponse.
  • Removed builtins::help(), builtins::pretty_help(), and help_text_fn (cc20f24)
  • Inline choice parameters are now converted to String at compile time (63c89c6)
    • This makes inline choices slightly more restrictive, as byte string literals, nul-terminated C-string literals, and byte literals are no longer supported.
  • builtins::create_application_commands(), builtins::register_globally(), and builtins::register_in_guild() now take impl IntoIterator<Item = &Command<U, E>> instead of &[Command<U, E>] (d7c5599)
  • Removed specialization hacks for PopArgument and SlashArgument (2d3816c)
    • Types that do not implement PopArgument but implement FromStr must now be decorated with a new #[string] attribute, or users can implement the PopArgument trait manually.
  • Added support for the #[string] attribute to slash commands (fbf89f1)
    • Types that do not implement SlashArgument but implement FromStr must now be decorated with a new #[string] attribute, or users can implement the SlashArgument trait manually.
  • Restored support for Option<T: FromStr> arguments to prefix commands using the #[string] attribute (ff6c74b)
  • Removed redundant fields from Context and FrameworkError to reduce their sizes (83d2040)
    • Removed Context::command fields. Use Context::command() instead.
    • Removed Context::parent_commands fields. Use Context::parent_commands() instead.
    • New Context::command_tree/Context::command_tree() now contains the full invoked command tree (parents + invoked command).
    • Removed PrefixContext::action field. Use Command::prefix_action instead.
    • Removed PrefixContext::prefix field. Use Context::prefix() instead.
    • Removed prefix and msg_content from FrameworkError::UnknownCommand, which already includes the full Message object. A new content_start field gives the position in the message that the prefix ends, allowing the user to determine the prefix and message content, if necessary.

Behavior changes:

  • Permission checks have been rewritten (fd83067)
    • Previously, when the bot permissions were unknown, the command would run anyway. Now, FrameworkError::PermissionFetchFailed is returned.
  • Prefix commands no longer panic when serenity::Message::author_permissions() cannot find a channel while calculating permissions (50c2130)
  • builtins::on_error() now shows the full error source chain (3c01afc)
  • Permissions calculations now properly handle SEND_MESSAGES_IN_THREADS (fa332af)
  • Interaction type is now checked in command matching (6347d12)
    • This fixes a bug that prevented different command types (USER/MESSAGE/CHAT_INPUT) from having the same name.
  • Modal::execute_with_defaults() now properly handles a defined default value of None (26dbb0d)
    • This fixes a bug that would cause an Invalid Form Body error from Discord when a default of None was defined for an Option<String> parameter.

Miscellaneous:

  • Switched from String/Vec to Cow<'static, str>/Cow<'static, [T]> in structs::Command and related structs (a917c4c)
    • This avoids allocations and simplifies command construction, but does not impact modifying the values at runtime.
  • Removed the parse_prefix_args! and parse_slash_args! declarative macros (40e99ec)
    • Their functionality is now directly incorporated into the poise::command proc macro, which makes things more readable and maintainable, and opens the door for added features down the line.

... (truncated)

Changelog

Sourced from poise's changelog.

0.7.0

New features:

  • Added configurable limits on prefix command edit tracking to prevent unintended command invocation (6ea8d6d)
    • PrefixFrameworkOptions::check_edits_against_cache (default: true) determines whether edits are checked against the cached message, when available.
    • PrefixFrameworkOptions::tracking_initiation_window (default: 15 min.) defines a window starting from message creation during which edit tracking is active.

API updates:

  • Removed redundant serenity_context and user data fields from Context (6ea554d)
    • Serenity context can be accessed via Context::serenity_context()/FrameworkContext::serenity_context.
    • User data can be accessed via Framework::user_data()/FrameworkContext::user_data()/FrameworkContext::user_data.
  • reply::CreateReply fields are now private (ead8cb1)
  • PrefixFrameworkOptions::prefix now takes Cow<'static, str> instead of String (621bf48)
  • modal::execute_modal_on_component_interaction() now takes &serenity::Context instead of impl AsRef<serenity::Context> (8f45e5d)
  • Removed magic from autocomplete (cefd69d)
    • Autocomplete functions now must return serenity::CreateAutocompleteResponse.
  • Removed builtins::help(), builtins::pretty_help(), and help_text_fn (cc20f24)
  • Inline choice parameters are now converted to String at compile time (63c89c6)
    • This makes inline choices slightly more restrictive, as byte string literals, nul-terminated C-string literals, and byte literals are no longer supported.
  • builtins::create_application_commands(), builtins::register_globally(), and builtins::register_in_guild() now take impl IntoIterator<Item = &Command<U, E>> instead of &[Command<U, E>] (d7c5599)
  • Removed specialization hacks for PopArgument and SlashArgument (2d3816c)
    • Types that do not implement PopArgument but implement FromStr must now be decorated with a new #[string] attribute, or users can implement the PopArgument trait manually.
  • Added support for the #[string] attribute to slash commands (fbf89f1)
    • Types that do not implement SlashArgument but implement FromStr must now be decorated with a new #[string] attribute, or users can implement the SlashArgument trait manually.
  • Restored support for Option<T: FromStr> arguments to prefix commands using the #[string] attribute (ff6c74b)
  • Removed redundant fields from Context and FrameworkError to reduce their sizes (83d2040)
    • Removed Context::command fields. Use Context::command() instead.
    • Removed Context::parent_commands fields. Use Context::parent_commands() instead.
    • New Context::command_tree/Context::command_tree() now contains the full invoked command tree (parents + invoked command).
    • Removed PrefixContext::action field. Use Command::prefix_action instead.
    • Removed PrefixContext::prefix field. Use Context::prefix() instead.
    • Removed prefix and msg_content from FrameworkError::UnknownCommand, which already includes the full Message object. A new content_start field gives the position in the message that the prefix ends, allowing the user to determine the prefix and message content, if necessary.

Behavior changes:

  • Permission checks have been rewritten (fd83067)
    • Previously, when the bot permissions were unknown, the command would run anyway. Now, FrameworkError::PermissionFetchFailed is returned.
  • Prefix commands no longer panic when serenity::Message::author_permissions() cannot find a channel while calculating permissions (50c2130)
  • builtins::on_error() now shows the full error source chain (3c01afc)
  • Permissions calculations now properly handle SEND_MESSAGES_IN_THREADS (fa332af)
  • Interaction type is now checked in command matching (6347d12)
    • This fixes a bug that prevented different command types (USER/MESSAGE/CHAT_INPUT) from having the same name.
  • Modal::execute_with_defaults() now properly handles a defined default value of None (26dbb0d)
    • This fixes a bug that would cause an Invalid Form Body error from Discord when a default of None was defined for an Option<String> parameter.

Miscellaneous:

  • Switched from String/Vec to Cow<'static, str>/Cow<'static, [T]> in structs::Command and related structs (a917c4c)
    • This avoids allocations and simplifies command construction, but does not impact modifying the values at runtime.
  • Removed the parse_prefix_args! and parse_slash_args! declarative macros (40e99ec)
    • Their functionality is now directly incorporated into the poise::command proc macro, which makes things more readable and maintainable, and opens the door for added features down the line.
  • Fixed several parsing bugs introduced when specialization hacks were removed (303023a)

... (truncated)

Commits
  • 9dee0a4 Bump to 0.7.0
  • c772d58 Improve edit tracking to prevent unintended invocations (#402)
  • 6aed337 Replace unmaintained derivative with derive_where (#408)
  • 67b5e89 Reduce size of Context/FrameworkError (#407)
  • 75193e9 Fix exponential code generation for prefix commands with many Option\<T> par...
  • 1736d05 Fix Modal::execute_with_defaults when passed None (#405)
  • e58f694 Fix some parsing bugs for parameters in prefix commands (#398)
  • fdeaab1 Support prefix command parameters of type Option\<T> where T: FromStr (#394)
  • 80051b1 Show the error source chain in builtins::on_error (#386)
  • a7d2b98 Support #[string] in slash commands (#387)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [poise](https://github.com/serenity-rs/poise) from 0.6.2 to 0.7.0.
- [Release notes](https://github.com/serenity-rs/poise/releases)
- [Changelog](https://github.com/serenity-rs/poise/blob/current/CHANGELOG.md)
- [Commits](serenity-rs/poise@v0.6.2...v0.7.0)

---
updated-dependencies:
- dependency-name: poise
  dependency-version: 0.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels Sep 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file rust Pull requests that update rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants