Skip to main content

asyncutils

PyPI - Python Version PyPI version Coverage Build CodeQL Publish GitHub Pages Dependabot Prek OpenSSF Best Practices Read the Docs: stable Read the Docs: latest Conda version conda-forge feedstock Contributor Covenant

A Python library abstracting all the common patterns I can think of that somehow always pop up in async code.

Takes pride in:

  • being as fast as can be in terms of import time
  • providing detailed type checking via stub files included in the distribution
  • having a well-equipped command line interface taking many flags and options

Setup

Make sure you have CPython 3.12 or above; even a pre-release of 3.15 will do. GraalPy 25.0 or above is also acceptable. You should have at least one Python package manager you are comfortable with. CPython free-threaded and debug builds are also supported. I have plans to support PyPy, but they are currently lagging behind the releases of the reference implementation and a 3.11 backport would be required, which is not going to happen.

The support for GraalPy is also experimental and I don't think its particular performance benefits would apply to this library, provided that part of asyncio is written in C, and GraalPy's asyncio doesn't support Windows yet.

Discounting the installation, no extra setup is needed. See the installation guide for more.

Usage

This package is very resourceful, containing everything from higher-order error handling functions to network protocols. See the usage guide for some basic examples.

Version

This is asyncutils v1.1.2, with all stable version tags up to now attached for your reference.

Configuration

Besides using command line arguments to change console settings, the behaviour of this module as a library can be customized as well. See the configuration guide.

Remarks

It is strongly recommended that you read the asyncio docs thoroughly if using event loop and async generator related features, since their behaviours are central points of confusion and have troubled me greatly in the development of this library.

Resources

Here are some resources if you're new to the world of async. They were of great assistance when I was learning async (I still am):

Contributing

If you have suggestions for how asyncutils could be improved, or want to report a bug, do open an issue! All contributions are welcome. For more, check out the contributing guide.

License

MIT © 2026 Jonathan Dung

Badges

GitHub Repo Package Uses Status Tests
GitHub release Project stars PyPI - Implementation Build backend Maintenance Tests
GitHub release date GitHub forks Noarch ruff Issues Welcome Warnings
Commits since last release GitHub watchers PyPI - Downloads ty PRs Welcome Expected failures
GitHub commit activity GitHub PyPI - Format SemVer detect-secrets Duration
GitHub issues GitHub Downloads PyPI - License Sphinx Blazingly fast Skipped
GitHub pull requests Repo creation Language count Sphinx-lint Free-threaded support Last test run
GitHub contributors GitHub repo size Top language CSpell
GitHub last commit Code size Visits Pytest

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py_asyncutils-1.1.2.tar.gz (215.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py_asyncutils-1.1.2-py3-none-any.whl (255.3 kB view details)

Uploaded Python 3

File details

Details for the file py_asyncutils-1.1.2.tar.gz.

File metadata

  • Download URL: py_asyncutils-1.1.2.tar.gz
  • Upload date:
  • Size: 215.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for py_asyncutils-1.1.2.tar.gz
Algorithm Hash digest
SHA256 fe74d65883b0e665cb0baf01bf94e288ee357a008905c7db4750fc00fdfc6aff
MD5 b3d494573141a1781f4702e3558117eb
BLAKE2b-256 f5a98dd0e612caeba3576c4cb5b205556346edf39ae346ecae3d94be53bb48ed

See more details on using hashes here.

File details

Details for the file py_asyncutils-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: py_asyncutils-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 255.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for py_asyncutils-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 dcd42a5b9a2a64704bf317b93eaad109729041bf36a3cd72befde18a99cb36bc
MD5 762c3a946998ab4e9d414dc8ad6f075b
BLAKE2b-256 835a6a301d4bb45401798476886927e1c00cb6865e69cfb962576247e63229ec

See more details on using hashes here.

Release history Release notifications | RSS feed

1.2.4

2 files

1.2.3

2 files

1.2.2

2 files

1.2.1

2 files

1.2.0

2 files

1.1.4

2 files

1.1.3

2 files

This release

1.1.2 This release

2 files

1.1.0

2 files

1.0.1

2 files

1.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page