687 Commits

Author SHA1 Message Date
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
PapyrusThePlant
7d5d8aa918 Doc string typos 2016-06-14 18:53:40 -04:00
Hornwitser
e516c24746 Fix exception when handling login failure
Logging in with an invalid token would throw a TypeError due to improper
passing of arguments to HTTPClient._token.  Fix by properly passing the
keyword only bot argument.
2016-06-14 18:52:48 +02:00
Rapptz
4dbac9423d [commands] Only show CommandNotFound on non-empty commands. 2016-06-14 01:35:35 -04:00
Jake
f6ef4868d1 Fix concurrently joining more than one voice server at a time 2016-06-13 01:43:55 -07: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
Jake
41a2b5ed73 Actually read from the voice websocket & fix heartbeat.
This change makes it so that the buffer doesn't fill and the voice server drops the socket.

Also, use correct interval for voice websocket heartbeat.
2016-06-05 21:18:36 -07: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
Khazhismel Kumykov
33a69681fc [commands] Dispatch command_error on command exec error.
Provide fallback on_command_error - will only fire if no cog handlers and
no local handler.
Propagate exceptions in checks and argument parsing to bot.
2016-06-04 21:22:10 -04:00
Rapptz
329f916e10 Add bot keyword argument to login via static token. 2016-06-03 02:12:39 -04:00