asyncutils
A Python library abstracting many common async patterns.
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
- ease of bug reporting in the form of an optionally interactive subcommand
Setup
Make sure you have CPython 3.12 or above. GraalPy 25.0 or above is also acceptable. CPython free-threaded and debug builds are also supported. No setup is needed after installation. 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.3.1.
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):
- asyncio how-to
- Basic walkthrough
- Basic video guide
- asyncio, threading, multiprocessing
- Event loop
- In-depth tutorial
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 | |
|---|---|---|---|---|---|---|
Metadata
Release files for py-asyncutils 1.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| py_asyncutils-1.3.1.tar.gz | 229.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| py_asyncutils-1.3.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 491.9 kB
Release files / py_asyncutils-1.3.1.tar.gz
| Download URL | py_asyncutils-1.3.1.tar.gz |
|---|---|
| Size | 229.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
bf1647f845bfa218e94db47cfbda515139a27f01d94ad6457663d9e15ae90762
|
|
BLAKE2b-256 checksum How to use checksums |
af39f749ff55413d3ef1b8c192f59d96a1b42d1c65f2093254b9e02192fabf0b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","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}
|
Release files / py_asyncutils-1.3.1-py3-none-any.whl
| Download URL | py_asyncutils-1.3.1-py3-none-any.whl |
|---|---|
| Size | 262.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
12f9ee82db8e677ff32fb09068a54d42dab2c46dd190017b9f92e04311d0ffd6
|
|
BLAKE2b-256 checksum How to use checksums |
118145cd06f9771a018c9c6d2aa5ae1a1a86c1947060f86379029576ec42a7c2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","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}
|