858 Commits
Author SHA1 Message Date
340f09a1c0 [commands] Update ScheduledEventConverter docs for clarity
Co-authored-by: Danny <Rapptz@users.noreply.github.com>
Co-authored-by: ashish  <68690233+asheeeshh@users.noreply.github.com>
2022-03-10 00:20:11 -05:00
Rapptz 446bfa78b0 [commands] Allow Cog and app_commands interopability
This changeset allows app commands defined inside Cog to work as
expected. Likewise, by deriving app_commands.Group and Cog you can
make the cog function as a top level command on Discord.
2022-03-09 20:26:54 -05:00
Devon RandGitHub 432de92e8a Update translations, add Crowdin CLI config 2022-03-09 20:07:48 -05:00
z03handGitHub 93fba264ad [commands] add ScheduledEvent converter 2022-03-09 17:56:50 -05:00
Aaron HennesseyandGitHub bf3eb0a7fe [commands] Fix for _Bot Context generic in converters 2022-03-09 17:55:55 -05:00
Lilly Rose BernerandGitHub b308b54b89 [tasks] Fix change_interval raising when called during execution 2022-03-07 17:35:42 -05:00
StockerandGitHub 13355f3712 Fix HelpCommand.invoked_with raising an error
This would happen if the context hasn't been set yet.
2022-03-06 23:02:01 -05:00
ChrovoandGitHub aa725f4a4a [docs] Fix typo in tasks docs 2022-03-06 19:03:36 -05:00
JoshandGitHub 9d3fa3d29b [commands] Simplify typing of command hooks 2022-03-06 03:44:20 -05:00
JoshandGitHub eaf94e84bc Fix unbound ParamSpec to use ... over Any 2022-03-06 01:44:48 -05:00
Rapptz 625c416f18 [commands] Fix command parameter handling in HelpCommand 2022-03-06 01:39:43 -05:00
Alex NørgaardandGitHub bfaee44b1f [commands] Fix types for Bot.is_owner 2022-03-05 22:06:21 -05:00
jack1142andGitHub 00b61e2148 Parameters->Attributes in NSFWChannelRequired's doc for consistency 2022-03-05 19:15:48 -05:00
Sebastian LawandGitHub 5439a67056 [tasks] Fix sleep handling behaviour depending on interval type
Relative time intervals can be thought of as:

  for _ in range(count):
    await body()
    await asyncio.sleep(interval)

While explicit time intervals should be thought of as:

  times = [1pm, 2pm, 3pm, 12am]
  current = 0
  for _ in range(count):
    time = times.wrapping_index(current)  # magic to wrap around
    await utils.sleep_until(time)
    await body()
    current += 1
2022-03-05 05:12:22 -05:00
JoshandGitHub 147948af9b Use typing.Self throughout library 2022-03-01 07:53:24 -05:00
Nihaal SanghaandGitHub 90cabd1673 Fix various typos 2022-02-27 21:19:19 -05:00
Sebastian LawandGitHub f1ac25809c [tasks] Fix behavior when task overruns interval
In a scenario with `tasks.loop(seconds=5)`:

The task takes 30 seconds to run on the first two iterations, and then
is nearly instant for iterations afterward. The behavior should be
that the task runs at:

t = 0  (on time)
t = 30 (late, should've been at t = 5)
t = 60 (late, should've been at t = 10)
t = 60 (late, should've been at t = 15)
t = 60 (late, should've been at t = 20)
t = 60 (late, should've been at t = 25)
... 6 more iterations
t = 60 (on time)
t = 65 (on time)

In a scenario with a loop with explicit times set at UTC 1pm, 2pm, 
3pm, 4pm, and 5pm:

- The task takes 6 hour to run on the first iteration, and then is
  nearly instant for iterations afterward. Assuming the task is started
  at noon, the behavior should be that the task runs at `t = 0` and
  then at `t = 3600` 4 times ("catching up" on the missed iterations
  at 2pm, 3pm, 4pm, and 5pm).

- The task takes 30 days to run on the first iteration, and then is
  nearly instant for iterations afterward. Assuming the task is started
  at noon, the behavior should be that the task runs at `t = 0` and
  then at `t = 43200` 149 times ("catching up" on the missed
  iterations for the past month).

This behavior should be documented in the ext.tasks docs
2022-02-26 01:48:27 -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
JoshandGitHub 39c5a4fdc3 Fix type-errors in commands extension 2022-02-23 08:04:49 -05:00
JoshandGitHub a315786869 Handle type-errors in upcoming pyright release 2022-02-22 08:51:11 -05:00
mniipandGitHub cd1dd7d670 [commands] Properly eject listeners with custom names 2022-02-21 21:42:00 -05:00
Sebastian LawandGitHub 19ad64adda [tasks] Fix initial loop execution running prematurely 2022-02-21 20:45:03 -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
JoshandGitHub 4dbe1af32f Update sphinx and fix documentation issues 2022-02-19 22:35:32 -05:00
jack1142andGitHub dc19c6c7d5 Add positional-only arguments in more places 2022-02-19 20:28:01 -05:00
VaskelandGitHub 4e331704ae [commands] Fix typing problems in commands.converter 2022-02-18 23:04:56 -05:00
JoshandGitHub 61974411df [commands] Fix issue in PartialMessageConverter._resolve channel 2022-02-18 23:00:52 -05:00
JoshandGitHub b1571ccc25 [commands] Fix Command.cog being reset after update 2022-02-18 08:31:45 -05:00
Nadir ChowdhuryandGitHub a2a7b0f076 [tasks] Improve typing parity 2021-08-27 17:18:15 -04:00
ShashankKumarSaxenaandGitHub b2ac327bd8 [commands] Fix a small typo in Context.invoke docs 2021-08-27 16:02:10 -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
JoshandGitHub 9727b56503 Fix references in docs 2021-08-22 05:50:28 -04:00
Rapptz ea2d972666 Make global log variable in modules private 2021-08-22 02:33:51 -04:00
JoshandGitHub 166152647c [commands] Make GroupMixin Generic 2021-08-21 14:35:05 -04:00
Rapptz 9246bbc8e3 [commands] De-indent after hook call
Close #7412
2021-08-20 20:08:27 -04:00
WillyandGitHub fa5a2188bb Copy docs from Client.close() to Bot.close() 2021-08-20 20:06:51 -04:00
Sebastian LawandGitHub 1d2eaf8526 [commands] reset view when Optional argument encounters parsing error 2021-08-19 19:56:28 -04:00
JoshandGitHub f3cb197429 [commands][types] Type hint commands-ext 2021-08-19 19:51:26 -04:00
StockerandGitHub 8fdd1f0d8f [commands] Typehinted errors.py 2021-08-18 01:03:44 -04:00
AkshuAgarwalandGitHub 6b6bcb92e6 Fix missing or broken versionadded in docstrings
This also documents BadFlagArgument.flag
2021-08-18 00:45:02 -04:00
thetimtoyandGitHub c4ee9dcafa [commands] Return removed cog in Bot.remove_cog
The method now returns the removed cog, if it exists.
2021-08-18 00:39:54 -04:00
JoshandGitHub 1c63816cc0 [commands] Document / type-hint cooldown 2021-08-10 08:35:15 -04:00
z03handGitHub c628224403 [commands] Add GuildStickerConverter 2021-08-10 08:31:20 -04:00
z03handGitHub 8851e03a6d [commands] fix bot_has_role and is_nsfw for threads 2021-07-30 21:26:49 -04:00
Rapptz 731a8816bb [commands] Check for ctx.guild instead of abc.GuildChannel 2021-07-28 23:53:24 -04:00
StockerandGitHub 1472e9ed7c Fixes minor grammatical error in Command.update 2021-07-28 19:56:36 -04:00
thetimtoyandGitHub 8675a18185 [commands] Remove unused copy import in Cog 2021-07-21 02:48:11 -04:00
Alex NørgaardandGitHub 26e68b31ef [commands] fix incorrect typings in ThreadConverter 2021-07-21 02:43:37 -04:00
Nadir ChowdhuryandGitHub e2624b9a31 [commands] Fix (Partial)MessageConverter to work with thread messages 2021-07-10 03:11:34 -04:00
Rapptz 1a4e73d599 [commands] Get guild_id from message link for message converters 2021-07-09 09:14:01 -04:00