rloop 0.2.0


pip install rloop

  Latest version

Released: Sep 12, 2025


Meta
Author: Giovanni Barillari
Requires Python: >=3.9

Classifiers

Development Status
  • 3 - Alpha

Intended Audience
  • Developers

License
  • OSI Approved :: BSD License

Operating System
  • MacOS
  • POSIX :: Linux

Programming Language
  • Python :: Free Threading :: 2 - Beta
  • Python :: 3
  • Python :: 3.9
  • Python :: 3.10
  • Python :: 3.11
  • Python :: 3.12
  • Python :: 3.13
  • Python :: Implementation :: CPython
  • Python :: Implementation :: PyPy
  • Python
  • Rust

RLoop

RLoop is an AsyncIO selector event loop implemented in Rust on top of the mio crate.

Warning: RLoop is currently a work in progress and definitely not suited for production usage.

Note: RLoop is available on Unix systems only.

Installation

pip install rloop

Usage

import asyncio
import rloop

asyncio.set_event_loop_policy(rloop.EventLoopPolicy())
loop = asyncio.new_event_loop()
asyncio.set_event_loop(loop)

Differences from stdlib

At current time, when compared with the stdlib's event loop, RLoop doesn't support the following features:

  • Unix Domain Sockets
  • SSL
  • debugging

RLoop also doesn't implement the following methods:

  • loop.sendfile
  • loop.connect_accepted_socket
  • loop.sock_recvfrom
  • loop.sock_recvfrom_into
  • loop.sock_sendto
  • loop.sock_sendfile

call_later with negative delays

While the stdlib's event loop will use the actual delay of callbacks when call_later is used with negative numbers, RLoop will treat those as call_soon, and thus the effective order will follow the invocation order, not the delay.

License

RLoop is released under the BSD License.

Wheel compatibility matrix

Platform CPython 3.9 CPython 3.10 CPython 3.11 CPython 3.12 CPython 3.13 CPython 3.14 CPython (additional flags: t) 3.13 CPython (additional flags: t) 3.14 PyPy 3.9 (pp73) PyPy 3.10 (pp73) PyPy 3.11 (pp73)
macosx_10_12_x86_64
macosx_11_0_arm64
manylinux2010_i686
manylinux2014_aarch64
manylinux2014_armv7l
manylinux2014_x86_64
manylinux_2_12_i686
manylinux_2_17_aarch64
manylinux_2_17_armv7l
manylinux_2_17_x86_64
musllinux_1_1_aarch64
musllinux_1_1_armv7l
musllinux_1_1_x86_64

Files in release

rloop-0.2.0-cp310-cp310-macosx_10_12_x86_64.whl (332.8KiB)
rloop-0.2.0-cp310-cp310-macosx_11_0_arm64.whl (311.0KiB)
rloop-0.2.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl (377.2KiB)
rloop-0.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (335.3KiB)
rloop-0.2.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (358.8KiB)
rloop-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (355.2KiB)
rloop-0.2.0-cp310-cp310-musllinux_1_1_aarch64.whl (513.2KiB)
rloop-0.2.0-cp310-cp310-musllinux_1_1_armv7l.whl (617.7KiB)
rloop-0.2.0-cp310-cp310-musllinux_1_1_x86_64.whl (527.2KiB)
rloop-0.2.0-cp311-cp311-macosx_10_12_x86_64.whl (332.6KiB)
rloop-0.2.0-cp311-cp311-macosx_11_0_arm64.whl (313.1KiB)
rloop-0.2.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl (376.8KiB)
rloop-0.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (334.8KiB)
rloop-0.2.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (358.5KiB)
rloop-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (355.0KiB)
rloop-0.2.0-cp311-cp311-musllinux_1_1_aarch64.whl (512.7KiB)
rloop-0.2.0-cp311-cp311-musllinux_1_1_armv7l.whl (617.4KiB)
rloop-0.2.0-cp311-cp311-musllinux_1_1_x86_64.whl (526.7KiB)
rloop-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl (331.9KiB)
rloop-0.2.0-cp312-cp312-macosx_11_0_arm64.whl (311.0KiB)
rloop-0.2.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl (379.1KiB)
rloop-0.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (334.3KiB)
rloop-0.2.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (358.4KiB)
rloop-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (357.8KiB)
rloop-0.2.0-cp312-cp312-musllinux_1_1_aarch64.whl (512.7KiB)
rloop-0.2.0-cp312-cp312-musllinux_1_1_armv7l.whl (617.4KiB)
rloop-0.2.0-cp312-cp312-musllinux_1_1_x86_64.whl (526.6KiB)
rloop-0.2.0-cp313-cp313-macosx_10_12_x86_64.whl (331.7KiB)
rloop-0.2.0-cp313-cp313-macosx_11_0_arm64.whl (309.1KiB)
rloop-0.2.0-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.whl (378.7KiB)
rloop-0.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (334.1KiB)
rloop-0.2.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (358.1KiB)
rloop-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (357.6KiB)
rloop-0.2.0-cp313-cp313-musllinux_1_1_aarch64.whl (512.5KiB)
rloop-0.2.0-cp313-cp313-musllinux_1_1_armv7l.whl (617.0KiB)
rloop-0.2.0-cp313-cp313-musllinux_1_1_x86_64.whl (526.3KiB)
rloop-0.2.0-cp313-cp313t-macosx_10_12_x86_64.whl (331.8KiB)
rloop-0.2.0-cp313-cp313t-macosx_11_0_arm64.whl (309.2KiB)
rloop-0.2.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (330.0KiB)
rloop-0.2.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (356.5KiB)
rloop-0.2.0-cp313-cp313t-musllinux_1_1_aarch64.whl (509.0KiB)
rloop-0.2.0-cp313-cp313t-musllinux_1_1_x86_64.whl (524.7KiB)
rloop-0.2.0-cp314-cp314-macosx_10_12_x86_64.whl (331.3KiB)
rloop-0.2.0-cp314-cp314-macosx_11_0_arm64.whl (307.8KiB)
rloop-0.2.0-cp314-cp314-manylinux_2_12_i686.manylinux2010_i686.whl (379.0KiB)
rloop-0.2.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (334.3KiB)
rloop-0.2.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (357.0KiB)
rloop-0.2.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (354.4KiB)
rloop-0.2.0-cp314-cp314-musllinux_1_1_aarch64.whl (511.6KiB)
rloop-0.2.0-cp314-cp314-musllinux_1_1_armv7l.whl (615.9KiB)
rloop-0.2.0-cp314-cp314-musllinux_1_1_x86_64.whl (526.2KiB)
rloop-0.2.0-cp314-cp314t-macosx_10_12_x86_64.whl (331.5KiB)
rloop-0.2.0-cp314-cp314t-macosx_11_0_arm64.whl (305.4KiB)
rloop-0.2.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (330.1KiB)
rloop-0.2.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (354.3KiB)
rloop-0.2.0-cp314-cp314t-musllinux_1_1_aarch64.whl (507.8KiB)
rloop-0.2.0-cp314-cp314t-musllinux_1_1_x86_64.whl (523.0KiB)
rloop-0.2.0-cp39-cp39-macosx_10_12_x86_64.whl (336.0KiB)
rloop-0.2.0-cp39-cp39-macosx_11_0_arm64.whl (314.8KiB)
rloop-0.2.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl (378.5KiB)
rloop-0.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (336.3KiB)
rloop-0.2.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (360.5KiB)
rloop-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (356.5KiB)
rloop-0.2.0-cp39-cp39-musllinux_1_1_aarch64.whl (514.5KiB)
rloop-0.2.0-cp39-cp39-musllinux_1_1_armv7l.whl (619.5KiB)
rloop-0.2.0-cp39-cp39-musllinux_1_1_x86_64.whl (528.4KiB)
rloop-0.2.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl (338.3KiB)
rloop-0.2.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl (310.1KiB)
rloop-0.2.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (334.7KiB)
rloop-0.2.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (358.7KiB)
rloop-0.2.0-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl (512.8KiB)
rloop-0.2.0-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl (526.5KiB)
rloop-0.2.0-pp311-pypy311_pp73-macosx_10_12_x86_64.whl (337.6KiB)
rloop-0.2.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl (309.7KiB)
rloop-0.2.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (334.1KiB)
rloop-0.2.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (358.1KiB)
rloop-0.2.0-pp311-pypy311_pp73-musllinux_1_1_aarch64.whl (512.2KiB)
rloop-0.2.0-pp311-pypy311_pp73-musllinux_1_1_x86_64.whl (526.1KiB)
rloop-0.2.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl (339.0KiB)
rloop-0.2.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl (310.9KiB)
rloop-0.2.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (335.4KiB)
rloop-0.2.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (359.4KiB)
rloop-0.2.0-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl (513.4KiB)
rloop-0.2.0-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl (527.3KiB)
rloop-0.2.0.tar.gz (38.6KiB)
No dependencies