Rapptz
987e27dfce
Revert all Guild.chunk changes
...
This method should *not* return a list of members due to the way it is
used internally.
2022-03-07 22:14:38 -05:00
Rapptz
e6a87e0782
Add support for adding app commands locally to many guilds
...
This affects the context_menu and command decorators as well. Removing
and syncing do not support multiple guild IDs.
2022-03-07 21:52:58 -05:00
Rapptz
8213603822
Change default oauth_url scopes to include application.commands
2022-03-07 18:35:42 -05:00
Rapptz
ba2763a4a1
Add private hook for changing the API version
...
This is mainly a temporary, undocumented, stop gap for bots that are
screwed over from waiting for Discord to grant them the message content
intent.
2022-03-07 18:23:12 -05:00
Rapptz
fc4e5d6237
Fix type checker error in discord.__main__
2022-03-07 18:10:40 -05:00
Rapptz
ac0e4fabb8
Fix type checker error in Guild.chunk
2022-03-07 18:09:23 -05:00
Rapptz
4b2c2b231d
Fix type checker errors in Connectable and Messageable
2022-03-07 18:05:43 -05:00
Rapptz
1f8687505f
Fix InteractionResponse.edit_message not working with modal submits
2022-03-07 17:53:01 -05:00
Rapptz
e8506f39b3
Add discord.app_commands to Pyright configuration
...
This also updates the type ignore settings.
2022-03-07 17:51:48 -05:00
Rapptz
0330282c5f
Create a default TCPConnector with no limit
...
The default implementation only allows for 100 concurrent connections
and during heavy sharding (>=100 shards) this can end up freezing
shards.
2022-03-07 01:19:37 -05:00
Rapptz
625c416f18
[commands] Fix command parameter handling in HelpCommand
2022-03-06 01:39:43 -05:00
Rapptz
fa901afa3a
Add replied_user key when no allowed_mentions is passed in
2022-03-05 23:39:06 -05:00
Rapptz
c9fc11b0a5
Document inherited members in ui.Modal
2022-03-05 23:17:37 -05:00
Rapptz
06291d860c
Change enum members in Locale to be snake_case
...
Not even sure how this slipped through.
2022-03-05 23:17:37 -05:00
Rapptz
82464419ce
Fix black reformatting on guild file
...
Black seems to not properly run on 2nd commits on PRs so this slid
through.
2022-03-05 22:14:58 -05:00
Rapptz
13e102b6b9
Add default parameter to CommandTree.sync
...
I'm not sure how I feel about this, since explicitly passing
guild=None seems better.
2022-03-05 22:02:33 -05:00
Rapptz
7ac4f3007b
Fix missing type imports in context menu verification
2022-03-05 21:43:14 -05:00
Rapptz
4c8b1f9abd
Remove unused imports
2022-03-05 21:40:42 -05:00
Rapptz
5c9605fc1b
Fix Message context menus not working
2022-03-05 21:15:49 -05:00
Rapptz
37d55c8ec4
Add TextInput.__str__ special method
...
Closes #7504
2022-03-05 21:05:46 -05:00
Rapptz
f7315573aa
Remove generic from Interaction and ConnectionState
...
This results in poor ergonomics due to the lack of default generics
for the common case. For most users this ends up in a degraded
experience since the type will resolve to Unknown rather than at the
very least a Client.
2022-03-05 05:03:23 -05:00
Rapptz
aa74238053
Reorganise documentation for interactions
2022-03-04 21:17:27 -05:00
Rapptz
41f2792ed9
Change Interaction.user to not be Optional
...
This has potential to be a breaking change and Discord could definitely
royally screw this over in the future. However, as far as I can tell
every interaction has either a User or a Member so this change should
be kosher. I'm unaware of any interaction, even in the future, where
this is not true.
I hope these are not my famous last words.
2022-03-02 02:11:04 -05:00
Rapptz
45dc3d3df9
Rename start_embedded_activities to use_embedded_activities
2022-03-02 01:51:47 -05:00
Rapptz
f80f81c395
Add Member.resolved_permissions attribute for interaction members
2022-03-02 01:39:39 -05:00
Rapptz
f435d160dd
Add Interaction.client property
2022-03-01 08:11:22 -05:00
Rapptz
6110fe5b1c
Add fallback overloads for CommandTree
2022-03-01 07:54:14 -05:00
Rapptz
50ef8e8893
Fix NameError when checking for File instances
2022-03-01 07:21:16 -05:00
Rapptz
d44328d3ea
Remove region from Guild.__slots__
...
This also fixes up some docstrings
2022-03-01 05:54:26 -05:00
Rapptz
bb5ed4947d
Add regression test for optional normalisation
...
Also runs black on the tests file
2022-03-01 05:54:26 -05:00
Rapptz
26fc694189
Fix Optional normalisation not working properly
2022-03-01 05:42:44 -05:00
Rapptz
ae1aaac5a7
Add support for autocomplete
2022-03-01 05:42:44 -05:00
Rapptz
4e04dbdec7
Add support for choice option parameters
...
This implements it in three different ways:
* The first is using typing.Literal for quick and easy ones
* The second is using enum.Enum for slightly more complex ones
* The last is using a Choice type hint with a decorator to pass
a list of choices.
This should hopefully cover most use cases.
2022-03-01 05:42:44 -05:00
Rapptz
e5e5b61ad0
Add support for range validation in options
2022-03-01 05:42:44 -05:00
Rapptz
3cf3065c02
Add support for annotation transformers
...
This facilitates the "converter-like" API of the app_commands
submodule. As a consequence of this refactor, more types are supported
like channels and attachment.
2022-03-01 05:42:44 -05:00
Rapptz
c10ed93cef
Add support for error handlers
2022-03-01 05:42:44 -05:00
Rapptz
cdb7b3728e
Fix potential conflicts in snowflake keys
...
This can happen on really old channels with the same ID as the guild ID
and having a command with both a role and a channel.
2022-03-01 05:42:44 -05:00
Rapptz
dffd72da58
Add support for context menu commands
2022-03-01 05:42:44 -05:00
Rapptz
0d2db90028
Implement slash commands
2022-03-01 05:35:29 -05:00
Rapptz
3d0c506124
Fix test_resolve_invite due to changed type
2022-03-01 01:07:13 -05:00
Rapptz
8226f0df2c
[commands] Require number of parameters at instantiation time
...
This allows it to bypass annotation evaluation for arguments that don't
matter like self and context.
2022-02-25 10:55:45 -05:00
Rapptz
0b5c3cf256
[types] Fix types for channels and interactions
2022-02-25 10:44:53 -05:00
Rapptz
e13997f35e
Remove region parameters from HTTPClient
2022-02-25 10:44:37 -05:00
Rapptz
29c26bc0a6
[types] Fix application command choice typings
2022-02-23 17:38:52 -05:00
Rapptz
0ed745f5ae
Remove regular context manager support from Typing
2022-02-23 16:05:08 -05:00
Rapptz
c7df838a39
Remove AuditLogDiff.region references
2022-02-23 10:14:36 -05:00
Rapptz
0eb2f32399
Remove VoiceRegion enum and Guild.region attribute
...
This has been marked deprecated by Discord and it was more or less
usually out of date due to the pace they added them anyway.
2022-02-23 10:03:13 -05:00
Rapptz
cc21872072
Add Locale enum
2022-02-23 08:41:50 -05:00
Rapptz
550bdda51b
Temporarily disable artefact uploading
2022-02-22 06:54:20 -05:00
Rapptz
8d52ddaff6
Fix remaining type errors in main package
...
This doesn't fix the type errors in the ext packages though.
2022-02-22 04:19:46 -05:00
Rapptz
3e90664cf9
Fix signature for VoiceClient
2022-02-22 04:09:48 -05:00
Rapptz
30e7a2e937
Fix a few more type errors
2022-02-21 23:31:18 -05:00
Rapptz
d01e73fca5
Document more uses of type ignore
2022-02-21 23:08:26 -05:00
Rapptz
51b79411e3
Fix and document type ignores in client
2022-02-21 22:52:24 -05:00
Rapptz
6c2ea4f0a0
Fix some type ignores in backoff and channel
2022-02-21 22:43:19 -05:00
Rapptz
c7c6d74d8d
Fix type errors in the abc module
2022-02-21 22:38:36 -05:00
Rapptz
24b729ed0d
Fix up some type ignores in state.py
2022-02-21 22:28:32 -05:00
Rapptz
5589934a59
Fix NameError in utils.get
2022-02-20 11:22:40 -05:00
Rapptz
c406951532
Fix typing errors in Guild.audit_logs
2022-02-20 11:21:07 -05:00
Rapptz
f2600995e8
Fix NameError due to missing import
2022-02-20 11:04:50 -05:00
Rapptz
e56f64218a
Rename default_value to default for TextInput
2022-02-20 11:04:50 -05:00
Rapptz
4f85494c11
Fix Sequence inheritance in 3.8
2022-02-20 08:54:15 -05:00
Rapptz
fbb8a35de6
Relocate and fix versionchanged in find and get
2022-02-20 08:46:20 -05:00
Rapptz
a1e64dd657
Fix Sphinx build failing
...
TextInput was missing in `__all__`.
2022-02-20 08:31:16 -05:00
Rapptz
88b520b5ab
Reformat code using black
...
Segments where readability was hampered were fixed by appropriate
format skipping directives. New code should hopefully be black
compatible. The moment they remove the -S option is probably the moment
I stop using black though.
2022-02-20 08:04:58 -05:00
Rapptz
af8e74d327
Allow deferring modal_submit interactions
...
This also adds a thinking boolean to toggle which type of deferring
is done when there can be ambiguity.
2022-02-20 05:23:09 -05:00
Rapptz
015072b7fd
Remove wrong import
2022-02-19 22:36:34 -05:00
Rapptz
e14153ddcb
Fix nonce being sent even when not specified
2022-02-18 23:15:46 -05:00
Rapptz
cfdccbd5ff
Add support for AppInfo.flags
2022-02-18 09:00:09 -05:00
Rapptz
92d1b4cd2b
Refactor interaction response handling to support files
...
This adds support for file sending and allowed_mentions
2022-02-18 08:10:38 -05:00
Rapptz
770a5fee9c
Remove PartialMessage.edit duplicated code
...
Now that Message.edit returns the message this duplication is no longer
needed.
2022-02-18 07:48:43 -05:00
Rapptz
9c066a8cf6
Refactor internal message sending and editing parameter passing
...
This reduces some repetition in many functions and is ripped out of
the webhook code. This also removes the unused HTTP functions for
interaction responses since those belong in the webhook code rather
than the HTTPClient.
2022-02-18 07:47:59 -05:00
Rapptz
2c89202214
Fix some minor typing issues
2022-02-17 09:38:12 -05:00
Rapptz
3113036a54
Fix typing for utils.as_chunks
2022-02-17 09:37:58 -05:00
Rapptz
b389596f26
Fix typing of User._accent_colour
2022-02-17 09:20:08 -05:00
Rapptz
c22f058fa0
Fix views not being removed upon timeout
2022-02-17 07:35:12 -05:00
Rapptz
4fa2a6e63e
Fix memory leak in webhooks not deallocating locks
2022-02-17 07:29:06 -05:00
Rapptz
940bdb988a
Revert "Move global user storage from WeakValueDictionary to dict"
...
This reverts commit cb2363f0fd .
This lead to memory leaks due to insufficient tracking, assuming that
the members intent was enabled.
2022-02-17 07:26:10 -05:00
Rapptz
8b96822ca1
Add pyproject.toml
2022-02-17 06:58:05 -05:00
Rapptz
8e896100d5
Remove old README link
2022-02-17 06:29:44 -05:00
Rapptz
45d498c1b7
Fix README link
2021-08-27 20:59:11 -04:00
Rapptz
7b87d2dec0
Add gist to README
2021-08-27 20:55:36 -04:00
Rapptz
29b808d33f
Change avatar_url type hint to Any instead of str
2021-08-27 05:41:00 -04:00
Rapptz
dd7d4b8e7f
Use a thread values view when constructing TextChannel.threads
...
Avoids an accidental O(n^2) situation.
2021-08-25 20:42:21 -04:00
Rapptz
2d8f299b6b
Use MISSING instead of None for HelpCommand.context
...
It's basically just late-init
2021-08-25 09:53:55 -04:00
Rapptz
3382d2e9e8
Update documentation on select limits
2021-08-25 09:21:49 -04:00
Rapptz
539577a2dd
Bring back ParamSpec in utils
2021-08-25 05:30:41 -04:00
Rapptz
4f8e67998a
Fix copy_doc typing to not error due to overloaded ParamSpec
2021-08-25 03:41:24 -04:00
Rapptz
848d752388
Change User.avatar to be Optional[Asset] instead of Asset
...
This change was needed to allow users to more easily check if an
uploaded avatar was set using `if user.avatar:` rather than the
admittedly clunky `if user.avatar != user.default_avatar.
The old behaviour with a fallback is still useful for actual display
purposes, so it has been moved over to the new `User.display_avatar`
attribute. This also has symmetry with the newly added
`Member.display_avatar` attribute.
2021-08-25 01:43:09 -04:00
Rapptz
78598d59d7
Change on_socket_raw_receive to dispatch right before JSON conversion
2021-08-25 01:26:37 -04:00
Rapptz
ef79305961
Exclude private functions from VoiceClient
2021-08-24 22:49:46 -04:00
Rapptz
9a61a5a063
Typehint Colour.__init__ parameter
2021-08-24 03:15:28 -04:00
Rapptz
565b41b0b2
Fix Embed.from_dict typing being too strict for a public function
...
The Embed TypedDict is not publicly accessible so would always lead
to type errors upon usage.
2021-08-24 03:15:06 -04:00
Rapptz
769db38401
Fix typing error in sticker edit
2021-08-23 23:52:45 -04:00
Rapptz
c82739a3be
Fix some typings in HTTPClient to not take strict payload types
2021-08-23 23:52:16 -04:00
Rapptz
8306b9f6af
Add type hint for suppress parameter
2021-08-23 23:51:40 -04:00
Rapptz
490bbffc93
Remove in-place edits and return fresh instances instead
...
Fixes #4098
2021-08-23 23:46:50 -04:00
Rapptz
9d4fa0341e
Fix typing of move role position payload parameter
2021-08-23 23:44:20 -04:00
Rapptz
cff9ca0288
Fix typings for member HTTP methods
2021-08-23 23:44:20 -04:00
Rapptz
9dd86bbcb3
Add type hints to AsyncWebhookAdapter methods
2021-08-23 23:44:20 -04:00