Commit Graph
358 Commits
Author SHA1 Message Date
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 TekulveandRapptz 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
Rapptz 52eb0e3adb [commands] Change prefix callback signature and add when_mentioned.
The utility allows for easy addition of "when the bot is mentioned"
as the prefix. The change of signature was to facilitate this.
2016-01-08 19:40:00 -05:00
Rapptz 25588955e4 [commands] Add a way to enable or disable certain commands. 2016-01-07 17:59:26 -05:00
Rapptz b79a4549ab [commands] Special handling for when the converter is bool. 2016-01-07 17:31:56 -05:00