3c8fcd3584
[commands] Add support for self-bots.
2016-05-31 20:30:17 -04:00
fdaa4299a3
[commands] Fix when_mentioned when handling nicknames.
2016-05-01 07:06:19 -04:00
7f09acf871
[commands] Allow role mentions to work with discord.Role params.
...
This also fixes the Member regex to support the new <@!user_id> syntax
and allows colours to have a leading # before the number.
2016-04-29 08:45:12 -04:00
1c623ccf11
Begin working on gateway v4 support.
...
Bump websockets requirement to v3.1
Should be squashed...
2016-04-27 18:36:13 -04:00
e0ca746ad4
[commands] Make sure that mentions are the entire string.
2016-04-23 02:13:34 -04:00
054c9c7109
[commands] CommandError derived exceptions in checks don't crash help.
2016-04-13 14:25:45 -04:00
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
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
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
c015e492d7
[commands] Don't yield from inside bot utility functions.
2016-03-31 20:09:20 -04:00
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
050c668eac
[commands] Add bot decorators into __all__.
2016-03-11 23:19:05 -05:00
4a1313f00c
[commands] Add when_mentioned_or helper to have mentions and prefixes.
2016-03-05 20:10:11 -05:00
c0dba0f4f2
[commands] Fix typo in Bot.upload docstring.
2016-03-02 23:27:57 -05:00
6a31f6af1e
[commands] Fix NameError in bot_has_permissions.
2016-03-02 23:18:47 -05:00
f49dc81adf
[commands] bot_has_permissions decorator actually checks for bot.
2016-03-02 21:54:56 -05:00
bf2b8744a5
[commands] Do not swallow AttributeErrors raised by the setup function
2016-02-24 15:14:20 -05:00
98090a2a57
[commands] Helper functions now take *args and **kwargs.
2016-02-18 19:42:03 -05:00
baf1312d0e
[commands] Raise RuntimeError instead of StopIteration.
2016-02-06 01:38:41 -05:00
17e17cade9
[commands] Fix crash when a group has no commands and help is requested
2016-01-30 20:29:58 -05:00
7056a1f0ec
[commands] Change signature convention to use POSIX standards.
2016-01-29 21:40:19 -05:00
0466f5965b
[commands] Raise TypeError if the name is not a string.
2016-01-29 20:11:22 -05:00
45c6619018
[commands] Context.invoke will now return what the command returns.
2016-01-28 16:44:16 -05:00
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
d8d4c4e843
[commands] Fix typo on HelpFormatter.show_check_failure attribute.
2016-01-27 06:37:31 -05:00
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
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
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
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
b98a8c1e14
[commands] Add Command.no_pm attribute to block a command in PM.
2016-01-22 07:21:40 -05:00
a82176120c
[commands] help command now uses the full name in the signature.
2016-01-17 17:17:30 -05:00
d1508bc739
[commands] Fix indentation error in commands.bot_has_role docstring.
2016-01-16 23:35:58 -05:00
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
bc7606a42c
[commands] Add on_command and on_command_completion events.
2016-01-14 12:49:42 -05:00
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
18c71ab57c
[commands] Fix issue where Bot would raise if not given a description.
2016-01-14 01:25:40 -05:00
b1d8e12609
[commands] Cleanup descriptions being passed.
2016-01-13 22:05:21 -05:00
4edff12f6b
Proper exception chaining.
2016-01-13 20:08:55 -05:00
31db6efc7f
[commands] Fix handling of nested subcommand help handling.
2016-01-12 01:17:27 -05:00
c29f0ea544
[commands] Fix keyword-only case to actually do conversion.
2016-01-12 01:06:53 -05:00
b335e9ea30
[commands] Support invoking the help command with a cog name.
2016-01-12 00:45:45 -05:00
958d278771
[commands] Initial implementation of help command.
2016-01-11 23:59:11 -05:00
c49efc5412
[commands] Add Command.cog_name to get the cog name it belongs to.
2016-01-11 00:35:07 -05:00
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
a706c47f34
[commands] Remove all aliases if the main command is being deleted.
2016-01-10 20:08:13 -05:00
50c83b5a3c
[commands] Strip arguments before searching for special cases.
2016-01-10 02:56:24 -05:00
efcc55bd32
[commands] Proper cleanup of cogs.
2016-01-10 02:26:57 -05:00
38bac7fa86
[commands] Add Group.invoke_without_command.
2016-01-10 01:52:51 -05:00
b87d5e5337
[commands] Add basic support for extensions.
2016-01-09 18:33:37 -05:00
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