Commit Graph

1458 Commits

Author SHA1 Message Date
9c5259afd7 Update voice code to vws V4
- Update internals to be compatible with v4
- Adds multiple encryption mode support.  Previously only `xsalsa20_poly1305` was supported.  Now `xsalsa20_poly1305_suffix` is also supported.
  Note: There is no (nice) way to manually select a mode.  The user needn't worry about this however.
- Fixed speaking state bug.  When you disconnected from a voice channel while a bot was playing, upon reconnect you would be unable to hear the bot.  This was caused by bots not sending their speaking state while transmitting.  Bots will now set their speaking state properly when transmitting.  
  Note: This does not account for sending actual silence, the speaking indicator will still be active.
2019-01-28 22:22:52 -05:00
883ae8fe80 Fix accidental regression of 9bc48b2 in fa46b07
Occured due to difficult to spot difference in git merge when rebasing
the lint changes.
2019-01-28 22:22:51 -05:00
9656a21ebe Bumped copyright years to 2019. 2019-01-28 22:22:50 -05:00
ce3ede1551 Implement PartialEmoji == Emoji (fixes #1627) 2019-01-28 22:22:48 -05:00
85b5286056 Fix user/user_id documentation for reaction remove events 2019-01-28 22:22:44 -05:00
e1c94a3b1c Do None instead of falsy checks on Command attributes 2019-01-28 22:22:44 -05:00
dc8aa7c35b Change Greedy behaviour slightly during conversion errors.
Make Greedy swallow conversion errors and return the default if there
are no convertible args
2019-01-28 21:57:29 -05:00
0614e2af90 Use a tuple for startswith in mime detection code. 2019-01-28 21:47:23 -05:00
febb8a965c Allow additional parameters on channel creation 2019-01-28 21:47:22 -05:00
eab0a4f38d Fix typo in Permissions.all_channel 2019-01-28 21:41:56 -05:00
33dc3411ac Fix Webhook states for stateful objects 2019-01-28 21:41:55 -05:00
7f4c57dd5a Fix overwriting of AuditLogDiff.roles for multiple $add/$remove keys 2018-12-31 08:39:28 -05:00
dec14faea9 Log rate limit hits into WARNING instead of INFO. 2018-12-27 08:25:51 -05:00
b79a53cae4 Fix typo in exception message in Guild.edit 2018-12-17 22:33:07 -05:00
648e62031d Add support for explicit_content_filter in Guild.edit 2018-12-17 18:04:32 -05:00
26bb6c6ddc Fix some lingering attribute setting issues. 2018-12-14 21:59:31 -05:00
c7396dc8ac Add support for mobile indicators and per-client statuses. 2018-12-14 20:57:21 -05:00
93d576a65b Add support for spoiler attachments. 2018-12-14 19:09:25 -05:00
dd884a6afe Update Message.mention_everyone docs to include @here 2018-12-14 19:05:34 -05:00
2c7c541f4e Added User.mutual_friends() 2018-12-14 19:05:33 -05:00
bda690c32f [commands] Remove message being required from Role/Member converters.
This allows for easier "mock" context objects, for those who use
converters as utility functions outside of commands, and it's more
straightforward with the rest of the file.
2018-12-14 18:59:47 -05:00
f45aef7c2e Handle implicit perms in discord.VoiceChannel.permissions_for
This adds some implicit permission handling for `discord.VoiceChannel.permissions_for`

This is not documented behavior in discord's developer documentation, but it can easily be verified as correct.
2018-12-14 18:59:46 -05:00
068d953b42 Add override to close() method to the websocket subclass.
This makes it so that _keep_alive is stopped no matter which closing
method is called
2018-12-14 18:59:28 -05:00
dd41dac680 Fix AttributeError in webhook.send 2018-11-29 05:23:15 -05:00
e6a8eb1a7c Fix bug in Guild.splash_url 2018-11-26 02:04:01 -05:00
1f2602d11e Support discordapp.com invite URLs. 2018-11-25 04:54:12 -05:00
8b18fa307b Add support for default notification level in audit logs and Guild.edit 2018-11-25 01:42:33 -05:00
c30b016bb5 Support webp in _get_mime_type_for_image
untested
2018-11-24 23:18:11 -05:00
1ac432d9f0 Add Guild.default_notifications 2018-11-24 23:05:26 -05:00
Xua
016963500b [commands] Add support for IDs in the role related checks.
This affects:

* commands.has_role
* commands.has_any_role
* commands.bot_has_role
* commands.bot_has_any_role
2018-11-24 23:02:47 -05:00
5a585ebf20 Add channel category cooldown bucket type 2018-11-24 22:51:18 -05:00
24c0946a93 bot.unload_extension: also allow events with no module
It turns out that events created in an eval command also cause
the issue described in #1506.

Ensure that events we remove are part of a module as well.

Also performs minor comment maintenance
("x", "first y", "then z") -> ("x", "y", "z")
2018-11-24 22:51:16 -05:00
c3f99682de Trim whitespace in artist names in Spotify.artists
Basically Discord retrieves the data like
`artist1; artist2; artist3` and when you split only by `;` the results
will be: `[artist1, " artist2", " artist3"]`
2018-11-24 22:39:06 -05:00
a105f8b8cc Webhooks: add support for multi-file upload
`Webhook.send()` now accepts a `files` kwarg holding a list of `File`
objects, which are included in the HTTP request as `file1`, `file2` and
so on.

This is an undocumented feature of the Discord API, but is analogous
with the client's sending of messages with multiple files.
2018-11-24 22:38:50 -05:00
7fe4c999fb Actually drop copy.copy in Member
Remove the old and slow Member._copy implementation that was left over
by accident in 095f0ec.  Since it was defined later it overrode the new
implementation and rendered it moot.
2018-11-24 22:38:49 -05:00
e89e7dfe93 Add support for multiple activities 2018-11-24 22:36:52 -05:00
c184b0a53d add support for Bug Hunter and Early Supporter flags 2018-11-24 22:34:22 -05:00
1c3a5831f9 [lint] Removed unused variable handler
Left over by the removal of handlers in 2721689.
2018-11-24 22:17:58 -05:00
0e7b378151 [lint] Remove extra whitespace in guild.py
Remove trailing whitespace in guild.py introduced by 3727ea9.
2018-11-24 22:17:58 -05:00
df144b0959 [lint] Changed missed docstrings to raw-string
Missed by a4d1599 despite being pointed out in #1570.
2018-11-24 22:17:58 -05:00
efb4ff850e [lint] Fix import order
Reorder imports to be consistenly grouped by standard library, third
party library, and local modules in that order thoughout the library.
2018-11-24 22:17:58 -05:00
ed6451b9da [commands] Remove duplicated quote entries
Remove two duplicated entries from the quote mapping in commands.view.
These were introduced at the creation of this mapping in ea061ef.
2018-11-24 22:17:58 -05:00
34fd266cf9 [lint] Do log formating lazily
Convert log("fmt" % args) to log("fmt", args) as the latter is lazy and
does not do the formating if the string is never logged.
2018-11-24 22:17:58 -05:00
a0634b3eea [lint] Simplyfy util.valid_icon_size
Remove redundant paranthesis and checks from util.valid_icon_size.
2018-11-24 22:17:58 -05:00
51d626eabe [lint] Remove redundant paranthesis
Remove redundant parenthisis around await expressions.  Left over from
f25091ef.
2018-11-24 22:17:58 -05:00
633192b3cd [lint] Replace equality comparisons to singletons
Restrict the values accepted by comparisons with booleans to be actual
booleans.

Minor breaking of undocumented behaviour in permissions; the value to
set bits to must be booleans (as indicated by the type error thrown).
2018-11-24 22:17:57 -05:00
fa46b07db1 [lint] Rename exception variables to exc
Use the more explicit (and common) exc instead of e as the variable
holding the exception in except handlers.
2018-11-24 22:17:57 -05:00
4ae8e81660 [lint] Remove redundant exception variables
Use bare raise statement when reraising the exception that occured, and
remove unused exception variables.  Also remove a pointless exception
handler in discord.opus.
2018-11-24 22:17:57 -05:00
a71b3b5fa0 [lint] Limit unneccessarily broad except clauses
Add exception qualifier(s) to bare except clauses swallowing exceptions.
2018-11-24 22:17:57 -05:00
860d6a9ace Revert "Rework documentation to not duplicate inherited members."
This reverts commit 96981210b3.
2018-10-11 03:42:01 -04:00