Steve C
a9dba2753f
[tasks] Move the Loop's sleep to be before exit conditions
...
This change makes it more so that `Loop.stop()` gracefully makes the
current iteration the final one, by waiting AND THEN returning.
The current implementation is closer to `cancel`, while also not.
I encountered this because I was trying to run a
`@tasks.loop(count=1)`, and inside it I print some text and change the
interval, and in an `after_loop`, I restart the loop.
Without this change, it immediately floods my console, due to
not waiting before executing `after_loop`.
2021-05-01 10:28:00 -04:00
Sebastian Law
f7a4bef4ff
[tasks] remove redundant condition in Loop.next_iteration
...
self._task is only None if the Loop has never been started before,
which means None should be returned always, regardless of how
many seconds was passed into the constructor
this didn't break anything before because self._next_iteration will
be None as well if self._task is None.
2021-02-28 23:54:44 -05:00
Nadir Chowdhury
63ec23bac2
Code optimisations and refactoring via Sourcery
2021-02-24 21:26:51 -05:00
Sebastian Law
ceab8ff638
[tasks] make __call__ actually appear in the docs
2021-02-21 07:19:10 -05:00
Nihaal Sangha
69bdc3a184
Change copyright year to present
2021-01-15 05:28:11 -05:00
Rapptz
6515f33978
[tasks] Fix a typo in documentation
2020-12-14 22:18:40 -05:00
Rapptz
0216db0c0a
[tasks] Add support for manually calling the wrapped coroutine
2020-12-14 22:11:37 -05:00
Rapptz
ccdf4c4ad6
[tasks] Lazily fetch event loop if one isn't provided
...
Fixes #5808
2020-09-10 00:00:58 -04:00
Josh
6baacb2c23
[tasks] Don't update _next_iteration on retry
2020-08-28 23:12:07 -04:00
Dan Hess
fc951873a1
[tasks] Remove HTTPException as an exception to silently continue for
2020-08-05 03:09:04 -04:00
Rapptz
b8154e365f
Rewrite gateway to use aiohttp instead of websockets
2020-07-25 09:59:38 -04:00
James
61216112d0
Add a licence and encoding declaration to missing files
2020-07-08 23:01:00 -04:00
Josh
6b5be39cd2
[tasks] Fix issue with default error handler in class context
2020-06-28 03:53:29 -04:00
Steve C
4b3a7fbe16
[tasks] Allow Loop.cancel in Loop.before_loop
...
Task cancel raises on the next awaited coro, so I've added this 0-sleep "hack"
I'm internally debating if leaving the comment there, but I'm sure it would confuse the uninformed of this trick.
2020-05-10 17:00:23 -04:00
Steve C
0fd5eca0d5
[tasks] Fix tasks decorators being discarded
...
At this moment, when a task seems to be first loaded, it immediately throws away the decorators you give it, and just generates a new instance of itself.
In your cog's `__init__`, once you do `self.my_task.start()`, the Loop is remade when it gets to `self.my_task` before executing the `start` function. The original Loop that the cog starts with is where the decorated values are. This fixes that.
2020-05-07 02:30:24 -04:00
Rapptz
540a88b762
[tasks] Replace stack-based implementation with a cleaner one.
2020-04-14 04:56:52 -04:00
Rapptz
d5211fb327
[tasks] Create different Loop objects for different instances
...
Fixes #2294
2020-04-14 04:35:49 -04:00
Josh B
20854de080
Allow for optional custom error handler in tasks extension
2020-04-04 03:11:25 -04:00
Epic
18c52671a9
Remove extra to in tasks docs
2020-04-04 03:09:21 -04:00
James
6a30f2749f
[tasks] Add is_running property to Loop
2020-04-04 03:02:10 -04:00
Josh B
d0a1956be9
Improve usability of utils.sleep_until
...
Fix issue where sleeping for an extended period on python 3.5
would cause an exception
Add sleep_until to API docs
Add result argument to sleep_until
2020-01-21 20:28:14 -05:00
Rapptz
02397306b2
Drop superfluous zero in version related changes in the documentation
2020-01-21 03:47:56 -05:00
Rapptz
3149f15165
[tasks] Use new sleep_until util instead of internal function
2020-01-21 03:21:22 -05:00
Josh B
d7e925eb89
[tasks] Fix issue with next_iteration when task overruns time allotted
2020-01-21 03:18:25 -05:00
Josh B
a0b3e61b51
[tasks] Add Loop.next_iteration property
2020-01-20 07:22:21 -05:00
Rapptz
e1a237a0d3
Revert "[tasks] Add Loop.exception for more reliable exception retrieval."
...
This reverts commit 7a8c9e66d9c43a539fb78107ce3f51f16c7f30a2.
2019-11-19 21:59:39 -05:00
Rapptz
071c5b89e0
Revert "[tasks] Add support for explicit time parameter when running."
...
This reverts commit 9f822a1e6d904c4d7454ab77496b8a4f736073ab.
2019-11-19 21:59:27 -05:00
mathsman5133
7f65d9a8b1
[tasks] Add support for passing an argument list of exceptions.
2019-09-10 21:10:59 -04:00
Rapptz
9f822a1e6d
[tasks] Add support for explicit time parameter when running.
...
Fixes #2159
2019-08-11 18:57:49 -04:00
Rapptz
7a8c9e66d9
[tasks] Add Loop.exception for more reliable exception retrieval.
2019-07-27 23:07:48 -04:00
Nihaal
9687740217
[tasks] Removed Returns from decorator docstring
2019-06-29 19:15:06 -04:00
NCPlayz
3c9bcc2851
Improve documentation
2019-06-07 19:27:46 -04:00
Suhail
db9a293f14
[tasks] Add version added note to Loop.change_interval
2019-05-19 19:17:28 -04:00
Suhail6inkling
aadb6953ff
[tasks] Add way to change interval at run-time
...
PR: #2162
Fixes : #2158
2019-05-17 18:25:21 -04:00
Rapptz
6bc9d7c01a
[tasks] Add indicator for internal task failure
...
Fixes #2151
2019-05-13 22:10:38 -04:00
Rapptz
a4a362b4c7
[tasks] Log exception when something failed to logging.
2019-05-13 22:08:31 -04:00
SnowyLuma
859ee751f9
[tasks] Return coro from before and after decorators
2019-05-13 20:29:07 -04:00
Rapptz
49a7e58d17
[tasks] Keep retrying before gracefully exiting.
2019-05-12 01:31:09 -04:00
Rapptz
4eead39b3c
[tasks] Add Loop.stop to gracefully stop a task.
...
Updated docs will follow shortly.
2019-05-12 01:04:24 -04:00
Rapptz
bcdecd4e07
[tasks] Reset iteration count when loop terminates.
2019-05-12 00:49:19 -04:00
Steve C
8f111c521c
Fix typo in Loop.restart documentation
2019-05-10 18:44:07 -04:00
Rapptz
47808a7e96
[tasks] Add Loop.restart
...
This implementation waits until the task is done before starting it
again.
Closes #2075
2019-05-10 18:37:37 -04:00
Rapptz
91e00d8426
[tasks] Add way to query cancellation state for Loop.after_loop
...
Fixes #2121
2019-04-30 01:45:15 -04:00
Rapptz
55e3e242ff
[tasks] Remove support for awaitables due to gotchas.
...
Fixes #2079
2019-04-29 23:34:20 -04:00
Danny
2a301a4eb4
[tasks] Fix assignment of tuple when appending
2019-04-15 14:49:52 -04:00
Steve C
ac2cda1ffc
[tasks] set internal task to None after canceling
2019-04-12 20:56:40 -04:00
Rapptz
e46842a7cd
[tasks] Add before_loop and after_loop decorators
2019-04-12 04:08:42 -04:00
Rapptz
4513dac7a3
[tasks] Ensure total number of seconds is not less than 0.
2019-04-11 08:21:45 -04:00
Rapptz
10bc939348
[tasks] Rename Loop.run to Loop.start to avoid blocking connotations
2019-04-11 08:19:32 -04:00
Rapptz
b0c7f48caf
[tasks] Add a new background helper 'tasks' extension.
2019-04-11 08:04:26 -04:00