Rapptz
2e06239d3c
Add documentation for gateway intents
2020-09-23 03:21:22 -04:00
Rapptz
9dd4dc78c3
Mention potential Guild.member_count accuracy issues
2020-09-23 03:21:22 -04:00
Muhammad Hamza
11aaa03ec2
Fix presence intent docstring
2020-09-23 03:21:21 -04:00
Rapptz
213f55ffc7
Disable voice cache in weird intent configurations.
2020-09-23 03:21:21 -04:00
Rapptz
e644a5a060
Fix up wording in MemberCacheFlags exception
2020-09-23 03:21:21 -04:00
Rapptz
625a5c2a0b
Some documentation fixes for MemberCacheFlags and Intents
2020-09-23 03:21:21 -04:00
Rapptz
8d5c05ed20
Default MemberCacheFlags based on intents
2020-09-23 03:21:21 -04:00
Rapptz
bf8ca58996
Add a special exception for required privileged intents
2020-09-23 03:21:20 -04:00
Rapptz
4d813da9e1
Pass default intents if not explicitly given
2020-09-23 03:21:20 -04:00
Rapptz
f2de794bde
Intern status and overwrite strings
2020-09-23 03:21:20 -04:00
Rapptz
23ae084b8c
Allow finer grained control over the member cache.
2020-09-23 03:21:20 -04:00
Rapptz
e6edc44f3d
Raise if member intent is not enabled
2020-09-23 03:21:19 -04:00
Rapptz
ad917ca02d
Don't cache members during guild start up if cache is disabled.
...
This is mainly a half-implemented commit. There are a few more places
where cache consistency is necessary. In the future there will
probably be a member cache policy enum that will be used and cache
consistency will be tackled in part of that larger refactoring.
2020-09-23 03:21:19 -04:00
Rapptz
cb8cb557f5
Add Guild.chunk and deprecated Client.request_offline_members
2020-09-23 03:21:19 -04:00
Rapptz
055fe76241
Fix Client.request_offline_members no longer working
2020-09-23 03:21:19 -04:00
Rapptz
e10942a9ee
Add versionadded for intents enum
2020-09-23 03:21:19 -04:00
Rapptz
bec34c1110
Explicitly disable the members presence by default
2020-09-23 03:21:18 -04:00
Rapptz
0ea0f483bc
Fix timeouts due to hitting the gateway rate limit
2020-09-23 03:21:18 -04:00
Rapptz
7db0008190
Maximize the amount of concurrency while chunking.
...
In order to reduce our amount of backpressure we need to limit the
amount of concurrent chunk requests we can have so the gateway buffer
has some time to breathe.
2020-09-23 03:21:18 -04:00
Rapptz
6bae52f4bb
Check for zombie connections through last received payload
...
The previous code would check zombie connections depending on whether
HEARTBEAT_ACK was received. Unfortunately when there's exceeding
backpressure the connection can terminate since the HEARTBEAT_ACK is
buffered very far away despite it being there, just not received yet.
2020-09-23 03:21:18 -04:00
Rapptz
0ec72660cf
Speed up chunking for guilds with presence intent enabled
2020-09-23 03:21:18 -04:00
Rapptz
92e1816114
Maximize concurrency when chunking on AutoSharded clients
2020-09-23 03:21:17 -04:00
Rapptz
af8fc32329
Use a lock for the gateway rate limiter.
...
This will allow for higher concurrency in AutoSharded situations where
I can mostly "fire and forget" the chunk requests.
2020-09-23 03:21:17 -04:00
Rapptz
5fe998ac19
Heartbeats bypass the rate limits for gateway
2020-09-23 03:21:17 -04:00
Rapptz
3df269daa3
All guilds require chunking if opting into it
2020-09-23 03:21:17 -04:00
Rapptz
c261f7c4a3
Handle user updates within GUILD_MEMBER_UPDATE
2020-09-23 03:21:16 -04:00
Rapptz
930761e058
Rewrite chunking to work with intents.
...
This slows down chunking significantly for bots in a large number of
guilds since it goes down from 75 guilds/request to 1 guild/request.
However the logic was rewritten to fire the chunking request
immediately after receiving the GUILD_CREATE rather than waiting for
all the guilds in the ready stream before doing it.
2020-09-23 03:21:16 -04:00
Rapptz
ec7b8edcc2
Add more close codes that can't be handled for reconnecting.
2020-09-23 03:21:16 -04:00
Rapptz
11d8a6fa3c
Change unknown cache log warnings from WARNING -> DEBUG
2020-09-23 03:21:15 -04:00
Rapptz
e7db9cfdf7
Handle gateway rate limits by using a rate limiter.
...
With the new chunking changes this will become necessary and we don't
want to disconnect from having too many outwards requests.
2020-09-23 03:21:15 -04:00
Rapptz
a6381dcf77
Add support for guild intents
2020-09-23 03:21:15 -04:00
Rapptz
9036b9651b
Properly handle disconnects in voice when force disconnected
2020-09-23 03:20:35 -04:00
Josh
9830e0ed8a
Fix issues with VoiceProtocol docstrsings.
2020-09-23 03:20:35 -04:00
Rapptz
e3922e24d9
Correct some protocol errors in v4 of voice gateway
2020-09-23 03:20:35 -04:00
Rapptz
0b93fa3a82
Implement VoiceProtocol lower level hooks.
...
This allows changing the connect flow and taking control of it without
relying on internal events or tricks.
2020-09-23 03:20:35 -04:00
Michael
93fa46713a
Fix and add documentation
2020-09-23 03:19:35 -04:00
Sebastian Law
37c5c583f2
Add support for message_reference on Message object
2020-09-23 02:29:03 -04:00
Rapptz
ab5e175b25
Use quotes when installing in the README
...
Other shells have a hard time with square brackets.
Closes #5821
2020-09-21 03:39:19 -04:00
Tarek
7f17dc79a6
Remove namedtuples to better future guard the library
2020-09-21 03:36:58 -04:00
PikalaxALT
e7b4bbe2f6
Add bot.listen() suggestion to on_message faq
2020-09-20 00:15:10 -04:00
Xua
6ae615baae
Fix allowed_mentions when sending files
2020-09-20 00:14:00 -04:00
iDutchy
cc26499237
Add competing activity type
2020-09-20 00:05:18 -04:00
iomintz
8f105a441d
issue/PR templates: use h2 instead of h3
...
`h2` is the semantically correct heading here, as `h1` is for
document titles and `h2` is for the top level headings within
a document. `h3` should be used for subheadings of `h2` headings.
2020-09-18 07:40:27 -04:00
Rapptz
9978288346
Update issue template to redirect to discussions
2020-09-18 04:21:32 -04:00
Rapptz
aa258073dc
Add labels to the issue templates
2020-09-17 22:16:20 -04:00
Rapptz
a183c4f752
Completely update member references from message inner members.
...
Fixes #5819
2020-09-17 02:45:53 -04:00
Rapptz
986adae108
Revert "Add fetch_message_fast using history endpoint"
...
This reverts commit a309088ae4be7c2e837e5d180822c0f9060fe86d.
A rate limited was added to this method after 5 years defeating the
purpose of it.
2020-09-14 01:18:09 -04:00
Duck
ddc4ad24f4
Add missing permission in clone documentation
2020-09-11 04:55:26 -04:00
Rapptz
4ccd9c1591
Remove caching from AutoShardedClient.shards
2020-09-10 05:17:25 -04:00
Rapptz
ccdf4c4ad6
[tasks] Lazily fetch event loop if one isn't provided
...
Fixes #5808
2020-09-10 00:00:58 -04:00