1333 Commits

Author SHA1 Message Date
bmintz
ec3435b224 Remove remaining asyncio.coroutine calls.
Also remove Client.async_event
2018-07-05 03:45:58 -04:00
khazhyk
9d301f7cae Store guild, unavailable tuple in ready as well
This should fix userbots.

Fixes: 74380cd ("don't drop guild_available/join before ready")
2018-06-30 23:26:33 -07:00
Rapptz
983be10111 Fix __aiter__ compatibility with 3.7. 2018-06-29 21:51:25 -04:00
Rapptz
1538c78836 Change jump_to_url to jump_url and fix format.
People kept asking, might as well.
2018-06-29 21:50:38 -04:00
khazhyk
74380cd72a don't drop guild_available/join before ready
large guilds that recieved GUILD_CREATE events prior to READY would
never dispatch guild_available/join. This is inconsistent with
smaller guilds and makes these events unreliable. Dispatch the
"delayed" guilds after they've been chunked, prior to ready.
2018-06-29 21:48:31 -04:00
Hornwitser
a93c3d931c [commands] Change command_prefix behaviour
Change the behaviour of handling iterable command_prefix types to not
silently ignore falsy prefixes and unify behaviour for all iterable
types.  Add special handling of a possible TypeError in both get_prefix
and get_context for when the prefix is a different type from what is
expected.
2018-06-29 21:48:30 -04:00
Hornwitser
96baabcaa2 Fix typo in Permissions.is_subset/is_superset
Fix the name for the other's type when raising TypeError being
incorrectly written as __class__name instead of __class__.__name__ in
the is_subset and is_superset methods of the Permissions class.  This
was introduced at the creation of these methods in 21c88cf.
2018-06-21 07:44:00 -04:00
Harmon
bf9ca405e3 Fix case insensitive command removal 2018-06-21 07:44:00 -04:00
Rapptz
607771c4f4 Fix Bot.get_prefix second parameter breaking. 2018-06-10 18:41:36 -04:00
Rapptz
5ae9ea26b1 Disable compression for websockets.
Increase of RAM and CPU doesn't give me much benefit I feel.
2018-06-10 18:37:51 -04:00
Rapptz
e51f92e78d Fix NameError for typing context manager.
Fixes #1342
2018-06-10 18:30:32 -04:00
Rapptz
c67d95327e Remove dead package references. 2018-06-10 18:16:40 -04:00
Rapptz
f25091efe1 Drop support for Python 3.4 and make minimum version 3.5.2. 2018-06-10 18:10:00 -04:00
Rapptz
7eb918b19e Add Message.jump_to_url 2018-06-10 15:25:17 -04:00
Rapptz
6b75179c1f Remove emojis from cache if they're removed from a guild. 2018-05-19 17:07:45 -04:00
Steve C
0e945915b7 Fixes various documentation errors/inconsistencies
Mostly dealing with permissions, also fixes Raw Events inclusion.
2018-05-18 20:25:54 -04:00
Rapptz
0dafdedc65 abc.GuildChannel.set_permissions can raise NotFound.
Fix #1254
2018-05-18 20:17:49 -04:00
Rapptz
07a535f514 Document user parameter in Guild.get_ban 2018-05-08 22:03:30 -04:00
slice
9fe7776a33
Add support for getting individual ban entries 2018-05-07 16:42:04 -07:00
Rapptz
60f0b22cbb Filter null mentions when creating a Message. 2018-04-20 00:32:23 -04:00
Rapptz
56650ae7c2 Change raw events to use slotted data models instead of parameters.
This allows for internal changes in Discord to not cause a breaking
change every time something changes.

Also implements #1214 which adds guild_id to every event where
applicable.

This is a breaking change.
2018-04-14 02:23:38 -04:00
Rapptz
3cb6ac152e Userbots do not have a DM cache cap limit. 2018-04-02 00:42:14 -04:00
Rapptz
95de4d1df1 Actually fix the order in Guild.by_category. 2018-03-31 23:16:53 -04:00
Rapptz
87a7efc410 Flip comparison in Guild.by_category. 2018-03-31 22:55:42 -04:00
Mitchell Ferree
2e4e392b25 Correct docstring for Game 2018-03-25 04:11:54 -04:00
Rapptz
796ff6d7e6 Sort voice channels below text channels in Guild.by_category 2018-03-25 04:00:47 -04:00
Rapptz
f176309179 [commands] Don't handle single quotes. 2018-03-20 03:25:40 -04:00
Rapptz
eb5defed00 Fix Webhook.guild raising an AttributeError.
Fixes #1148
2018-03-16 17:59:50 -04:00
Myst(MysterialPy)
8ba78168a6 Add Spotify intergration colour
Added property `colour` and alias `color` which returns the Spotify
integration colour (#1db954).

Technically Discord uses both (#1cb050 and #1db954) but it appears the
former is an official Spotify colour.
2018-03-09 15:46:42 -05:00
Myst(MysterialPy)
31cc4c39de
Fix _image_url returning htps
Should be https :)

Just made this a separate PR from my previous one, in-case you decide to not include it.
2018-03-07 23:32:20 +10:00
Rapptz
e9916e2844 Convert Client.activity back to an Activity-like object 2018-03-06 18:13:17 -05:00
Rapptz
61c8e35929 Missing import for _ActivityTag inside Client 2018-03-06 09:10:13 -05:00
Harmon
21bea43d22
Fix session_id in Spotify.to_dict 2018-03-06 04:55:33 -06:00
Rapptz
d8a85f4898 [commands] Minor optimisations to unicode quote handling. 2018-03-06 01:16:00 -05:00
b-hodges
ea061ef9b2 [commands] Added handling for unicode quotes 2018-03-06 01:11:36 -05:00
Rapptz
871a262ee3 [commands] Add ability to have case insensitive commands.
This is powered by a dict-like class for the people who want to opt-in
to the performance downgrade for usability for majority English
speaking users.

Since it is slower than the regular dict due to the excessive calls to
str.lower along with the possibilities of gotchas for other languages
outside of English, this is kept as False for the default case.
2018-03-06 00:37:12 -05:00
Rapptz
1590441dbf Fix typo in TextChannel.delete_messages documentation. 2018-03-06 00:19:58 -05:00
Rapptz
a425bd91be Fix invalid close errors on websockets 4.x
Fixes #1110
2018-03-06 00:15:36 -05:00
Rapptz
0fcd385b9a Add ability to change the activity used when logging in at runtime. 2018-03-05 11:23:07 -05:00
Rapptz
f8f8f418f3 Split Game object to separate Activity subtypes for Rich Presences.
This is a massive breaking change.

* All references to "game" have been renamed to "activity"
* Activity objects contain a majority of the rich presence information
* Game and Streaming are subtypes for memory optimisation purposes for
  the more common cases.
* Introduce a more specialised read-only type, Spotify, for the
  official Spotify integration to make it easier to use.
2018-03-05 11:15:49 -05:00
Jared Shields
2f562bd695
Update docstrings for channel.py
`delete_messages` requires `manage_messages`; the docs in here, nor on RTD reflect this. 
Small amendment at line 180, adding three additional.
2018-02-26 22:04:49 -08:00
Rapptz
6782fdd34d Add missing coroutine decorator to HTTPClient.get_attachment
Fixes #1104
2018-02-26 18:55:05 -05:00
Rapptz
1c215cfbbe Don't cache webhook users.
Fixes #1101
2018-02-24 17:37:37 -05:00
Rapptz
355eb08b25 Add seek_begin keyword argument to Attachment.save 2018-02-13 05:41:10 -05:00
BeatButton
9d3d8e0f0a Fix websockets 4.0 support 2018-02-12 00:20:18 -05:00
Eli
ad7506050c [commands] Allow builtin unbound method converters 2018-02-10 22:07:44 -08:00
Daniel
d53c3a6c12
Fixed opus error check
Fixes #1056
2018-02-06 11:19:42 -05:00
Daniel
881e598a6f Add errcheck functions to opus foreign functions 2018-01-31 18:58:27 -05:00
Daniel
5a59eae95b Update opus and add COPYING notice 2018-01-26 12:46:19 -05:00
Rapptz
8de382fcd3 Change logic in PartialEmoji.__str__ a little. 2018-01-06 17:35:03 -05:00