Commit Graph

616 Commits

Author SHA1 Message Date
1957fa6011 Implement a least breaking approach to slash commands (#39)
* Most slash command support completed, needs some debugging (and reindent)

* Implement a ctx.send helper for slash commands

* Add group command support

* Add Option converter, fix default optional, fix help command

* Add client.setup and move readying commands to that

* Implement _FakeSlashMessage.from_interaction

* Rename normmal_command to message_command

* Add docs for added params

* Add slash_command_guilds to bot and decos

* Fix merge conflict

* Remove name from commands.Option, wasn't used

* Move slash command processing to BotBase.process_slash_commands

* Create slash_only.py

Basic example for slash commands

* Create slash_and_message.py

Basic example for mixed commands

* Fix slash_command and normal_command bools

* Add some basic error handling for registration

* Fixed converter upload errors

* Fix some logic and make an actual example

* Thanks Safety Jim

* docstrings, *args, and error changes

* Add proper literal support

* Add basic documentation on slash commands

* Fix non-slash command interactions

* Fix ctx.reply in slash command context

* Fix typing on Context.reply

* Fix multiple optional argument sorting

* Update ctx.message docs to mention error instead of warning

* Move slash command creation to BotBase

* Fix code style issues with Black

* Rearrange some stuff and add flag support

* Change some errors and fix interaction.channel fixing

* Fix slash command quoting for *args

Co-authored-by: iDutchy <42503862+iDutchy@users.noreply.github.com>
Co-authored-by: Lint Action <lint-action@samuelmeuli.com>
2021-09-19 01:28:11 +02:00
7513c2138f Fix code style issues with Black 2021-09-05 21:34:20 +00:00
13834d1147 Merge pull request #7
* Add try_user to get a user from cache or from the gateway.

* Extract populate_owners into a new coroutine.

* Add a try_owners coroutine to get a list of owners of the bot.

* Fix coding-style.

* Fix a bug where None would be returned in try_owners if the cache was…

* Fix docstring

* Add spacing in the code
2021-09-02 12:24:52 -07:00
6e41bd2219 Remove intents.default and make intents a required parameter 2021-08-31 20:53:54 +01:00
f485f1b612 Fix a typo in docstrings of Client class 2021-08-27 16:01:44 -04:00
932efa1edc Change a few parameters to be positional only
This makes parameters positional only in the methods 
fetch_sticker, fetch_webhook, fetch_channel, fetch_user, fetch_widget, 
fetch_stage_instance, fetch_guild, get_sticker, and get_channel.
2021-08-26 20:47:24 -04:00
2f2c39ed22 Add Client.status attribute 2021-08-26 15:50:21 -04:00
5ef37923de Make getters in Client positional only 2021-08-23 05:28:52 -04:00
9727b56503 Fix references in docs 2021-08-22 05:50:28 -04:00
ea2d972666 Make global log variable in modules private 2021-08-22 02:33:51 -04:00
f4d5fcc8f9 Add Thread to the return type of Client.get_channel
Also explains some type ignores.
2021-08-19 20:18:27 -04:00
6b6bcb92e6 Fix missing or broken versionadded in docstrings
This also documents BadFlagArgument.flag
2021-08-18 00:45:02 -04:00
08a4db3961 Revert "Refactor Client.run to use asyncio.run"
This reverts commit 6e6c8a7b28.
2021-08-11 02:16:22 -04:00
6e6c8a7b28 Refactor Client.run to use asyncio.run
This also adds asynchronous context manager support to allow for
idiomatic asyncio usage for the lower-level counterpart. At first
I wanted to remove Client.run but I figured that a lot of beginners
would have been confused or not enjoyed the verbosity of the newer
approach of using async-with.
2021-08-10 23:00:24 -04:00
1279510194 Add support for PartialMessageable instances
This allows library users to send messages to channels without fetching
it first.
2021-08-10 09:24:49 -04:00
4fca699810 Fill in ConnectionState.user via HTTPClient.static_login 2021-08-10 08:37:29 -04:00
1c63816cc0 [commands] Document / type-hint cooldown 2021-08-10 08:35:15 -04:00
b640493300 Add enable_debug_events parameter to enable expensive debug events
This should allow less dispatching during heavy gateway event streams.
2021-07-31 20:35:28 -04:00
6beef898c6 Rename instances of nitro to premium 2021-07-30 23:10:36 -04:00
60d82cf908 implement guild stickers 2021-07-30 21:25:41 -04:00
15eb3d2e5d Remove afk parameter from change_presence 2021-07-21 02:45:57 -04:00
750ba88f2c Fix typing errors with Client 2021-07-04 07:55:20 -04:00
d1dc41ec2f Fix Client.fetch_channel not returning Thread 2021-07-03 21:35:31 -04:00
7601d6cec3 [typing] Type-hint client.py 2021-06-29 20:02:19 -04:00
233d10649c [docs] Update Sphinx and Fix various references
Co-Authored-By: Riley Shaw <30989490+ShineyDev@users.noreply.github.com>
2021-06-27 23:43:49 -04:00
11e23c534a Close ClientSession after closing websocket connections 2021-06-10 07:32:05 -04:00
78275023cc Add Client.persistent_views to get all persistent views 2021-05-31 23:15:12 -04:00
7c40e83d10 Ensure views added to Client.add_view are persistent views 2021-05-31 23:08:08 -04:00
9f98a9a87f Implement StageInstance 2021-05-30 13:51:52 -04:00
732c5384fd Allow registering a View for persistent long term dispatching 2021-05-29 00:44:08 -04:00
71fe40aafa Consistent loop attribute description 2021-05-23 03:36:20 -04:00
757cfad38f Type up **kwargs of various methods 2021-05-10 20:24:48 -04:00
3864fb37a0 Fix various reference issues in documentation
Co-Authored-By: Riley Shaw <30989490+ShineyDev@users.noreply.github.com>
2021-05-06 07:51:07 -04:00
b82a0dc6fd [docs] remove mentions of bot only usability 2021-05-04 07:21:59 -04:00
b0ec22065e Add Client.create_dm 2021-05-01 13:16:57 -04:00
e762f55847 Add fetch_invite with with_expiration 2021-05-01 07:46:16 -04:00
56f4ae3a83 [docs] Update notes for get_user and get_member 2021-04-27 21:56:00 -04:00
631a0b1e13 Add support for ApplicationFlags 2021-04-18 20:32:52 -04:00
9f1a96ea9b Remove fetch_offline_members param for Client 2021-04-14 20:58:49 -04:00
dea92a69dc Remove support for guild subscriptions 2021-04-14 00:47:46 -04:00
d5ad269b35 Fix Intents resolution in the docs 2021-04-10 15:50:46 -04:00
1efdef3ac3 Add typings for invites, templates, and bans 2021-04-10 02:55:10 -04:00
eb5356cc47 Remove user token warning in login 2021-04-08 23:49:40 -04:00
99fc950510 Use f-strings in more places that were missed. 2021-04-08 06:02:47 -04:00
89456022cf Add __all__ to remaining modules 2021-04-07 02:30:32 -04:00
1e7f139313 Add support for setting application_id 2021-04-06 01:11:36 -04:00
686a54eb10 Remove 3.6 check for loop.shutdown_asyncgens() 2021-04-05 20:31:45 -04:00
7a7c4b4d62 Remove fail-safe for retrieving all tasks 2021-04-05 20:29:37 -04:00
88be8cc5be Remove deprecated client methods 2021-04-05 17:44:05 -04:00
ff7094ce96 Convert datetimes to aware datetimes with UTC.
Naive datetimes will now be interpreted as local time throughout
the library.
2021-04-04 23:54:08 -04:00