Rapptz
07607060c1
Fix Colour.__str__ to actually pad zeroes.
2016-06-16 22:49:34 -04:00
Rapptz
92fe4daa86
Attempt resume when we receive a 1001.
2016-06-16 19:13:13 -04:00
Rapptz
183e7341f6
[commands] Add Context.cog property.
2016-06-16 05:42:28 -04:00
Rapptz
2ebc0ab218
Don't assume that any shared fields are optional in Client.edit_channel.
...
Thanks Jake and night.
2016-06-15 20:56:43 -04:00
Rapptz
eeba4963f3
The name is required in Client.edit_channel so add it if it is missing.
2016-06-15 20:31:13 -04:00
Rapptz
fa0c98da4c
Make logging for HTTP requests more useful.
2016-06-15 20:16:32 -04:00
Rapptz
7c760d3271
Add Client.get_message
2016-06-15 04:46:19 -04:00
Rapptz
e736554777
Make sure the socket is closed when we call VoiceClient.disconnect
2016-06-14 22:33:25 -04:00
Rapptz
08674f115b
Make Channel.overwrites_for return PermissionOverwrite
2016-06-14 22:26:15 -04:00
Rapptz
d7efc9778b
Make Client.edit_channel_permissions use PermissionOverwrite.
2016-06-14 22:26:14 -04:00
Rapptz
f0fc70b2cf
Add a way to set permission overwrites when creating a channel.
2016-06-14 22:26:14 -04:00
Rapptz
46babe822a
Fix bug with editing messages over private messages.
2016-06-14 22:26:13 -04:00
Rapptz
fb82a37cc6
Add discord.PermissionOverwrite type for channel-specific overwrites.
2016-06-14 22:26:13 -04:00
Rapptz
c162b666ea
Fix bucket for change_nickname.
2016-06-14 19:15:11 -04:00
Rapptz
4dbac9423d
[commands] Only show CommandNotFound on non-empty commands.
2016-06-14 01:35:35 -04:00
Rapptz
fec459e755
Document Server.large
2016-06-12 23:46:12 -04:00
Rapptz
8d1867393c
Give Client.email a default value of None.
2016-06-12 23:44:41 -04:00
Rapptz
c3933c379a
Make the default filename a little bit prettier.
2016-06-12 23:43:03 -04:00
Rapptz
3895cf9295
Fix bug with login token not being properly written in cache.
2016-06-12 23:25:22 -04:00
Rapptz
b496ea7972
Fix bug with logs_from URL params not being correct.
...
The bug happened because I forgot to pass in the id attribute.
2016-06-12 23:00:33 -04:00
Rapptz
f3b257b342
Fix bug with uploading file-like objects.
...
I would require bytes-like objects instead due to its usage inside
the HTTPClient. Release this restriction so old `send_file` code works.
2016-06-12 22:41:30 -04:00
Rapptz
64c1e7d199
Fix bug with logging in with email and password.
2016-06-12 22:41:14 -04:00
Rapptz
879584b81a
Fix bug with edit_role and create_role not working.
...
This was due to an error in overzealous removal of code.
2016-06-12 22:40:35 -04:00
Rapptz
aecf0daf33
Fix sed error involved in creation of voice websocket.
2016-06-12 21:16:57 -04:00
Rapptz
dbd3147059
Support more close codes for RESUME.
2016-06-12 20:48:23 -04:00
Rapptz
6b5d579d0b
Remove unused verify response function.
2016-06-12 20:44:40 -04:00
Rapptz
e8c32c542e
Make HTTPException get the error JSON's message attribute.
2016-06-12 20:36:07 -04:00
Rapptz
1fba1b06fa
Rewrite HTTP handling significantly.
...
This should have a more uniform approach to rate limit handling. Instead
of queueing every request, wait until we receive a 429 and then block
the requesting bucket until we're done being rate limited. This should
reduce the number of 429s done by the API significantly (about 66% avg).
This also consistently checks for 502 retries across all requests.
2016-06-12 20:33:09 -04:00
Rapptz
fa36a449e9
Change HTTPException to only take a single parameter.
2016-06-12 13:57:05 -04:00
Rapptz
5f9ed8c9d2
[commands] Make the CommandError required argument optional again.
2016-06-10 23:50:17 -04:00
Rapptz
a175c86aa1
Add Client.application_info to retrieve the current app info.
...
Fixes #241 .
2016-06-10 22:28:15 -04:00
Rapptz
fe5c369fe9
Handle voice websocket closure if it's a successful close.
2016-06-10 21:45:42 -04:00
Rapptz
bde266bbb9
[commands] Fix @everyone elevation in the default help command.
2016-06-10 21:31:11 -04:00
Rapptz
1228159f30
[commands] Fix bug with Context.command not updating in groups.
...
This happened when `invoke_without_command` was set to True.
2016-06-10 21:05:42 -04:00
Rapptz
74cfc53bc8
[commands] Make it so CommandError does not contain @everyone mentions.
...
Mitigates some permission elevation issues.
2016-06-10 20:40:35 -04:00
Rapptz
43bbecd519
[commands] Exceptions raised while invocation raise CommandInvokeError.
...
This change should make it a bit more intuitive to get the original
exception without having the gotcha of checking ``isinstance`` inside
the error handler.
2016-06-10 20:32:05 -04:00
Rapptz
d914c0a4e4
Clarify on_ready triggering more than twice.
...
On that note, fix the background_task example to use `Client.run`
instead of manual loop management. That way the task will be cleaned
up and cancelled inside `Client.run`.
2016-06-10 20:16:21 -04:00
Rapptz
a0f37f8e85
[commands] Fix issue with proper local error handlers not beign called.
2016-06-10 01:07:03 -04:00
Rapptz
631cc5a7d6
Add Client.move_channel to change channel positions.
2016-06-07 21:29:59 -04:00
Rapptz
a0966f59d2
Fix some typos in the FAQ page.
2016-06-07 20:39:15 -04:00
Rapptz
19c2bad5be
Add FAQ section to the documentation.
2016-06-07 05:18:57 -04:00
Rapptz
b9c7b05176
[commands] Unify Command.handle_local_error into general dispatcher.
2016-06-05 00:35:27 -04:00
Rapptz
661645ac97
[commands] Add Command.qualified_name to get the full command name.
...
This also sets `__str__` to do the same thing.
2016-06-04 22:31:00 -04:00
Rapptz
37dfe38af5
[commands] Fix bug where Context.command would not update.
2016-06-04 22:29:50 -04:00
Rapptz
9d9a20c128
[commands] Fix bug where subgroups would be repeatedly called.
...
This happened due to not resetting the `invoked_subcommand` state
tracking. Since the `invoked_subcommand` was not reset, it would always
assume that it was valid and repeatedly call it when passed invalid
subcommands/arguments.
2016-06-04 22:04:05 -04:00
Rapptz
24a9da04db
[commands] Cleanup Command.invoke code due to exception propagation.
2016-06-04 21:41:01 -04:00
Rapptz
329f916e10
Add bot keyword argument to login via static token.
2016-06-03 02:12:39 -04:00
Rapptz
f6fa1e837a
Actually use v4 gateway and fixes thanks to Jake.
2016-06-02 07:32:35 -04:00
Rapptz
c97e5a17e6
Update positions when a role is added or removed.
2016-06-01 21:06:04 -04:00
Rapptz
b6492a4124
Clarify Role.position documentation.
2016-06-01 20:47:33 -04:00
Rapptz
9a6234961f
Make Channel.changed_roles into an on-the-fly property instead.
2016-06-01 20:33:38 -04:00
Rapptz
5016f12079
Add Role.server attribute.
...
This breaks events that expected a server parameter for the role events.
2016-06-01 19:27:48 -04:00
Rapptz
8638ff4414
Update voice client main ws references when reconnecting.
2016-06-01 05:20:22 -04:00
Rapptz
e0a91df32b
Add RESUME support.
2016-06-01 05:13:15 -04:00
Rapptz
20e86973ea
[commands] Delete frame objects when done using them.
2016-05-31 23:22:53 -04:00
Rapptz
bbc78b29ae
Fix discord.Object documentation.
2016-05-31 20:39:12 -04:00
Rapptz
3c8fcd3584
[commands] Add support for self-bots.
2016-05-31 20:30:17 -04:00
Rapptz
13a9a7520c
Fix ytdl documentation link.
2016-05-27 15:00:50 -04:00
Rapptz
70cc5eb1bb
Allow to edit mentionable property in Client.edit_role.
2016-05-27 14:03:50 -04:00
Rapptz
f3f3ab1cd4
Reference the Discord UI in the permission documentation.
2016-05-23 15:06:09 -04:00
Rapptz
aa45bce212
Documentation fixes for role related functions.
2016-05-23 15:03:22 -04:00
Rapptz
8f4816ddae
Close voice connections before closing the websocket.
2016-05-22 00:58:27 -04:00
Rapptz
bf650297a1
Only trigger on_voice_state_update if the member actually exists.
2016-05-20 19:22:22 -04:00
Rapptz
a31188c966
Fix bug where members leaving will stay in Channel.voice_members.
2016-05-20 19:21:06 -04:00
Rapptz
e3c4daf717
Add __slots__ for discord.Channel.
...
Not sure why this was missing.
2016-05-20 18:11:58 -04:00
Rapptz
fe1b5b2941
Add support for voice channel user limits.
2016-05-20 18:11:58 -04:00
Rapptz
e66b2dce88
Rename threading internal variable conflict.
2016-05-13 20:24:45 -04:00
Rapptz
9077b4e319
Fix Member.colour to use the new algorithm for determining colour.
2016-05-12 22:12:33 -04:00
Rapptz
9176caa355
Fix Channel.permissions_for to work with the new permission system.
2016-05-12 21:25:18 -04:00
Rapptz
dd8a60f743
Add Permissions.administrator and change Permissions.manage_roles
2016-05-12 21:10:02 -04:00
Rapptz
92175ea152
Add example for Client.purge_from
2016-05-12 09:05:51 -04:00
Rapptz
493bffc685
Rework playlist example to work with multi-server voice.
2016-05-12 06:06:39 -04:00
Rapptz
1155a0aaa4
Make Player threads into daemon threads.
2016-05-12 06:06:38 -04:00
Rapptz
3c04ec2af0
Add a way to change the player volume.
2016-05-12 06:06:38 -04:00
Rapptz
339e26275f
Add VoiceClient.move_to for quick switching of voice channels.
2016-05-12 06:06:37 -04:00
Rapptz
b8eab5f656
Change second run_until_complete to not be empty.
...
This should stop the infinite loops in some cases.
2016-05-10 20:21:08 -04:00
Rapptz
0c8d5ee863
Force encoding of text retrieval functions to use utf-8.
...
Closes #207
2016-05-10 19:52:34 -04:00
Rapptz
1e175f2ab3
Fix issue with Client.purge_from not deleting the 101st message.
2016-05-10 19:39:58 -04:00
Rapptz
1f86a9b795
Add Client.purge_from as a high level interface around bulk delete.
2016-05-10 08:43:09 -04:00
Rapptz
1b601097d2
Add Client.delete_messages for bulk delete.
2016-05-10 07:52:22 -04:00
Rapptz
cf2bee5c43
Fix issue with Member.joined_at being None.
2016-05-10 06:04:44 -04:00
Rapptz
3feba5d1bb
Add Game.type and Game.url attributes to change streaming status.
2016-05-06 16:38:22 -04:00
Rapptz
701720a0f8
Add a TimeoutError if VoiceClient.connect fails.
2016-05-06 13:30:44 -04:00
Rapptz
570ccbf753
Suppress ConnectionClosed on sending in the main websocket.
2016-05-06 13:19:41 -04:00
Rapptz
2fc496304c
Add libopus DLLs for ease of use.
2016-05-06 12:23:24 -04:00
Rapptz
d9c780b8a8
Working multi-server voice support.
2016-05-01 20:54:13 -04:00
Rapptz
5fa715c350
Fix typo in Message.role_mentions documentation.
2016-05-01 07:34:48 -04:00
Rapptz
1acf478fb7
Make Permissions an iterable class.
2016-05-01 07:22:45 -04:00
Rapptz
fdaa4299a3
[commands] Fix when_mentioned when handling nicknames.
2016-05-01 07:06:19 -04:00
Rapptz
5e8c79bf76
Attempt to consistently sort of all Member.roles
2016-04-29 22:44:25 -04:00
Rapptz
47cccba946
Remove setting read-only __doc__ in Member overrides.
2016-04-29 22:30:51 -04:00
Rapptz
ebaf74e784
Sort member.roles by ID but keep the default role in index 0.
...
This should make the events checking if `before` and `after` roles
are equivalent more sane for users.
2016-04-29 22:29:56 -04:00
Rapptz
e2bfa90eef
Add User.mentioned_in helper to check if a message mentions you.
2016-04-29 20:11:13 -04:00
Rapptz
3758c0aa83
Member.mention now uses nickname hint if needed.
2016-04-29 19:29:48 -04:00
Rapptz
196e9463f5
Add Role.mentionable attribute.
2016-04-29 19:29:29 -04:00
Rapptz
7f09acf871
[commands] Allow role mentions to work with discord.Role params.
...
This also fixes the Member regex to support the new <@!user_id> syntax
and allows colours to have a leading # before the number.
2016-04-29 08:45:12 -04:00
Rapptz
e112536ce2
Simplify User.display_name a bit.
2016-04-29 08:27:19 -04:00
Rapptz
85806ef1d6
Handle nicknames in Server.get_member_named
2016-04-29 08:20:16 -04:00
Rapptz
79f6554289
Add Message.role_mentions and handle them in Message.clean_content
2016-04-29 07:54:49 -04:00
Rapptz
abb955fdaa
Add Role.mention property
2016-04-29 07:24:32 -04:00