Commit Graph
100 Commits
Author SHA1 Message Date
Rapptz f197c34583 Begin working on asyncio port. 2015-12-04 00:16:34 -05:00
Rapptz 5a666c3f0d Point to the docs in the README and clear up notes on breaking changes 2015-11-30 20:24:41 -05:00
Rapptz 56a71e3166 Don't silently swallow ValueError thrown from on_channel_delete. 2015-11-30 17:55:25 -05:00
Rapptz e08b278c52 Fix multiple CHANNEL_DELETE. Fixes #51. 2015-11-30 17:49:51 -05:00
Rapptz d3ac141b0f Use copy.copy instead of copy.deepcopy for on_message_edit. 2015-11-30 07:38:48 -05:00
Rapptz 343e3376ea on_member_update now takes in the older member state as a parameter. 2015-11-30 07:37:48 -05:00
Rapptz 307392ff19 on_status event now has the old game ID and old status as parameters. 2015-11-30 03:31:47 -05:00
Rapptz 31fd5023f1 Miscellaneous documentation fixes. 2015-11-30 03:15:56 -05:00
Rapptz 39988a36c9 Version bump to v0.9.0 2015-11-28 23:08:35 -05:00
Rapptz c3e7ba3671 Message.channel's Object instance has an is_private attribute now.
This was to allow for basic checks such as message.channel.is_private
to succeed at the very least. It is a very small mitigation and not
perfect since it doesn't have every attribute that PrivateChannel
itself has. However you could retrieve the user info through the
Message.author attribute.
2015-11-28 23:06:23 -05:00
Rapptz ed53f3fb3a Add caveat note about Message.mention_everyone 2015-11-28 22:35:53 -05:00
Rapptz 5d4c555711 Switch to Sphinx RTD theme. 2015-11-28 21:00:35 -05:00
Rapptz 7121c39a94 Add some badges to the README. 2015-11-28 20:55:41 -05:00
Rapptz d243d0895c Add note about data classes instances. 2015-11-28 20:42:56 -05:00
Rapptz 101d8d52b6 Add warning for Message.mentions order being non-deterministic. 2015-11-28 20:16:17 -05:00
Rapptz 38e83f0999 "An array" -> "A list" for documentation purposes. 2015-11-28 19:51:32 -05:00
Rapptz 70c7a79719 Remove afk_channel_id and replace it with afk_channel. 2015-11-28 19:28:31 -05:00
Rapptz df3cb831a9 Member.roles array now has the default role as the first element. 2015-11-28 19:26:25 -05:00
Rapptz e10b6c767b Move server parsing code from Client to Server. 2015-11-28 19:17:50 -05:00
Rapptz d440e52a00 Add new_member.py example to showcase messaging new members. 2015-11-27 18:30:20 -05:00
Rapptz c25e667866 discord.Server is a valid destination in Client.send_message & co. 2015-11-27 18:19:38 -05:00
Rapptz 90d9c9b297 reply.py example now checks for self-authoring 2015-11-27 18:01:52 -05:00
Rapptz 7c060ee7f6 Document supported operations in discord.User 2015-11-27 17:59:22 -05:00
Rapptz 9fb2186785 Update to the new colours. 2015-11-27 17:56:35 -05:00
Rapptz e884119cd9 Performance improvements in on_typing event. 2015-11-27 17:29:36 -05:00
Rapptz b1b2c0d099 Add LoginFailure exception for a clearer failure in Client.login
The older HTTPException is not exactly the clearest thing for people
who are new to programming or HTTP exceptions in general.
2015-11-27 17:03:36 -05:00
Rapptz f83442096b Client.edit_message no longer checks for private channel. 2015-11-27 16:01:39 -05:00
Rapptz 4a32ae444a Add the message to the exception output. 2015-11-27 03:34:37 -05:00
Rapptz e75edc2e57 Document Client.run reconnection idiosyncrasy. 2015-11-26 23:59:16 -05:00
Rapptz 4a25011ee1 Revert "GIF support for avatars"
This reverts commit 9a5bb439ec.
2015-11-26 23:12:10 -05:00
Rapptz 9a5bb439ec GIF support for avatars 2015-11-26 22:55:26 -05:00
Rapptz f0617fbb6a Add support for uploading avatars. 2015-11-26 22:14:04 -05:00
Rapptz 077817c126 Move _null_event and _verify_successful_response to utils
They might be used in other files in the future.
2015-11-26 21:09:50 -05:00
Rapptz af9e5bc67a Simplify examples to no longer use logging or Client.is_logged_in
The logging module is no longer required to get diagnostic output
since we use `stderr` by default regardless of the logging module.
Which means that the logging module will only give a more verbose
output than is necessary.

Client.is_logged_in checking is no longer necessary since all HTTP
request handling now raise an exception if they fail so those chunks
are also gone.
2015-11-26 19:30:09 -05:00
Rapptz ea80812fdd Add Client.get_invite to turn a URL to an Invite object. 2015-11-26 19:05:31 -05:00
Rapptz 0d19273844 Client.accept_invite and Client.register now accept invite IDs. 2015-11-26 18:43:26 -05:00
Rapptz 7f94f75223 Handle TYPING_START event. 2015-11-24 21:11:53 -05:00
Rapptz 2e03927f2c Merge send_raw_file and send_file 2015-11-21 01:31:51 -05:00
Rapptz 57312d96f7 Fix annoying lack of parenthesis at end of HTTPException 2015-11-20 23:35:23 -05:00
Rapptz 5ca04ea08f Use try-except instead of checking for membership.
Basically, a lot of the checks revolving "if x in y" could be written
more efficiently by doing the task anyway and ignoring the exception
a la the EAFP guideline.
2015-11-20 17:39:51 -05:00
Rapptz acbbaa39ad Add Message.channel_mentions 2015-11-19 23:10:15 -05:00
Rapptz da37ff16c1 Add get_raw_[channel_]mentions to Message 2015-11-19 23:01:43 -05:00
Rapptz e88c194e9a Fix is_private check in mentions array handling. 2015-11-19 22:21:15 -05:00
Rapptz 692a6a3bc6 Fix ordering issue with Message.server 2015-11-18 20:04:27 -05:00
Rapptz 75658f46a2 Message.mentions now returns a list of Member instead of User 2015-11-16 21:18:30 -05:00
Rapptz cc59654216 Add Client.get_all_channels and Client.get_all_members 2015-11-16 21:02:23 -05:00
Rapptz d1a7d2cad2 Documentation fixes for Client.logs_from 2015-11-16 20:52:56 -05:00
Rapptz 3e072db5d0 Fix Client.unban parameter name (name -> user) 2015-11-16 18:20:44 -05:00
Rapptz 52c1d134ba Clean-up guild_delete. 2015-11-16 18:19:52 -05:00
Rapptz 5ecaf1df4c Make unavailable default to None. 2015-11-16 18:15:34 -05:00
Rapptz 3d70966021 Attempt to fix unavailable guilds again 2015-11-16 17:23:05 -05:00
Rapptz 85ac03a081 Role.is_everyone actually uses the proper check. 2015-11-09 00:33:15 -05:00
Rapptz 054cf2e1e0 Channel.permissions_for now correctly handles everyone overwrites. 2015-11-09 00:32:38 -05:00
Rapptz 7a4fab5566 Change iterable to an argument list in role related documentation. 2015-11-07 18:08:50 -05:00
Rapptz ad6fbbfe43 Fix Client.create_role 2015-11-07 16:28:37 -05:00
Rapptz 7161723034 Change on_server_create/delete to on_server_join/remove. 2015-11-01 15:30:20 -05:00
Rapptz 822e54200d Document Client.login raising exceptions. 2015-10-27 23:02:50 -04:00
Rapptz 9b2a78a031 Add InvalidArgument exception and change exceptions thrown. 2015-10-27 21:25:21 -04:00
Rapptz 027b7b33c9 All HTTP requests now throw HTTPException. 2015-10-27 21:19:32 -04:00
Rapptz cc397d6e6a Document cases where GatewayNotFound is thrown. 2015-10-27 19:11:56 -04:00
Rapptz 3266d1ed10 GatewayNotFound now has a default message. 2015-10-27 19:08:29 -04:00
Rapptz d14bffcd96 Rename InvaldiDestination to a generic ClientException. 2015-10-27 19:02:12 -04:00
Rapptz 61e41ec3b9 All exceptions now derive from DiscordException. 2015-10-27 18:09:26 -04:00
Rapptz 6ae6bd8e6d Remove InvalidEventName exception due to it being unused 2015-10-27 18:03:51 -04:00
Rapptz f770fc1c67 Add discord.Object to the documentation. 2015-10-27 17:59:23 -04:00
Rapptz dd2e08e185 Add support for passing in Object to methods. 2015-10-27 17:39:51 -04:00
Rapptz c49ff36a7b Make Message.channel an Object if something goes wrong.
Fixes #21
2015-10-27 17:21:08 -04:00
Rapptz 9f12067b3d Add discord.Object class for generic pass-by-ID. 2015-10-27 17:04:50 -04:00
Rapptz a0073c734e Split data classes into more files. 2015-10-27 16:23:20 -04:00
Rapptz 616f2bb4e9 Remove the name from logging.
Fixes #28.
2015-10-25 23:17:02 -04:00
Rapptz 60dfd04439 Check if member is in list for GUILD_MEMBER_REMOVE. 2015-10-25 23:08:06 -04:00
Rapptz 2938d0cfcf Don't update member.roles in add/remove_roles. 2015-10-24 23:36:12 -04:00
Rapptz 5efddaf35d Support unavailable servers. 2015-10-24 05:10:58 -04:00
Rapptz 72674b4c2d Add Channel.mention to mention a channel. 2015-10-23 21:04:52 -04:00
Rapptz 1a13f9ad30 Add Message.server attribute shortcut. 2015-10-23 17:41:28 -04:00
Rapptz 8552e24945 Version bump to v0.8.0 2015-10-22 22:21:52 -04:00
Rapptz f018895f2c Fix documentation warnings. 2015-10-22 22:20:36 -04:00
Rapptz 6981c51e0a Change default parameter to None for Client.set_channel_permissions 2015-10-22 22:20:35 -04:00
Rapptz 6f76a5ab33 Add Client.delete_channel_permissions
Fixes #18
2015-10-22 22:20:35 -04:00
Rapptz ec5b7bb493 Add Client.set_channel_permissions 2015-10-22 22:20:34 -04:00
Rapptz b94dffaf87 Change Permissions constants to be class method factories instead. 2015-10-22 22:20:34 -04:00
Rapptz 8b8312608c Change Colour constants to be class method factories instead. 2015-10-22 22:20:33 -04:00
Rapptz 9188184e85 Fix permission resolution in Channel.permissions_for 2015-10-22 22:20:33 -04:00
Rapptz b9c40955ab Add instructions for installing development version. 2015-10-21 21:09:50 -04:00
Rapptz c8535f714e Documentation fixes for Message. 2015-10-21 21:09:01 -04:00
Rapptz ce9a8ff75b Add note for edit_role about custom RGB colours. 2015-10-21 20:38:28 -04:00
Rapptz d2741ca38a Better detection for the everyone role. Fixes #23. 2015-10-21 20:27:08 -04:00
Rapptz edd3d47220 Add Client.replace_roles 2015-10-21 19:46:33 -04:00
Rapptz 6bb6a0a0a7 Add Client.add_roles and Client.remove_roles 2015-10-21 19:44:37 -04:00
Rapptz 77253d7717 Fix Client.create_invite invalid method call issue. 2015-10-20 15:59:45 -04:00
Rapptz 0e106cd8c4 Change default limit for Client.logs_from to 100. 2015-10-19 08:31:28 -04:00
Rapptz 7ff2cd008f Properly set requirements of ws4py and requests. 2015-10-18 23:34:27 -04:00
Rapptz e2af5d545a Add Client.create_role to create a server-wide role. 2015-10-17 17:54:16 -04:00
Rapptz 84e9300a3d Change Client.edit_role to be less stateful. 2015-10-17 17:53:55 -04:00
Rapptz 8fbaa29e9c Document Permissions constants and set default permissions to 0. 2015-10-17 07:17:40 -04:00
Rapptz 61f62c1468 Add Channel.permissions_for and PrivateChannel.permissions_for.
These functions handle permission resolution for a specific member.

Aids with #18.
2015-10-17 06:21:51 -04:00
Rapptz 2813652995 Fix bug with member voice state update. 2015-10-17 05:27:10 -04:00
Rapptz a9fd4fc4e3 Better detection for the @everyone role. 2015-10-17 04:13:15 -04:00
Rapptz ba978cc988 Add Role.managed property. 2015-10-16 23:20:53 -04:00
Rapptz c4f7664bd9 Only remove if the user is actually in the voice channel. 2015-10-16 20:11:29 -04:00