Give AlbumentationsX a star on GitHub — it powers this leaderboard

Star on GitHub

taskgroup

backport of asyncio.TaskGroup, asyncio.Runner and asyncio.timeout

Rank: #2679Downloads: 2,133,920 (30 days)

Description

PyPI - Version

taskgroup

a backport of asyncio.TaskGroup, asyncio.Runner and asyncio.timeout

background

This is a backport of the TaskGroup, Runner and timeout code from Python 3.12.8 to Python 3.8, Python 3.9, Python 3.10 and Python 3.11.

operation

This project works by temporarily swapping the current task of a coroutine to a subclass of asyncio.Task with uncancel and context setting support. The advantage of this approach means that most of the operation of asyncio.Task will continue to be c-accelerated.

example

if sys.python_version >= (3, 11):
    from asyncio import run, TaskGroup, timeout
else:
    from taskgroup import run, TaskGroup, timeout

async def main():
    async with TaskGroup() as group:
        group.create_task(task1())
        group.create_task(task2())

run(main())

changelog

0.2.2

What's Changed

New Contributors

Full Changelog: https://github.com/graingert/taskgroup/compare/0.2.1...0.2.2

0.2.1

What's Changed

Full Changelog: https://github.com/graingert/taskgroup/compare/0.2.0...0.2.1

0.2.0

What's Changed

Full Changelog: https://github.com/graingert/taskgroup/compare/0.1.1...0.2.0

0.1.1

What's Changed

New Contributors

Full Changelog: https://github.com/graingert/taskgroup/compare/0.1.0...0.1.1

0.1.0

What's Changed

Full Changelog: https://github.com/graingert/taskgroup/compare/0.0.0a6...0.1.0

0.0.0a6

What's Changed

Full Changelog: https://github.com/graingert/taskgroup/compare/0.0.0a5...0.0.0a6

0.0.0a5

What's Changed

New Contributors

Full Changelog: https://github.com/graingert/taskgroup/commits/0.0.0a5