1322 Commits

Author SHA1 Message Date
Rapptz
7d6435fa9c [commands] Don't display default error handler if a cog local exists. 2017-06-12 17:44:05 -04:00
Rapptz
c1dad43f9d Downgrade PartialReactionEmoji to str in non-raw reaction events. 2017-06-09 22:01:31 -04:00
Rapptz
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
Rapptz
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
BeatButton
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
Rapptz
83dc93559c [commands] Add docstrings for extension loading. 2017-06-05 22:55:57 -04:00
Rapptz
1cf50f8054 Fix AuditLogDiff.__iter__ to return an actual iterable.
Fixes #589.
2017-06-04 20:32:09 -04:00
Rapptz
daf066dd39 Log when a player's after function fails. 2017-06-02 06:43:33 -04:00
Rapptz
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
Rapptz
3330a19f35 Support for sending a nonce. 2017-05-31 07:34:59 -04:00
Rapptz
b13d437bb9 Don't assume the inviter is always there. 2017-05-31 05:01:19 -04:00
Rapptz
fc0b90582d Writing to files is 'wb' not 'rb'. 2017-05-30 22:32:03 -04:00
Rapptz
af58e45e14 Export Attachment class. 2017-05-30 22:30:05 -04:00
Rapptz
8d3279b291 Implement an Attachment model. 2017-05-30 22:27:45 -04:00
Rapptz
d21fb780fd Remove unused functions in HTTPClient. 2017-05-30 20:00:46 -04:00
Rapptz
b2cf11fe9d [commands] Add escape_markdown parameter for clean_content. 2017-05-28 23:18:54 -04:00
Rapptz
34815a43f4 Permissions.view_audit_logs -> Permissions.view_audit_log 2017-05-28 22:00:43 -04:00
Rapptz
83f86f902a Rename verification level to extreme due to demand. 2017-05-27 22:19:31 -04:00
Rapptz
ee3c77353f Add highest verification level. 2017-05-27 01:12:06 -04:00
Rapptz
093d888173 [commands] Fix EmojiConverter not working with underscore names. 2017-05-26 18:58:56 -04:00
Rapptz
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
Rapptz
497be35d5f Log when a KeyboardInterrupt is met in Client.run 2017-05-25 21:30:22 -04:00
Rapptz
a8474ed6d3 Document that exceptions happen in Guild.audit_logs. 2017-05-25 20:16:03 -04:00
Rapptz
5a56e3fda1 Don't dispatch on_voice_state_update when Member is not found. 2017-05-22 22:28:19 -04:00
Rapptz
f588876587 Use Python3Lexer instead of PythonLexer for pygments. 2017-05-22 07:21:23 -04:00
Rapptz
d672f84932 Raise when an invalid permission is passed to PermissionOverwrite. 2017-05-20 15:34:41 -04:00
Rapptz
3436792614 Allow setting a presence upon logging in. 2017-05-20 15:19:47 -04:00
Rapptz
9e24d43c63 Rewrite Client.run yet again.
This time it should definitely fix #545.
2017-05-20 14:29:33 -04:00
Rapptz
6e2ecbc167 Re-raise exceptions from Client.start in Client.run. 2017-05-20 12:58:29 -04:00
Rapptz
f3eb039c4b Re-implement how Client.run is done by using run_forever instead. 2017-05-20 12:46:26 -04:00
Rapptz
4dfaffd5f2 Only do loop cleanup in finally block when on windows.
Should also fix #545.
2017-05-20 12:08:02 -04:00
Rapptz
1e1b02c630 Check if we're closing the event loop before using it.
Should fix #545.
2017-05-20 11:58:29 -04:00
Rapptz
229c471106 More broken Channel references. 2017-05-20 08:48:04 -04:00
Rapptz
bd7b2e2d35 Oversight in Permissions still having a table. 2017-05-20 08:47:08 -04:00
Rapptz
f4e01b3a92 Make supported operations stand out more than attributes. 2017-05-20 02:08:34 -04:00
Rapptz
3727618b65 Kill remaining references to discord.Channel in documentation. 2017-05-19 21:58:02 -04:00
Rapptz
b81fbb5a7f [commands] Add Context.reinvoke and Command.root_parent
Context.reinvoke would be the new way to bypass checks and cooldowns.
However, with its addition comes a change in the invocation order of
checks, callbacks, and cooldowns. While previously cooldowns would
trigger after command argument parsing, the new behaviour parses
cooldowns before command argument parsing.

The implication of this change is that Context.args and Context.kwargs
will no longer be filled properly.
2017-05-19 21:33:39 -04:00
Rapptz
c3e39cd722 [commands] Fix Context.command_failed from being incorrect.
When used, it would be set to False after the invoke was done. Ideally
it should report to False during invoke but True during any error
case.
2017-05-18 20:48:38 -04:00
Rapptz
8526995004 Minor speedup when doing comparisons.
Shred 2 getattr calls + 1 global lookup to 1 global lookup.
2017-05-18 05:15:06 -04:00
Rapptz
8e34a256a4 Fix User == Member comparisons. 2017-05-18 05:12:48 -04:00
Rapptz
02d854a99c Fix format string in new bot template. 2017-05-17 19:48:51 -04:00
Rapptz
8aa04b7084 First pass at having a __main__ file.
This allows you to generate templates and projects easily. Its main
purpose is to be easy to use for beginners in the upcoming
documentation.

Two new commands are added:

* newbot
  * creates a new bot template using a name and optional directory
* newcog
  * creates a new cog template using a name and optional directory
2017-05-17 05:53:24 -04:00
Rapptz
df90aaa610 Rename internal ConnectionState attribute to have an underscore.
Some people like to use that variable name apparently.

See #568 and #569.
2017-05-16 20:20:39 -04:00
Rapptz
7a06f0f3bf Client.get_user_info uses int for IDs not str.
Realistically both will work but let's not say that.
2017-05-15 21:31:38 -04:00
Rapptz
7a84661312 Rename Colour.to_tuple to Colour.to_rgb. 2017-05-15 03:40:27 -04:00
Rapptz
6f53491f9a Add Colour.from_rgb. 2017-05-15 03:37:21 -04:00
Rapptz
c1130d2879 [commands] Update check examples to work with rewrite. 2017-05-15 02:52:20 -04:00
Rapptz
4023510032 Use describe for Colour documentation. 2017-05-15 02:29:03 -04:00
Rapptz
f73eb087c9 Use describe instead of tables for supported operations. 2017-05-13 18:48:14 -04:00
Rapptz
96eca8aa53 Add Colour.blurple and Colour.greyple. 2017-05-13 17:39:12 -04:00