Skip to content
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

Added support for asyncio eager task factories #822

Draft
wants to merge 8 commits into
base: master
Choose a base branch
from

Conversation

agronholm
Copy link
Owner

@agronholm agronholm commented Nov 10, 2024

Changes

Fixes #764.

This updates the task group code and type annotations to accommodate eager task factories.

Additionally, this updates pre-commit modules. The updated mypy catches the annotation issues due to its updated typeshed.

Checklist

If this is a user-facing code change, like a bugfix or a new feature, please ensure that
you've fulfilled the following conditions (where applicable):

  • You've added tests (in tests/) added which would fail without your patch
  • You've updated the documentation (in docs/, in case of behavior changes or new
    features)
  • You've added a new changelog entry (in docs/versionhistory.rst).

If this is a trivial change, like a typo fix or a code reformatting, then you can ignore
these instructions.

Updating the changelog

If there are no entries after the last release, use **UNRELEASED** as the version.
If, say, your patch fixes issue #123, the entry should look like this:

* Fix big bad boo-boo in task groups (#123 <https://github.com/agronholm/anyio/issues/123>_; PR by @yourgithubaccount)

If there's no issue linked, just link to your pull request instead by updating the
changelog after you've created the PR.

@agronholm agronholm marked this pull request as ready for review November 10, 2024 13:22
@agronholm agronholm marked this pull request as draft November 10, 2024 20:28
name = get_callable_name(func) if name is None else str(name)
try:
task = create_task(coro, name=name)
except BaseException:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should just be a finally

@agronholm agronholm marked this pull request as ready for review November 13, 2024 00:24
@agronholm
Copy link
Owner Author

Sigh...I improved my test and it's failing now. Back to the drawing board.

@agronholm agronholm marked this pull request as draft November 13, 2024 17:38
@graingert
Copy link
Collaborator

Sigh...I improved my test and it's failing now. Back to the drawing board.

CI looks green to me, what's failing?

@agronholm
Copy link
Owner Author

Sigh...I improved my test and it's failing now. Back to the drawing board.

CI looks green to me, what's failing?

Fetching task state didn't work, as my amended test showed. I've pushed it now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

get_coro is missing a None check in _task_started
2 participants