-
-
Notifications
You must be signed in to change notification settings - Fork 719
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Replace loop.call_later and loop.add_callback with background tasks added to Server. #6603
Conversation
… unawaited coroutine warning
…call_later it's very easy to accidentally call "await group.call_soon(set_flag)" which is always wrong, this is especially bad because some type checkers will warn you that you didn't await your awaitables here also this prevents issues like "task = group.call_soon(set_flag); ... await task" where it's easy to confuse a cancellation coming from asyncio.current_task().cancel() and task.cancelled() which should be handled differently
delayed already has a meaning in dask so we should come up with a new name before making it public
this seems to have some difficult to understand consequences and should be handled in dask#6548
seemed to fail with #4498 last time |
Tests / test (ubuntu-latest, 3.8, not ci1) : #6045 |
I think this PR should be squash merged |
Unit Test ResultsSee test report for an extended history of previous test failures. This is useful for diagnosing flaky tests. 15 files ± 0 15 suites ±0 10h 7m 49s ⏱️ + 2h 59m 38s For more details on these failures, see this check. Results for commit fc2f7e1. ± Comparison against base commit 7a0649a. ♻️ This comment has been updated with latest results. |
…the finished event to prevent hangs
Thank you @graingert and @hendrikmakait ! Really looking forward to having this 🎉 |
This PR has caused a major performance degradation in CI: #6632 |
Closes #6359
#6478 with conflicts fixed and a few suggestions applied
This PR introduces a
TaskGroup
class that encapsulates scheduling behavior behindcall_soon
andcall_later
methods and allows gracefully shutting down all its tasks at once with atimeout
.Outside of scope: