* Most slash command support completed, needs some debugging (and reindent)
* Implement a ctx.send helper for slash commands
* Add group command support
* Add Option converter, fix default optional, fix help command
* Add client.setup and move readying commands to that
* Implement _FakeSlashMessage.from_interaction
* Rename normmal_command to message_command
* Add docs for added params
* Add slash_command_guilds to bot and decos
* Fix merge conflict
* Remove name from commands.Option, wasn't used
* Move slash command processing to BotBase.process_slash_commands
* Create slash_only.py
Basic example for slash commands
* Create slash_and_message.py
Basic example for mixed commands
* Fix slash_command and normal_command bools
* Add some basic error handling for registration
* Fixed converter upload errors
* Fix some logic and make an actual example
* Thanks Safety Jim
* docstrings, *args, and error changes
* Add proper literal support
* Add basic documentation on slash commands
* Fix non-slash command interactions
* Fix ctx.reply in slash command context
* Fix typing on Context.reply
* Fix multiple optional argument sorting
* Update ctx.message docs to mention error instead of warning
* Move slash command creation to BotBase
* Fix code style issues with Black
* Rearrange some stuff and add flag support
* Change some errors and fix interaction.channel fixing
* Fix slash command quoting for *args
Co-authored-by: iDutchy <42503862+iDutchy@users.noreply.github.com>
Co-authored-by: Lint Action <lint-action@samuelmeuli.com>
Fixes#2123
Slight breaking change if someone had an expectation that no copies
were made behind the scene (which is sensible), however writing code
that relies on this expectation is probably buggy anyway.
Previously, calls to add_line in add_command_formatting of default help
commands would fail if the command's help message would overflow the
current page. This would also result in silent failure as the
RuntimeError raised from add_line is never caught.
This patch adds behavior that adds lines individually should it raise,
which guarantees safe pagination as long as every line is smaller than
the maximum page size, which is highly unlikely.