Rapptz
e8a2eeea06
[commands] Rename Cog.app_command_group to Cog.app_command
This allows it to be consistent with hybrid commands
3 years ago
Rapptz
0551214be1
[commands] Properly set default guilds for group to None instead of []
3 years ago
Rapptz
e873b8294a
[commands] Properly set group parent for hybrid commands in cogs
3 years ago
Rapptz
f4c5d37c8f
[commands] Rework Cog + Group inheritance to requite GroupCog
This is an attempt to fix the MRO issues present in the current
implementation. The previous implementation of using both Cog and
app_commands.Group in the inheritance chain caused issues with things
such as walk_commands due to it potentially shadowing the app_commands
version of the call.
In this particular case it's better to use composition instead of
inheritance to avoid these bugs entirely. Especially as more things are
added that could conflict with each other.
3 years ago
Varun J
0c613148af
[commands] fix signature when displayed_default is missing
This makes it so that passing an empty string (or MISSING) to the
displayed_default of commands.Parameter not show up as [name=] or [name=...]
3 years ago
Rapptz
6ee56fe964
Fix remaining --verifytypes related errors
3 years ago
Rapptz
5536ef1eea
Update to pyright 1.1.242
3 years ago
Mikey
165e14063f
[commands] fix BucketType.default bypassing dynamic_cooldown
3 years ago
Rapptz
5fcd4e411f
[commands] Add support for typing.Annotated
3 years ago
Florian Spieß
0e5c4c391d
[commands] Allow subtracting multiple tokens from cooldown
3 years ago
Rapptz
832d2c0542
[commands] Fix certain annotations being allowed in hybrid commands
Union types were not properly constrained and callable types were
too eagerly being converted
3 years ago
Rapptz
405c445093
[commands] Unwrap transformers when considering them as converters
3 years ago
Rapptz
5357b9319b
[commands] Ignore delete_after for ephemeral interaction sends
3 years ago
Rapptz
de941ababe
Add Colour.from_str factory method
This moves the command extension parsing code over to the main library
since it can be potentially useful for others.
3 years ago
Rapptz
84e6b9283d
[commands] Fix delete_after not working with interaction Context.send
3 years ago
Rapptz
cd0d6749ea
[commands] Fix Context.reply not working with expired interactions
3 years ago
Rapptz
1d97a35385
[commands] Fix hybrid commands not respecting default annotations
3 years ago
Rapptz
6113f856b6
[commands] Dispatch command events for hybrid commands
3 years ago
Cryptex
7d2e5be3a1
[commands] Allow DynamicCooldownMapping factory to return None
3 years ago
Lilly Rose Berner
15a6a04622
[tasks] Fix Task.failed() only being True while error handler runs
3 years ago
Josh
9fcb3c8871
[commands] Add overload to run_converters
3 years ago
jack1142
f9ead92239
[commands] Change Parameters header to Attributes in HybridGroup
3 years ago
Rapptz
80aa45ed31
[commands] Skip ws before processing arguments in Greedy transformer
3 years ago
Rapptz
4fb1309e2a
[commands] Mock interaction context prefix
Most user-level code probably expects the prefix to be valid and not
None, so mocking it to ensure it's at least a string is probably for
the best.
3 years ago
Rapptz
bc07a02f68
[commands] Fix type hints for hybrid command decorators
3 years ago
Rapptz
ce15df4275
[commands] Allow commands.Range inside typing.Union or typing.Optional
3 years ago
Rapptz
8a1800bd12
[commands] Add support for setting a fallback slash subcommand
This allows the group callback to be invoked as a slash subcommand
3 years ago
Rapptz
e9ff6b4be8
[commands] Fix broken documentation references
3 years ago
Rapptz
5c61f2af48
[commands] Add ForumChannelConverter to the converter mapping
3 years ago
Rapptz
141d9f4c71
[commands] Add ForumChannelConverter converter
3 years ago
Rapptz
7a52aa3764
[commands] Force HybridGroup to always have invoke_without_command
3 years ago
Rapptz
b476757720
[commands] Fix type hints for checks, hooks, and error handlers
3 years ago
Rapptz
737ff5beaf
Update Pyright to 1.1.237
3 years ago
Rapptz
242d3f7ab7
[commands] Add Bot.hybrid_group and Bot.hybrid_command decorators
3 years ago
Rapptz
1931b0eb75
[commands] Ensure hybrid app command receives copied wrapper command
3 years ago
Rapptz
393fdde037
[commands] Add support for Greedy for hybrid commands
3 years ago
Rapptz
1004cf2059
[commands] Unconditionally replace default if it's set
Handles degenerate `x: int = commands.param(default=10)` case
3 years ago
Rapptz
70d2522e7e
[commands] Unwrap CommandInvokeError if the cause is CommandError
3 years ago
Rapptz
65418414ea
[commands] Refactor parameter replacement to be less brittle
If a parameter works as-is as a transformer or a built-in then it
will always be taken rather. This way, the custom behaviour is done
as a fallback in case it doesn't work natively with app commands.
This also allows things that are hybrid transformers and converters
to work transparently.
3 years ago
Rapptz
896932faf1
[commands] Add Range converter
This allows hybrid commands to also have a range annotation
3 years ago
Rapptz
3c4b22b623
[commands] Fix transformers no longer working as annotation
3 years ago
Rapptz
9d05f55ddb
[commands] Fix Optional handling when the inner type is a converter
3 years ago
Rapptz
f072edfdfc
[commands] Properly support commands.param in hybrid commands
3 years ago
Rapptz
fa3a4c109b
[commands] Fix Context.reply not working for hybrid commands
3 years ago
Rapptz
d61561f2e8
[commands] Add support for autocomplete for hybrid commands
3 years ago
Rapptz
52fcaed79b
[commands] Reassign app_command attribute on copy
Prior to this change it would re-create the HybridAppCommand on copy
which had the consequence of clearing parameter related changes.
3 years ago
Rapptz
1232a1d2fd
[commands] Properly call after_hooks in hybrid commands
3 years ago
Rapptz
c1892131a6
[commands] Fix Context docstring missing Interaction ref
3 years ago
Rapptz
840eb577d4
[commands] Add initial implementation of hybrid commands
Hybrid commands allow a regular command to also double as a slash
command, assuming it meets the subset required to function.
3 years ago
z03h
aee657bca5
[commands] Add converter kwarg to flag
3 years ago