Commit Graph

1145 Commits

Author SHA1 Message Date
94eb938d29 handle Game.name being None
re #221, Game.name can still be None, which will cause TypeError on
str(game).

Currently discord does not treat these weird statuses uniformly, with it
showing as playing a game on mobile, but not playing a game on desktop. It
may be useful to know users are in this weird state.
2017-07-03 23:14:16 -07:00
6c01250c39 [commands] fix unloading incorrect cogs
unload_extension would incorrectly unload cogs/listeners
of other extensions if the name of one was a prefix of
another.
2017-07-03 20:56:04 -07:00
bca72e64d6 [commands] clean up remove_cog documentation
remove_cog always returns None, even if the cog is found.
2017-07-03 19:02:00 -07:00
8caa088d25 Allow PartialReactionEmoji in add_reaction and remove_reaction. 2017-07-02 01:43:45 -04:00
f607febaf7 Fix Message.remove_reaction and Message.add_reaction taking in Reaction 2017-07-02 01:40:13 -04:00
0b9d402272 [commands] Improve commands.when_mentioned_or documentation. 2017-07-01 16:32:36 -04:00
25a1d8c300 Add support for user flags in Profile. 2017-06-30 18:49:49 -04:00
77f04539b1 Typo in docstring for TextChannel.delete_messages 2017-06-29 20:33:19 -04:00
64cba11656 Allow TextChannel.delete_messages to take lists of 0 or 1 element. 2017-06-29 14:06:12 -04:00
ce34713c45 [commands] Do not take up 'command' keyword-argument in Context.invoke.
It was annoying when commands would have a keyword-only argument
named 'command', such as a help command or a disable command.
2017-06-27 04:58:20 -04:00
ad20e3066e [commands] Add parameter that failed in fall-back BadArgument error. 2017-06-26 18:13:46 -04:00
649e4de149 Add Reaction.__str__ 2017-06-26 01:27:09 -04:00
723e392c95 Properly sort roles and discard everyone role in Member.colour. 2017-06-24 20:55:47 -04:00
4ee90cd6e4 Fix missing lazy logging format calls.
Not sure how I missed these.
2017-06-24 20:52:19 -04:00
72780e7737 Actually expose Message.webhook_id. 2017-06-24 20:26:58 -04:00
3618f51f97 [commands] Ensure that Context.command is the command in Command.can_run
Previously, Context.command was not guaranteed to be the actual command
being checked if it can run. This could be troublesome when
implementing help commands or when using the default help command.

This new change allows at least for the guarantee that Context.command
to be technically correct in Command.can_run.
2017-06-21 02:30:24 -04:00
c23ef9e8a4 [commands] Add __global_check_once to list of cog functions. 2017-06-20 23:55:17 -04:00
717f11d635 [commands] Add Bot.check_once for a global check that is called once.
There is a counterpart for this in cogs, called __global_check_once.
This allows for predicates that would filter a command globally that
do not necessarily require rechecking in the case of e.g. the help
command such as blocking users or blocking channels.
2017-06-20 23:41:13 -04:00
06c99533de Fix passing None to afk_channel in Guild.edit. 2017-06-19 04:22:42 -04:00
7d001ef46e [commands] Try to use the proper name when conversion fails. 2017-06-17 21:16:10 -04:00
851d4ce22a Properly quote reason header so non-ASCII works in audit log reasons. 2017-06-17 01:04:38 -04:00
15edfc2b26 Make checking for truth-ness of EmbedProxy easier. 2017-06-16 22:17:24 -04:00
e62e2c7cc6 [commands] Fix cog error detection in the default global error handler. 2017-06-13 23:51:11 -04:00
7d6435fa9c [commands] Don't display default error handler if a cog local exists. 2017-06-12 17:44:05 -04:00
c1dad43f9d Downgrade PartialReactionEmoji to str in non-raw reaction events. 2017-06-09 22:01:31 -04:00
b06899e7d4 Defer logging formatting until the logger is actually called.
This would cause unnecessary format calls even if you didn't have
logging enabled.
2017-06-09 18:53:24 -04:00
d239cc2666 Implement "partial" message events.
These are events that get triggered regardless of the state of the
message cache. Useful for getting data from before the bot was booted.
2017-06-09 18:36:59 -04:00
1be119cd45 Allow sending files list smaller than 2 elements in Messageable.send
The previous restriction was unwarranted.
2017-06-07 20:07:43 -04:00
83dc93559c [commands] Add docstrings for extension loading. 2017-06-05 22:55:57 -04:00
1cf50f8054 Fix AuditLogDiff.__iter__ to return an actual iterable.
Fixes #589.
2017-06-04 20:32:09 -04:00
daf066dd39 Log when a player's after function fails. 2017-06-02 06:43:33 -04:00
5e6491c3fe [commands] Allow inline advanced converters via classmethods.
That way you don't need to have, e.g. Foo and FooConverter and can
do it inline via Foo instead.
2017-06-01 03:32:18 -04:00
3330a19f35 Support for sending a nonce. 2017-05-31 07:34:59 -04:00
b13d437bb9 Don't assume the inviter is always there. 2017-05-31 05:01:19 -04:00
fc0b90582d Writing to files is 'wb' not 'rb'. 2017-05-30 22:32:03 -04:00
af58e45e14 Export Attachment class. 2017-05-30 22:30:05 -04:00
8d3279b291 Implement an Attachment model. 2017-05-30 22:27:45 -04:00
d21fb780fd Remove unused functions in HTTPClient. 2017-05-30 20:00:46 -04:00
b2cf11fe9d [commands] Add escape_markdown parameter for clean_content. 2017-05-28 23:18:54 -04:00
34815a43f4 Permissions.view_audit_logs -> Permissions.view_audit_log 2017-05-28 22:00:43 -04:00
83f86f902a Rename verification level to extreme due to demand. 2017-05-27 22:19:31 -04:00
ee3c77353f Add highest verification level. 2017-05-27 01:12:06 -04:00
093d888173 [commands] Fix EmojiConverter not working with underscore names. 2017-05-26 18:58:56 -04:00
a47ded6e49 Don't expose Client.messages
Not entirely sure why it was exposed in the first place. Most uses with
it essentially boiled down to mis-usage when they meant to use the
/messages endpoint (via Client.logs_from or Messageable.history) or
complaining about the partial data woes that came from it.
2017-05-26 07:17:52 -04:00
497be35d5f Log when a KeyboardInterrupt is met in Client.run 2017-05-25 21:30:22 -04:00
a8474ed6d3 Document that exceptions happen in Guild.audit_logs. 2017-05-25 20:16:03 -04:00
5a56e3fda1 Don't dispatch on_voice_state_update when Member is not found. 2017-05-22 22:28:19 -04:00
f588876587 Use Python3Lexer instead of PythonLexer for pygments. 2017-05-22 07:21:23 -04:00
d672f84932 Raise when an invalid permission is passed to PermissionOverwrite. 2017-05-20 15:34:41 -04:00
3436792614 Allow setting a presence upon logging in. 2017-05-20 15:19:47 -04:00