uvloop
Fast implementation of asyncio event loop on top of libuv
Install
uvloop on PyPI
pip
pip install uvloopuv
uv add uvlooppoetry
poetry add uvloopPackage facts
| License | MIT License (permissive) |
| Python support | supports the current Python release (>=3.8.1) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 301 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: uvloop-0.22.1-cp310-cp310-macosx_10_9_universal2.whl; uvloop-0.22.1-cp310-cp310-macosx_10_9_x86_64.whl; uvloop-0.22.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; uvloop-0.22.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; uvloop-0.22.1-cp310-cp310-musllinux_1_2_aarch64.whl; uvloop-0.22.1-cp310-cp310-musllinux_1_2_x86_64.whl; uvloop-0.22.1-cp311-cp311-macosx_10_9_universal2.whl; uvloop-0.22.1-cp311-cp311-macosx_10_9_x86_64.whl; uvloop-0.22.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; uvloop-0.22.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; uvloop-0.22.1-cp311-cp311-musllinux_1_2_aarch64.whl; uvloop-0.22.1-cp311-cp311-musllinux_1_2_x86_64.whl; uvloop-0.22.1-cp312-cp312-macosx_10_13_universal2.whl; uvloop-0.22.1-cp312-cp312-macosx_10_13_x86_64.whl; uvloop-0.22.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; uvloop-0.22.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; uvloop-0.22.1-cp312-cp312-musllinux_1_2_aarch64.whl; uvloop-0.22.1-cp312-cp312-musllinux_1_2_x86_64.whl; uvloop-0.22.1-cp313-cp313-macosx_10_13_universal2.whl; uvloop-0.22.1-cp313-cp313-macosx_10_13_x86_64.whl
Keywords: asyncio, networking
About uvloop
from the package's own PyPI description — quoted content, verbatim
.. image:: https://img.shields.io/github/actions/workflow/status/MagicStack/uvloop/tests.yml?branch=master :target: https://github.com/MagicStack/uvloop/actions/workflows/tests.yml?query=branch%3Amaster
.. image:: https://img.shields.io/pypi/v/uvloop.svg :target: https://pypi.python.org/pypi/uvloop
.. image:: https://pepy.tech/badge/uvloop :target: https://pepy.tech/project/uvloop :alt: PyPI - Downloads
uvloop is a fast, drop-in replacement of the built-in asyncio event loop. uvloop is implemented in Cython and uses libuv under the hood.
The project documentation can be found
here <http://uvloop.readthedocs.org/>. Please also check out the
wiki <https://github.com/MagicStack/uvloop/wiki>.
Performance
uvloop makes asyncio 2-4x faster.
.. image:: https://raw.githubusercontent.com/MagicStack/uvloop/master/performance.png :target: http://magic.io/blog/uvloop-blazing-fast-python-networking/
The above chart shows the performance of an echo server with different
message sizes. The sockets benchmark uses loop.sock_recv() and
loop.sock_sendall() methods; the streams benchmark uses asyncio
high-level streams, created by the...
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
uvloop is a fast, drop-in replacement for Python's built-in asyncio event loop, implemented in Cython and using libuv under the hood to achieve 2-4x performance improvements for async I/O operations.
Medium install friction due to compiled C extensions (Cython/libuv); prebuilt wheels available for Python 3.10–3.13 on macOS, Linux, and musl platforms. Actively maintained with status active and strong community adoption.
Dual-licensed under MIT and Apache 2.0 (permissive); either license permits commercial and private use with minimal restrictions, making uvloop suitable for most projects.
Usage
import uvloop
async def main():
pass
uvloop.run(main())
Requires Python 3.8.1 or greater; compiled extension may require build tools on platforms without prebuilt wheels.
Verdict: uvloop is a production-stable, actively maintained asyncio accelerator with no known vulnerabilities, dual permissive licensing, and broad platform support. Medium install friction from compilation is offset by significant performance gains (2-4x) and top-1000 PyPI popularity, making it a well-vetted choice for performance-critical async applications.
Needs verification
- Whether prebuilt wheels cover all target deployment platforms (fact sheet shows cp310–cp313, but deployment OS/arch may differ)
- Compatibility guarantees with specific asyncio frameworks or libraries that depend on event loop internals
- Support status for Python 3.8 and 3.9 given friction evidence only lists cp310–cp313 wheels
Similar packages
permissive · top 1,000 on PyPI
httptoolspermissive · top 1,000 on PyPI
anyiopermissive · top 100 on PyPI
opt-einsumpermissive · top 1,000 on PyPI
asyncpgpermissive · top 1,000 on PyPI
nest-asyncio2permissive · top 1,000 on PyPI
geventpermissive · top 1,000 on PyPI
spacypermissive · top 1,000 on PyPI
murmurhashpermissive · top 1,000 on PyPI
nest-asynciopermissive · top 1,000 on PyPI