3581 Commits

Author SHA1 Message Date
Rapptz
74e1ab09a0 Remove channel type coercion in factory methods
This caused unnecessary isinstance checks which were slowing down
channel creation at scale
2021-07-07 20:19:17 -04:00
Rapptz
03cd6ff433 Remove calls to gc.collect in ConnectionState
For some bots this was actually a performance bottleneck, might as
well remove it if it causes bad performance
2021-07-07 20:19:17 -04:00
Rapptz
99b8ae35ba Change _Overwrite to get dict entries rather than mutate 2021-07-07 20:19:17 -04:00
Rapptz
cb2363f0fd Move global user storage from WeakValueDictionary to dict
Profiling showed that WeakValueDictionary caused rather significant
and noticeable slowdowns during startup. Since the only thing it was
used for was to automatically remove the key from the mapping when
the reference count reaches zero, the same could theoretically be
accomplished by using the __del__ special method. There is a chance
that this could lead to a memory leak since the __del__ method is not
always called, but the only instances of this happening are during
interpreter shutdown to my knowledge and at that point the mapping
is the least of my concern.
2021-07-07 20:19:17 -04:00
Rapptz
88d825a803 Allow use of orjson instead of json
The difference in speed seems negligible at start up, which is when
most time is taken for actually parsing JSON. I could potentially be
missing something but profiling didn't point to any discernable
difference.
2021-07-07 20:19:17 -04:00
Josh
e0a9365d61
Type-hint backoff.py 2021-07-07 20:17:17 -04:00
apple502j
717e723a36
Update intents docs to reflect presence update changes 2021-07-07 20:16:17 -04:00
z03h
1ca5b7b8b2
[commands] update clean_content to work when standalone 2021-07-07 20:15:54 -04:00
ToxicKidz
3cb539d91b
[commands] Document the thread converter 2021-07-07 20:15:18 -04:00
Alex Nørgaard
5a7cfb3ce6
[commands] Add ThreadConverter 2021-07-05 00:40:57 -04:00
Rapptz
c1c6457598 Separate member_update and presence_update events 2021-07-04 21:40:30 -04:00
Rapptz
c2acb0a114 Update README to point to 3.8 requirement 2021-07-04 21:26:27 -04:00
Rapptz
feb0f7f29d Add SelectOption.__str__ 2021-07-04 21:20:48 -04:00
Aaron Hennessey
7598865609
Fix typo in stage_instance.py 2021-07-04 19:14:33 -04:00
Josh
f40f80c0dc
Fix typo in voice_client.py 2021-07-04 19:14:07 -04:00
Rapptz
49f8073262 Fix Permission serialisation in audit logs
Fix #7171
2021-07-04 19:13:21 -04:00
Rapptz
750ba88f2c Fix typing errors with Client 2021-07-04 07:55:20 -04:00
Rapptz
074f34a5fa Specify View timeouts is in seconds 2021-07-04 07:07:38 -04:00
Rapptz
7d9074db8a Fix type errors and potentially unbound code in http.py 2021-07-04 06:18:34 -04:00
Rapptz
4152819a3c Ignore linting error when accessing Python 3.10 unions 2021-07-04 05:55:29 -04:00
Rapptz
5d798aa5e6 Fix some typing errors and reformat enums.py 2021-07-04 05:32:26 -04:00
Rapptz
828e47d83f Document on_thread_join also applying to thread creation 2021-07-04 04:55:12 -04:00
Rapptz
23a69144b6 Add a warning in on_interaction 2021-07-04 03:06:36 -04:00
Rapptz
d047cebc35 [commands] Remove window reassignment when tokens reach 0 2021-07-04 03:05:06 -04:00
Rapptz
c748e4bce5 Mention ephemeral messages can only be edited with raw method 2021-07-03 21:45:15 -04:00
Alex Nørgaard
d1dc41ec2f
Fix Client.fetch_channel not returning Thread 2021-07-03 21:35:31 -04:00
Rapptz
097b6064f1 Fix ui.Button constructor default style to match the decorator 2021-07-03 21:29:28 -04:00
Rapptz
17268c3368 Add MessageFlags.ephemeral 2021-07-03 21:29:28 -04:00
Alex Nørgaard
6a553b2347
Fix building docs due to missing InteractionMessage in __all__ 2021-07-03 13:24:57 -04:00
Rapptz
93cc1bdd79 Fix typing errors in PartialEmoji 2021-07-03 11:52:38 -04:00
Rapptz
8b4dd34328 Document TextChannel.start_thread return type 2021-07-03 11:52:20 -04:00
Rapptz
3d0dd5bc1b Change Message.__repr__ to show inherited type name 2021-07-03 11:02:32 -04:00
Rapptz
0b577fa209 Add support for fetching the original interaction response message 2021-07-03 11:00:48 -04:00
Rapptz
be5603141e Remove slots from flags
Fix #7159
2021-07-03 10:52:35 -04:00
Rapptz
bba4d6c4e4 Fix typo with exception name in InteractionResponse 2021-07-03 08:49:07 -04:00
Rapptz
9f981e718b Mention the discord.ui types in the read-only component types 2021-07-03 08:39:02 -04:00
Rapptz
88620d052a Typehint permissions 2021-07-03 08:30:27 -04:00
Rapptz
8760b01e76 Add Interaction.permissions to get resolved permissions 2021-07-03 07:07:54 -04:00
Rapptz
12e90f9c6d Type hint instance variables in interactions 2021-07-03 06:56:30 -04:00
Rapptz
a8db8546db Typehint error.py 2021-07-03 00:54:36 -04:00
Rapptz
0fae0b4995 Use "raised" instead of "thrown" for exception documentation 2021-07-03 00:35:21 -04:00
Rapptz
7ca90874b9 Raise an exception if an interaction has been responded before
Fix #7153
2021-07-03 00:30:32 -04:00
Alex Nørgaard
b7b75e2b1f
Add Thread.is_nsfw 2021-07-03 00:14:48 -04:00
Alex Nørgaard
ffa0b26b82
Fix versionadded on ChannelType.private_thread 2021-07-02 22:05:27 -04:00
jack1142
1059c02df7
Update examples of interactions to mention components 2021-07-02 21:58:06 -04:00
Rapptz
d7ed884593 Rework view timeouts to work as documented 2021-07-02 09:17:32 -04:00
Rapptz
a3d7e06f25 [commands] Add back CommandOnCooldown.type 2021-07-02 05:39:54 -04:00
Rapptz
982140b5f7 [commands] Mention that dynamic_cooldown callable can return None 2021-07-02 05:35:38 -04:00
Rapptz
69c400d813 Add Thread.mention 2021-07-01 20:51:56 -04:00
Rapptz
9ac459b5d3 Add a default style for buttons
This makes it easier to create URL buttons since the library will
automatically assign the proper style for it.
2021-07-01 20:45:38 -04:00