Rapptz
7a1102ccf0
[commands] Use message creation as the reference time in cooldowns
2019-04-14 17:33:56 -04:00
Rapptz
ec7a701ceb
[commands] Allow passing reference time to update_rate_limit
2019-04-14 16:57:47 -04:00
Rapptz
6574c97a8b
[commands] Support callables in Greedy converter
2019-04-13 07:28:26 -04:00
Rapptz
ac1b9f5628
[commands] Fix lambda converters in non-module contexts.
...
Not sure why anyone would do this but might as well fix it.
2019-04-13 07:15:54 -04:00
Steve C
ac2cda1ffc
[tasks] set internal task to None after canceling
2019-04-12 20:56:40 -04:00
Rapptz
e46842a7cd
[tasks] Add before_loop and after_loop decorators
2019-04-12 04:08:42 -04:00
Rapptz
015404b01c
[commands] Add versionadded to dm_only
2019-04-12 03:21:49 -04:00
Rapptz
4513dac7a3
[tasks] Ensure total number of seconds is not less than 0.
2019-04-11 08:21:45 -04:00
Rapptz
10bc939348
[tasks] Rename Loop.run to Loop.start to avoid blocking connotations
2019-04-11 08:19:32 -04:00
Rapptz
b0c7f48caf
[tasks] Add a new background helper 'tasks' extension.
2019-04-11 08:04:26 -04:00
Rapptz
ec1b3434a2
[commands] Fix erroneous string in dm_only check
2019-04-11 00:55:32 -04:00
Dante Dam
aabbd5a446
[commands] Added dm_only check
...
Raises PrivateMessageOnly on failure.
2019-04-11 00:02:22 -04:00
Rapptz
50dcdac5ca
[commands] Fix references in Bot to actually link.
...
Exceptions can't seem to link due to a bug in Sphinx.
2019-04-10 05:13:30 -04:00
Rapptz
ef0b2a1092
[commands] Properly name heading for ExtensionError
2019-04-10 00:59:02 -04:00
Rapptz
aeabd0761e
[commands] Raise TypeError instead of ClientException in some places
...
Certain decorators and functions expect coroutines and raise an
exception when this is not met. Change these to raise the appropriate
TypeError since they can't actually be handled by the user gracefully
anyway.
2019-04-07 22:31:05 -04:00
Rapptz
47ab24991f
[commands] Remove extraneous or
2019-04-06 22:02:58 -04:00
Rapptz
ee81f0614e
[commands] Fix HelpCommand.invoked_with when used in events.
2019-04-06 21:33:21 -04:00
Rapptz
9833ea82e2
Add helpers to escape markdown and mentions from text.
...
Fixes #1673
2019-04-06 20:14:05 -04:00
Rapptz
743a5a218f
[commands] Disallow bot_ or cog_ commands or listeners in cogs.
2019-04-06 19:46:22 -04:00
Rapptz
e4de25eaab
[commands] Raise BadArgument in ColourConverter when using from_hsv/rgb
...
Fixes #2043
2019-04-06 19:29:21 -04:00
CapnS
24d3a5a48d
Only escape characters as necessary in clean_content
...
Fixes #1885
2019-04-06 19:19:58 -04:00
NCPlayz
be227ebcf0
Redesign asset retrieval in the library.
...
Most assets now return a new class named `Asset`. This allows for the
assets to be consistently saved via a `save` method instead of special
casing for `Attachment`.
`AppInfo` is no longer a namedtuple it is a fully documented dataclass,
as well as having the state attached to it.
Fixes #1997
2019-04-06 19:12:50 -04:00
Rapptz
43b44751af
[commands] Fix MinimalHelpCommand opening note signature consistency
2019-03-24 14:46:55 -04:00
Rapptz
e567b59fea
[commands] Double underscore some attributes.
2019-03-24 14:33:51 -04:00
Rapptz
8c0c410d0e
[commands] Add HelpCommand.invoked_with
...
This fixes an issue where the context invoked_with does not match the
actual invoked with behaviour (e.g. using Context.send_help).
2019-03-24 14:27:37 -04:00
Rapptz
c96642860c
[commands] Add Command.cooldown_after_parsing keyword argument.
...
This controls the behaviour of cooldown execution order. This does
not change the default behaviour however.
2019-03-22 22:23:07 -04:00
Rapptz
64d749a13f
[commands] Ensure handlers are copied even during update.
...
Fix #2001
2019-03-20 22:38:00 -04:00
Rapptz
c30a366106
Try to consistently use "inherit" vs "derive" in documentation.
2019-03-19 09:23:12 -04:00
Rapptz
d9e54d7dd3
[commands] Redesign extension exception flow.
...
Instead of raising a whole variety of exceptions, they are now wrapped
into ExtensionError derived classes.
* ExtensionAlreadyLoaded
* Raised when an extension is already loaded in Bot.load_extension
* ExtensionNotLoaded
* Raised when an extension is not loaded, e.g. Bot.unload_extension
* NoEntryPointError
* Raised when an extension does not have a `setup` function.
* ExtensionFailed
* Raised when an extension's `setup` function fails.
* ExtensionNotFound
* Raised when an extension's module import fails.
2019-03-19 09:23:11 -04:00
Rapptz
26e9b5bfac
[commands] Add Bot.reload_extension for atomic loading.
...
Also do atomic loading in Bot.load_extension
2019-03-19 09:23:10 -04:00
Joshua B
d221ca5f7d
[commands] ColourConverter raises if value is out of range
...
changes make the `ext.commands.ColourConverter` Converter fail when
user input is outside the acceptable value range 0x000000 - 0xFFFFFF
2019-03-19 09:23:10 -04:00
NCPlayz
f507f508a2
Expose Metadata
...
Added access to:
* `/users/@me/guilds`
* `/guilds/{guild_id}`
* `/guilds/{guild_id}/members/{member_id}`
BREAKING CHANGE:
* `get_user_info` -> `fetch_user_info` to match naming scheme.
Remove useless note
Remove `reverse` and corresponding documentation
Update documentation to reflect #1988
Rename `get_` HTTP functions to `fetch_`
Breaking Changes:
* `get_message` -> `fetch_message`
* `get_invite` -> `fetch_invite`
* `get_user_profile` -> `fetch_user_profile`
* `get_webhook_info` -> `fetch_webhook`
* `get_ban` -> `fetch_ban`
Fix InviteConverter, update migrating.rst
Rename get_message to fetch_message
2019-03-19 09:00:18 -04:00
NCPlayz
fb02191b80
Organise documentation
2019-03-19 08:24:42 -04:00
Rapptz
f43690bde8
[commands] Walk through MRO for Cog derived classes.
...
This should support cog subclasses in a relatively consistent way in
terms of expectations. Hopefully nothing is broken.
Fixes #1950
2019-03-17 22:04:05 -04:00
Rapptz
f26a27dc98
[commands] Make Bot.cogs and Bot.extensions read-only mappings.
...
This also has the side effect of effectively documenting them for
public use.
2019-03-17 14:53:56 -04:00
slice
66af80511f
Fix pagination of huge command help messages (> ~2,000 chars)
...
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.
2019-03-16 23:24:31 -04:00
Rapptz
053e2f5b9a
Fix documentation linking issue in Messageables and Context
2019-03-16 09:55:29 -04:00
Rapptz
cc3b6bdd72
[commands] Rename it to Context.send_help for consistency.
2019-03-16 09:37:47 -04:00
Rapptz
ed5fcb320e
[commands] Add Context.show_help helper to use the HelpCommand set.
...
Fixes #1983
2019-03-16 09:33:05 -04:00
Rapptz
3326adf63b
[commands] Optimise GroupMixin.get_command for the no space case.
...
Comes at a 30ns slowdown for the space case, however.
2019-03-16 09:27:59 -04:00
Rapptz
8466250bcc
[commands] Assign context inside HelpCommand.prepare_help_command
2019-03-16 09:24:17 -04:00
Rapptz
b728061522
[commands] Add HelpCommand.get_bot_mapping helper.
2019-03-16 09:23:34 -04:00
Rapptz
7a5102ece9
[commands] Return result of send_group_help and send_command_help
2019-03-16 07:33:12 -04:00
Kaeptm Blaubaer
b506ee1b8e
Change superclass to subclass in some documentation
2019-03-16 05:32:59 -04:00
Rapptz
61f63a9346
[commands] Add back dm_help tribool for the provided HelpCommands
...
Also add a dm_help_threshold integer to control the length.
2019-03-16 03:50:30 -04:00
Rapptz
25acad5de3
[commands] Add commands.Paginator.__len__
2019-03-16 03:38:51 -04:00
Rapptz
3527203e07
[commands] Redesign HelpFormatter into HelpCommand
...
Part of #1938
2019-03-15 05:54:23 -04:00
Rapptz
27c6d2c923
[commands] Add Cog.description to get the clean docstring.
2019-03-14 11:42:09 -04:00
Rapptz
c4a21cc1d4
[commands] Add Cog.qualified_name to query the specified cog name.
2019-03-13 23:43:29 -04:00
Harmon
0513ea1f53
[commands] Properly handle typing.Optional as last positional parameter
2019-03-13 10:05:08 -05:00