Commit Graph
100 Commits
Author SHA1 Message Date
Rapptz e0f02f1775 Rename AsyncIterator.get to next to prevent shadowing. 2017-07-04 10:45:38 -04:00
Rapptz c98443e9aa Fix wrong order in migrating docs. 2017-07-02 17:49:56 -04:00
Rapptz 8caa088d25 Allow PartialReactionEmoji in add_reaction and remove_reaction. 2017-07-02 01:43:45 -04:00
Rapptz f607febaf7 Fix Message.remove_reaction and Message.add_reaction taking in Reaction 2017-07-02 01:40:13 -04:00
Rapptz da6ced72c9 Bump requirements to aiohttp 2.2 and PyNaCl 1.1.2 2017-07-01 16:56:39 -04:00
Rapptz 0b9d402272 [commands] Improve commands.when_mentioned_or documentation. 2017-07-01 16:32:36 -04:00
Rapptz 867d918e30 Add when_mentioned and when_mentioned_or to the documentation. 2017-07-01 16:18:07 -04:00
Rapptz 25a1d8c300 Add support for user flags in Profile. 2017-06-30 18:49:49 -04:00
Rapptz 77f04539b1 Typo in docstring for TextChannel.delete_messages 2017-06-29 20:33:19 -04:00
Rapptz 51429f98e8 Fix typo in migrating page. 2017-06-29 20:25:40 -04:00
Rapptz 64cba11656 Allow TextChannel.delete_messages to take lists of 0 or 1 element. 2017-06-29 14:06:12 -04:00
Rapptz 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
Rapptz ad20e3066e [commands] Add parameter that failed in fall-back BadArgument error. 2017-06-26 18:13:46 -04:00
Rapptz 649e4de149 Add Reaction.__str__ 2017-06-26 01:27:09 -04:00
Rapptz 723e392c95 Properly sort roles and discard everyone role in Member.colour. 2017-06-24 20:55:47 -04:00
Rapptz 4ee90cd6e4 Fix missing lazy logging format calls.
Not sure how I missed these.
2017-06-24 20:52:19 -04:00
Rapptz 72780e7737 Actually expose Message.webhook_id. 2017-06-24 20:26:58 -04:00
Rapptz 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
Rapptz c23ef9e8a4 [commands] Add __global_check_once to list of cog functions. 2017-06-20 23:55:17 -04:00
Rapptz 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
Rapptz 06c99533de Fix passing None to afk_channel in Guild.edit. 2017-06-19 04:22:42 -04:00
Rapptz 7d001ef46e [commands] Try to use the proper name when conversion fails. 2017-06-17 21:16:10 -04:00
Rapptz 851d4ce22a Properly quote reason header so non-ASCII works in audit log reasons. 2017-06-17 01:04:38 -04:00
Rapptz 15edfc2b26 Make checking for truth-ness of EmbedProxy easier. 2017-06-16 22:17:24 -04:00
Rapptz e62e2c7cc6 [commands] Fix cog error detection in the default global error handler. 2017-06-13 23:51:11 -04:00
Rapptz 7d6435fa9c [commands] Don't display default error handler if a cog local exists. 2017-06-12 17:44:05 -04:00
Rapptz efe8fbf6ed Fix format string in documentation. 2017-06-12 17:39:12 -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
Rapptz 0f7c1e09b0 Fix mixed order in migrating docs. 2017-06-05 23:15:29 -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 6135d4cd45 Fix typing/history showing up twice in the documentation. 2017-06-03 02:46:20 -04:00
Rapptz bef636e1e3 Fix mistake in migrating docs. 2017-06-02 16:51:58 -04:00
Rapptz daf066dd39 Log when a player's after function fails. 2017-06-02 06:43:33 -04:00
Rapptz a18267ca49 Fix FAQ to showcase that there is a single parameter, the error. 2017-06-02 06:25:39 -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 d85e479be6 Minor fix in migrating page. 2017-05-31 15:28:54 -04:00
Rapptz fb7689f8ea Add some margin for supported operations sections. 2017-05-31 14:50:31 -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 95451c35e7 Document Message.embeds and Message.attachments changes. 2017-05-31 01:57:18 -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 9074bea234 Less unnecessary padding around functions. 2017-05-25 22:33:01 -04:00
Rapptz 497be35d5f Log when a KeyboardInterrupt is met in Client.run 2017-05-25 21:30:22 -04:00
Rapptz e1263a585a Mention User.avatar_url change in migration page. 2017-05-25 21:29:45 -04:00
Rapptz a8474ed6d3 Document that exceptions happen in Guild.audit_logs. 2017-05-25 20:16:03 -04:00
Rapptz 1f1ac8f750 Mention on_member_ban event change. 2017-05-23 21:25:16 -04:00
Rapptz 37288412ed Working fix for one of the bullet points.
Thanks Pirate.
2017-05-23 11:31:41 -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 c3da6cdbd3 Add ref links to the commands API page. 2017-05-22 21:18:45 -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 6119f280c5 Warnings are yellow. 2017-05-20 09:15:57 -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 969bb085cb Slightly different styling for supported operations. 2017-05-20 08:39:52 -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 8a49a3a74f Update migrating page with new extension information. 2017-05-19 21:56:16 -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 026e526817 Lazy fix for active class when viewport is too small for sidebar. 2017-05-17 20:10:58 -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 3cb680159e Add __unload to the special cog method list. 2017-05-17 00:57:21 -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 9cbbd8af65 Highlight currently visited section. 2017-05-16 03:12:43 -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 20949fc70e Add helpful admonition CSS. 2017-05-15 20:47:49 -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 d80e08c1c6 Fix all broken cross references in the migrating page... again. 2017-05-15 02:08:56 -04:00
Rapptz b895a3fabb Remove a bunch of red from the theme. 2017-05-15 01:55:42 -04:00
Rapptz dd11b1f54c Make buttons in the sidebar not so sticky looking. 2017-05-15 01:42:30 -04:00
Rapptz db3bc4076a Completely new theme separate from alabaster. 2017-05-15 01:22:00 -04:00
Rapptz 2d465d9b3c Fix dead links in the migrating page. 2017-05-14 23:55:38 -04:00
Rapptz c45d18a6ea Add note about upgraded dependencies in the migrating page. 2017-05-14 17:59:17 -04:00
Rapptz 6b3abeb810 Fix FAQ using string for IDs. 2017-05-14 04:43:15 -04:00
Rapptz de00573288 Fix some broken cross references in the migrating page. 2017-05-13 23:16:40 -04:00