Rapptz
e0ca746ad4
[commands] Make sure that mentions are the entire string.
2016-04-23 02:13:34 -04:00
Rapptz
054c9c7109
[commands] CommandError derived exceptions in checks don't crash help.
2016-04-13 14:25:45 -04:00
Rapptz
82b2421ac7
[commands] Add deterministic cog unloading.
...
The special function is `__unload` to prevent with name conflicts with
existing or future cogs.
2016-04-04 04:45:15 -04:00
Rapptz
4451091c91
[commands] Fix pagination logic a little inside HelpFormatter.
...
This should prevent pages accidentally reaching >2k chars.
2016-04-02 08:15:34 -04:00
Rapptz
d79a13d7bc
[commands] Refactor special cased discord.py converters.
...
Code is a little more straightforward. The Member and Channel special
cases will now work in private message contexts when given a name. The
Member special case will also work if you pass in a name and
discriminator combo.
2016-04-01 07:27:39 -04:00
Rapptz
c015e492d7
[commands] Don't yield from inside bot utility functions.
2016-03-31 20:09:20 -04:00
Will Tekulve
174016c918
[commands] Fix infinite recursion on subgroups without a command.
...
Just as an FYI, ctx.invoked_subcommand will end up being an instance
of commands.Group!
2016-03-31 05:34:51 -04:00
Rapptz
050c668eac
[commands] Add bot decorators into __all__.
2016-03-11 23:19:05 -05:00
Rapptz
4a1313f00c
[commands] Add when_mentioned_or helper to have mentions and prefixes.
2016-03-05 20:10:11 -05:00
Rapptz
c0dba0f4f2
[commands] Fix typo in Bot.upload docstring.
2016-03-02 23:27:57 -05:00
Rapptz
6a31f6af1e
[commands] Fix NameError in bot_has_permissions.
2016-03-02 23:18:47 -05:00
Rapptz
f49dc81adf
[commands] bot_has_permissions decorator actually checks for bot.
2016-03-02 21:54:56 -05:00
Rapptz
bf2b8744a5
[commands] Do not swallow AttributeErrors raised by the setup function
2016-02-24 15:14:20 -05:00
Rapptz
98090a2a57
[commands] Helper functions now take *args and **kwargs.
2016-02-18 19:42:03 -05:00
Rapptz
baf1312d0e
[commands] Raise RuntimeError instead of StopIteration.
2016-02-06 01:38:41 -05:00
Rapptz
17e17cade9
[commands] Fix crash when a group has no commands and help is requested
2016-01-30 20:29:58 -05:00
Rapptz
7056a1f0ec
[commands] Change signature convention to use POSIX standards.
2016-01-29 21:40:19 -05:00
Rapptz
0466f5965b
[commands] Raise TypeError if the name is not a string.
2016-01-29 20:11:22 -05:00
Rapptz
45c6619018
[commands] Context.invoke will now return what the command returns.
2016-01-28 16:44:16 -05:00
Rapptz
1688d513e8
[commands] Context.invoke just invokes a command with no special case.
...
Previously it would both forward and invoke depending if there were no
kwargs given. Now it just passes in the arguments to another command
without doing any special casing on the no argument case.
2016-01-28 03:24:50 -05:00
Rapptz
d8d4c4e843
[commands] Fix typo on HelpFormatter.show_check_failure attribute.
2016-01-27 06:37:31 -05:00
Rapptz
8caadb5f03
[commands] Fix discord.Invite special case handling in parameters.
...
This led to decorating a lot of things into @asyncio.coroutine.
Unfortunately there's no way to lower the amount of decoration since
coroutines spread like a virus.
2016-01-24 02:18:39 -05:00
Rapptz
d013032522
[commands] Allow setting the bot error messages in the help command.
...
This is to help out those folks that don't speak English.
2016-01-23 04:00:41 -05:00
Rapptz
bb5e222f29
[commands] Add Bot.help_attrs to customise the help command.
...
The help message now uses the invoked_with attribute of the context to
get the name of the command it uses instead of a hardcoded help.
2016-01-23 03:43:54 -05:00
Rapptz
abbe79919b
[commands] Change Bot.pm_help to be an optional bool.
...
The behaviour of passing in pm_help=None makes it so the bot will only
send private messages if the length of the message is too "big", which
is defined as having more than 1000 characters in the output.
2016-01-23 03:15:12 -05:00
Rapptz
b98a8c1e14
[commands] Add Command.no_pm attribute to block a command in PM.
2016-01-22 07:21:40 -05:00
Rapptz
a82176120c
[commands] help command now uses the full name in the signature.
2016-01-17 17:17:30 -05:00
Rapptz
d1508bc739
[commands] Fix indentation error in commands.bot_has_role docstring.
2016-01-16 23:35:58 -05:00
Rapptz
3ebe64c776
[commands] Add checks for checking bot roles and permissions.
...
There was a bug with has_permissions that checked the bot's permissions
instead of the message author which was also corrected. The docstring
itself hinted that it checked for the author rather than the bot.
2016-01-15 17:24:27 -05:00
Rapptz
bc7606a42c
[commands] Add on_command and on_command_completion events.
2016-01-14 12:49:42 -05:00
Rapptz
41d8dc63f4
[commands] Change behaviour of consume rest to be more useful.
...
You can get back the old behaviour by passing in `rest_is_raw` to the
command attributes.
2016-01-14 03:11:28 -05:00
Rapptz
18c71ab57c
[commands] Fix issue where Bot would raise if not given a description.
2016-01-14 01:25:40 -05:00
Rapptz
b1d8e12609
[commands] Cleanup descriptions being passed.
2016-01-13 22:05:21 -05:00
Rapptz
4edff12f6b
Proper exception chaining.
2016-01-13 20:08:55 -05:00
Rapptz
31db6efc7f
[commands] Fix handling of nested subcommand help handling.
2016-01-12 01:17:27 -05:00
Rapptz
c29f0ea544
[commands] Fix keyword-only case to actually do conversion.
2016-01-12 01:06:53 -05:00
Rapptz
b335e9ea30
[commands] Support invoking the help command with a cog name.
2016-01-12 00:45:45 -05:00
Rapptz
958d278771
[commands] Initial implementation of help command.
2016-01-11 23:59:11 -05:00
Rapptz
c49efc5412
[commands] Add Command.cog_name to get the cog name it belongs to.
2016-01-11 00:35:07 -05:00
Rapptz
1e941925c2
[commands] Add Command.clean_params to have nicer params.
...
These are params without the self/context parameters. Useful for
showing signature information in the help command without being
bogged down by knowing if the self/context parameters are there.
Hence it makes it easier to iterate knowing that you shouldn't care
about those two parameters.
2016-01-10 22:10:42 -05:00
Rapptz
a706c47f34
[commands] Remove all aliases if the main command is being deleted.
2016-01-10 20:08:13 -05:00
Rapptz
50c83b5a3c
[commands] Strip arguments before searching for special cases.
2016-01-10 02:56:24 -05:00
Rapptz
efcc55bd32
[commands] Proper cleanup of cogs.
2016-01-10 02:26:57 -05:00
Rapptz
38bac7fa86
[commands] Add Group.invoke_without_command.
2016-01-10 01:52:51 -05:00
Rapptz
b87d5e5337
[commands] Add basic support for extensions.
2016-01-09 18:33:37 -05:00
Rapptz
0a07fc088c
[commands] Inject the internal variables for bot.say & co explicitly.
...
This is to catch cases where it wouldn't fail to find it when
inspecting the stack to catch these stack variables.
2016-01-09 15:16:28 -05:00
Rapptz
ad800e248b
[commands] Add local error handlers.
2016-01-09 14:00:17 -05:00
Rapptz
b2e0632553
[commands] Propagate invoked_with to subcommands.
2016-01-09 12:24:01 -05:00
Rapptz
ec6b1997ad
[commands] Add support for cogs.
...
Cogs are basically class instances that have commands and event
listeners. They allow for better organisation and grouping of
commands and state. Similar to subclassing discord.Client.
2016-01-09 02:18:03 -05:00
Rapptz
c06dbbd1f0
[commands] Add support for registering more than one event listener.
2016-01-08 20:37:13 -05:00