Skip to main content
rsloop logo

An event loop for asyncio written in Rust

PyPI - Version Tests PyPI Downloads

rsloop is a PyO3-based asyncio event loop implemented in Rust.

Each rsloop.Loop owns a dedicated Rust runtime thread for loop coordination and I/O work. That thread runs an rsloop-specialized vibeio runtime, using io_uring on Linux, IOCP on Windows, and native kqueue readiness on macOS. Plain TCP / Unix socket reads and non-TLS server accepts run on that runtime. Python callbacks, tasks, and coroutines still run on the thread that calls run_forever() or run_until_complete() (usually the main Python thread).

The package exposes:

  • a native extension module at rsloop._loop
  • a Python wrapper in python/rsloop/__init__.py
  • rsloop.Loop, rsloop.EventLoopPolicy, rsloop.new_event_loop(), rsloop.run(...), rsloop.install(), rsloop.uninstall(), and rsloop.build_info()

Repository metadata currently targets Python >=3.10. The native runtime requires Linux 6.1+, macOS 13+, or Windows 11+ so its hot paths can rely on modern completion, timer, and scheduler primitives. Free-threaded CPython (3.14t) is supported: the extension declares gil_used = false, so importing it no longer re-enables the GIL. See Free-Threaded CPython for what that does and does not buy you.

Documentation

Project documentation now lives in docs/.

If you are new to the repository, start with:

To browse the docs locally with MkDocs:

uvx --from mkdocs mkdocs serve

Install

From PyPI:

pip install rsloop

With uv:

uv add rsloop

From conda-forge, using pixi:

pixi add rsloop

Usage

Simple entry point:

import rsloop


async def main(): ...


rsloop.run(main())

Install as the default asyncio event loop policy:

import asyncio
import rsloop

rsloop.install()
try:
    asyncio.run(main())
finally:
    rsloop.uninstall()

Manual loop creation also works:

import asyncio
import rsloop

loop = rsloop.new_event_loop()
asyncio.set_event_loop(loop)
try:
    loop.run_until_complete(...)
finally:
    asyncio.set_event_loop(None)
    loop.close()

Importing rsloop also patches asyncio.set_event_loop() so Python 3.10 can accept an rsloop.Loop instance, matching the behavior exercised by tests/test_run.py.

Custom Async Rust Extensions

rsloop now exposes a small Rust interop API for downstream PyO3 extensions. That lets you write your own async Rust code, return it to Python as an awaitable, and run it under the active rsloop event loop.

The public entry point is rsloop::rust_async:

  • get_current_locals(...)
  • future_into_py(...)
  • future_into_py_with_locals(...)
  • local_future_into_py(...)
  • local_future_into_py_with_locals(...)
  • re-exports of TaskLocals and into_future_with_locals(...)

See examples/rust/README.md for a complete extension example built with maturin.

Verified Surface Area

The current codebase implements these user-facing areas.

Loop lifecycle and scheduling:

  • run_forever, run_until_complete, stop, close
  • time, is_running, is_closed
  • get_debug, set_debug
  • call_soon, call_soon_threadsafe, call_later, call_at
  • returned Handle and TimerHandle objects with cancel() / cancelled()

Tasks, futures, and execution helpers:

  • create_future, create_task
  • set_task_factory, get_task_factory
  • set_exception_handler, get_exception_handler, call_exception_handler, default_exception_handler
  • set_default_executor, run_in_executor
  • shutdown_asyncgens, shutdown_default_executor
  • callback execution under captured contextvars.Context
  • asyncio.get_running_loop() support while running on rsloop
  • rsloop.run(...) helper, with asyncio.run(..., loop_factory=...) integration on Python 3.12+

I/O and networking:

  • add_reader, remove_reader, add_writer, remove_writer
  • sock_recv, sock_recv_into, sock_sendall, sock_accept, sock_connect
  • getaddrinfo, getnameinfo
  • create_server, create_connection
  • create_unix_server, create_unix_connection
  • connect_accepted_socket
  • returned Server objects with close(), is_serving(), get_loop(), and sockets()
  • returned StreamTransport objects with write(), writelines(), close(), abort(), is_closing(), write_eof(), can_write_eof(), get_extra_info(), get_protocol(), set_protocol(), pause_reading(), resume_reading(), is_reading()

Pipes, subprocesses, and signals:

  • connect_read_pipe, connect_write_pipe
  • subprocess_exec, subprocess_shell
  • returned ProcessTransport and ProcessPipeTransport objects
  • higher-level compatibility with asyncio.create_subprocess_exec() and asyncio.create_subprocess_shell()
  • Unix subprocess options including cwd, env, executable, pass_fds, start_new_session, process_group, user, group, extra_groups, umask, and restore_signals
  • add_signal_handler, remove_signal_handler

Profiling:

  • profile(...), profiler_running(), start_profiler(), stop_profiler()
  • opt-in transport counters through transport_stats() and reset_transport_stats()

Set RSLOOP_TRANSPORT_STATS=1 before importing rsloop to enable the transport counters. They report read completions and bytes, Python-thread read drains, wakeups, staged and direct writes, and Windows completion-to-poll rebinds. Counters remain disabled by default so diagnostics add only one predictable branch to transport hot paths.

Fast Streams

Importing rsloop patches asyncio.open_connection() and asyncio.start_server() by default.

That import-time behavior is controlled by RSLOOP_USE_FAST_STREAMS and can be disabled with:

export RSLOOP_USE_FAST_STREAMS=0

The native fast-stream path is used only when:

  • the running loop is an rsloop.Loop
  • ssl is unset or None

Otherwise rsloop falls back to the stdlib asyncio.streams helpers.

On that path the reader handed to your code is the native PyFastStreamReader rather than asyncio.StreamReader. It implements the reading surface protocols actually use:

  • read(n=-1), readexactly(n)
  • readline(), readuntil(separator=b"\n"), including the tuple-of-separators form CPython 3.13+ accepts
  • at_eof(), exception(), feed_data(), feed_eof(), set_exception()

These match asyncio.StreamReader down to the exception types and their attributes — IncompleteReadError.partial, LimitOverrunError.consumed, the ValueError that readline() raises on limit overrun — and down to what is left in the buffer afterwards. tests/test_stream_reader.py pins that by driving the same feed scripts through both readers and comparing the results.

The implementation lives in src/transport/stream/fast.rs and is backed by the lower level transport code in src/transport/stream/mod.rs.

Free-Threaded CPython

rsloop builds and runs on free-threaded CPython 3.14 (3.14t). The extension declares #[pymodule(gil_used = false)], which is what keeps CPython from silently switching the GIL back on for the whole process at import time:

import sys
import rsloop

assert not sys._is_gil_enabled()
assert rsloop.build_info()["free_threaded"]

What that buys you is that separate rsloop.Loop instances on separate threads run concurrently rather than taking turns. A loop is still single-threaded internally, and asyncio objects are still not thread-safe, so the model is one loop per thread — not one loop shared across threads. call_soon_threadsafe() remains the supported way to hand work to a loop from another thread, and it keeps its FIFO ordering guarantee.

The pieces that made this safe:

  • the generic stream-reader fast path writes into StreamReader._buffer through a raw pointer; the size read, resize, and copy now run inside a critical section on that bytearray, so a concurrent mutation cannot leave the copy writing into a freed allocation
  • the ready-queue refill preserves scheduling order when a drain slice leaves older callbacks in the batch. Under the GIL a cross-thread producer could only enqueue while the loop thread was parked, so the reordering was essentially unreachable; without the GIL producers append throughout the drain and it became routine

tests/test_free_threading.py covers this: parallel loops over both the native and stdlib stream reader paths, call_soon_threadsafe() fan-in from eight threads, and a check that importing rsloop leaves the GIL off.

Wheels are built for 3.14t alongside the GIL builds, and the test matrix runs it as its own entry.

Runtime Model

The runtime is centered on one vibeio runtime per loop:

  • the loop coordination thread is always the central scheduler
  • plain TCP / Unix socket reads and non-TLS accept loops use vibeio on that thread across supported platforms
  • Windows TCP transports, including custom asyncio.Protocol implementations, start in IOCP completion mode and rebind to readiness mode before start_tls synchronously reclaims a socket
  • generic add_reader / add_writer descriptors use cancellable OS-poll workers because vibeio does not expose arbitrary raw-descriptor registration
  • some transport paths still fall back to helper threads, especially TLS I/O, TLS server accept, and parts of the legacy transport write path

The runtime dependency is now unified, but the codebase has not finished eliminating every helper thread yet.

Transport overload safeguards use conservative defaults: inbound reads pause at 1 MiB of pending data per connection, buffered writes are capped at 64 MiB, and a TLS server admits at most 256 simultaneous handshakes. The last two limits can be adjusted before importing rsloop with RSLOOP_MAX_WRITE_BUFFER_BYTES and RSLOOP_MAX_PENDING_TLS_HANDSHAKES.

Current Limitations

These gaps are visible in the current implementation.

  • TLS uses a rustls backend with a narrower compatibility surface than CPython's OpenSSL-backed ssl module. In particular, encrypted private keys are not supported yet, and the fast-stream monkeypatch still falls back to stdlib helpers whenever ssl is enabled. TLS transport internals also still use helper-thread paths instead of the runtime-thread vibeio socket path.
  • Subprocess support still has one notable gap: preexec_fn remains unsupported because running arbitrary Python between fork() and exec() is unsafe in this runtime model.
  • Unix-specific APIs remain Unix-specific: create_unix_server, create_unix_connection, add_signal_handler, remove_signal_handler.
  • Platform-specific limitations still apply: Unix socket APIs and Unix signal handlers remain Unix-only, and several subprocess options such as pass_fds, user, group, and umask are still specific to Unix process spawning.
  • The transport runtime model is still in transition: plain socket reads and non-TLS accepts now run on the loop runtime thread on all supported platforms, but generic descriptor watches, writes, and TLS-heavy paths are not fully collapsed onto that same single-threaded I/O path yet.

Build

Quick check:

cargo check

Release build and editable install:

cargo build --release
uv run --with maturin maturin develop --release

Build release wheels into dist/wheels:

scripts/build-wheels.sh

Build the published-wheel configuration with profile-guided optimization:

rustup component add llvm-tools-preview
scripts/build-pgo-wheels.sh

For each requested Python ABI, the PGO wrapper creates an instrumented wheel, trains it on sustained HTTP, TLS, WebSocket, mixed-stream, bulk-transfer, idle-connection, callback, task, and TCP workloads, merges the resulting LLVM profiles, and builds that ABI's final wheel with its matching profile. Per-ABI training avoids discarding counters when PyO3's generated control flow differs between Python versions or free-threaded builds. The target must be native because the instrumented extension runs during training.

Set RSLOOP_PGO_SCENARIOS to override the comma-separated network scenarios. Tagged and manually dispatched wheel workflows use PGO on every supported platform except Windows ARM64. Rust profile-generation binaries currently crash on that target (rust-lang/rust#156675), so it temporarily falls back to the normal fat-LTO release build.

scripts/build-wheels.sh currently defaults to CPython 3.10 3.11 3.12 3.13 3.14, and uses uv python install / uv python find to locate interpreters.

Profiling

Profiling is behind the Cargo feature profiler and is disabled by default. Build or install with that feature first:

cargo build --release --features profiler
uv run --with maturin maturin develop --release --features profiler

Then wrap the code you want to inspect:

import rsloop

with rsloop.profile():
    rsloop.run(main())

Or manage the session manually:

import rsloop

rsloop.start_profiler()
try:
    rsloop.run(main())
finally:
    rsloop.stop_profiler()

This starts a Tracy client inside the process. Build a release binary, open the Tracy desktop profiler, then connect to the running process while the profiled code is executing.

Release wheels do not include profiler support. Build locally with --features profiler to enable it. The Tracy feature set is aimed at local profiling: enable, only-localhost, and sampling.

For very short-lived runs you can force the process to block on exit until a server has connected and drained all data by setting TRACY_NO_EXIT=1 in the environment.

If the extension was built without --features profiler, profile() and start_profiler() raise a runtime error.

Examples

Run the repository examples from the project root:

uv run python examples/01_basics.py
uv run python examples/02_fd_and_sockets.py
uv run python examples/03_streams.py
uv run python examples/04_unix_and_accepted_socket.py
uv run python examples/05_pipes_signals_subprocesses.py

Example files: examples/01_basics.py, examples/02_fd_and_sockets.py, examples/03_streams.py, examples/04_unix_and_accepted_socket.py, examples/05_pipes_signals_subprocesses.py.

The repository also includes:

Benchmark

uv run --with maturin maturin develop --release
uv run --with uvloop python benches/compare_event_loops.py

An example output from that script on macOS (arm64) with CPython 3.14:

callbacks (200,000 ops)
loop           median_s       best_s      ops_per_s     peak_rss   vs_fastest    slower_by
rsloop         0.033083     0.032710      6,045,401     67.5 MiB        1.00x         0.0%
uvloop         0.040958     0.040721      4,883,026     72.8 MiB        1.24x        23.8%
asyncio        0.082233     0.082093      2,432,114     65.3 MiB        2.49x       148.6%

tasks (50,000 ops)
loop           median_s       best_s      ops_per_s     peak_rss   vs_fastest    slower_by
rsloop         0.063593     0.063286        786,247     37.6 MiB        1.00x         0.0%
uvloop         0.069614     0.069420        718,251     38.4 MiB        1.09x         9.5%
asyncio        0.108114     0.107502        462,473     36.1 MiB        1.70x        70.0%

tcp_streams (5,000 ops)
loop           median_s       best_s      ops_per_s     peak_rss   vs_fastest    slower_by
rsloop         0.090940     0.083355         54,981     32.2 MiB        1.00x         0.0%
uvloop         0.133182     0.127404         37,543     31.5 MiB        1.46x        46.5%
asyncio        0.302337     0.299813         16,538     29.6 MiB        3.32x       232.5%

The production-shaped workload matrix exercises HTTP, WebSocket libraries, TLS, mixed message sizes, backpressure, and connection lifecycle behavior:

uv run --with uvloop python benches/workload_matrix.py \
  --loops rsloop,uvloop \
  --warmups 1 \
  --repeat 5

Representative output from the same macOS arm64 (Apple M2) / CPython 3.14 release build on August 18, 2026 is below, as the per-scenario median of five runs of that command on an otherwise quiet machine. Throughput is traffic-only operations per second, except for bulk_transfer, which reports traffic MiB/s.

Scenario rsloop uvloop rsloop difference rsloop p95 uvloop p95
HTTP keep-alive 88,616 68,040 +30.2% 0.186 ms 0.283 ms
TLS HTTP 72,530 36,772 +97.2% 0.273 ms 0.498 ms
Raw WebSocket 6,242 6,458 -3.3% 4.271 ms 3.075 ms
Raw WebSocket over TLS 6,026 6,054 -0.5% 2.951 ms 3.403 ms
websockets 40,232 40,210 +0.1% 0.494 ms 0.452 ms
websockets over TLS 41,436 26,895 +54.1% 0.445 ms 0.693 ms
aiohttp WebSocket 51,484 51,128 +0.7% 0.397 ms 0.367 ms
aiohttp WebSocket over TLS 53,765 32,035 +67.8% 0.357 ms 0.568 ms
Starlette WebSocket 29,711 20,412 +45.6% 0.700 ms 1.059 ms
Starlette WebSocket over TLS 34,421 21,290 +61.7% 0.539 ms 0.856 ms
Mixed streams 79,411 48,551 +63.6% 0.253 ms 0.456 ms
Bulk transfer (MiB/s) 4,993.6 2,823.6 +76.9% 6.347 ms 11.291 ms
Idle activation 21,189 21,275 -0.4% 7.843 ms 7.835 ms

Read the idle-activation row as a tie rather than a measurement: its traffic phase is roughly ten milliseconds, and it swung by more than 2x per loop across those five runs. Every other row held within a few percent.

These ordinary matrix defaults are intentionally short enough for local smoke and CI runs. Use --sustained and compare repeated runs before drawing performance conclusions for a deployment — competing desktop load matters more than it looks, because rsloop trades helper-thread CPU for loop-thread work and so has more to lose when cores are contended.

See benches/README.md for workload details and extra flags, and examples/README.md for the FastAPI loop comparison example.

Acknowledgements

rsloop builds on the Python asyncio model and is implemented with PyO3 on the Rust side. Runtime and socket I/O are powered by vibeio.

License

This project is licensed under the Apache License, Version 2.0. See LICENSE for the full text.

Release files for rsloop 0.1.46

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rsloop 0.1.46
File Size Uploaded
rsloop-0.1.46.tar.gz 806.7 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for rsloop 0.1.46
File
rsloop-0.1.46-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details
rsloop-0.1.46-cp314-cp314t-manylinux_2_39_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.39+ x86-64 Details
rsloop-0.1.46-cp314-cp314t-manylinux_2_39_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.39+ ARM64 Details
rsloop-0.1.46-cp314-cp314t-macosx_13_0_x86_64.whl CPython 3.14 CPython 3.14 free-threading macOS 13.0+ x86-64 Details
rsloop-0.1.46-cp314-cp314t-macosx_13_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 13.0+ ARM64 Details
rsloop-0.1.46-cp314-cp314-win_arm64.whl CPython 3.14 CPython 3.14 Windows ARM64 Details
rsloop-0.1.46-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
rsloop-0.1.46-cp314-cp314-manylinux_2_39_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.39+ x86-64 Details
rsloop-0.1.46-cp314-cp314-manylinux_2_39_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.39+ ARM64 Details
rsloop-0.1.46-cp314-cp314-macosx_13_0_x86_64.whl CPython 3.14 CPython 3.14 macOS 13.0+ x86-64 Details
rsloop-0.1.46-cp314-cp314-macosx_13_0_arm64.whl CPython 3.14 CPython 3.14 macOS 13.0+ ARM64 Details
rsloop-0.1.46-cp313-cp313-win_arm64.whl CPython 3.13 CPython 3.13 Windows ARM64 Details
rsloop-0.1.46-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
rsloop-0.1.46-cp313-cp313-manylinux_2_39_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.39+ x86-64 Details
rsloop-0.1.46-cp313-cp313-manylinux_2_39_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.39+ ARM64 Details
rsloop-0.1.46-cp313-cp313-macosx_13_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 13.0+ x86-64 Details
rsloop-0.1.46-cp313-cp313-macosx_13_0_arm64.whl CPython 3.13 CPython 3.13 macOS 13.0+ ARM64 Details
rsloop-0.1.46-cp312-cp312-win_arm64.whl CPython 3.12 CPython 3.12 Windows ARM64 Details
rsloop-0.1.46-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
rsloop-0.1.46-cp312-cp312-manylinux_2_39_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.39+ x86-64 Details
rsloop-0.1.46-cp312-cp312-manylinux_2_39_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.39+ ARM64 Details
rsloop-0.1.46-cp312-cp312-macosx_13_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 13.0+ x86-64 Details
rsloop-0.1.46-cp312-cp312-macosx_13_0_arm64.whl CPython 3.12 CPython 3.12 macOS 13.0+ ARM64 Details
rsloop-0.1.46-cp311-cp311-win_arm64.whl CPython 3.11 CPython 3.11 Windows ARM64 Details
rsloop-0.1.46-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
rsloop-0.1.46-cp311-cp311-manylinux_2_39_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.39+ x86-64 Details
rsloop-0.1.46-cp311-cp311-manylinux_2_39_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.39+ ARM64 Details
rsloop-0.1.46-cp311-cp311-macosx_13_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 13.0+ x86-64 Details
rsloop-0.1.46-cp311-cp311-macosx_13_0_arm64.whl CPython 3.11 CPython 3.11 macOS 13.0+ ARM64 Details
rsloop-0.1.46-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
rsloop-0.1.46-cp310-cp310-manylinux_2_39_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.39+ x86-64 Details
rsloop-0.1.46-cp310-cp310-manylinux_2_39_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.39+ ARM64 Details
rsloop-0.1.46-cp310-cp310-macosx_13_0_x86_64.whl CPython 3.10 CPython 3.10 macOS 13.0+ x86-64 Details
rsloop-0.1.46-cp310-cp310-macosx_13_0_arm64.whl CPython 3.10 CPython 3.10 macOS 13.0+ ARM64 Details

Total release size: 86.6 MB

Release files / rsloop-0.1.46.tar.gz

Download URL rsloop-0.1.46.tar.gz
Size 806.7 kB
Tags Source
SHA-256 checksum
How to use checksums
5d745cce43259a471327faee3de19b61199f08f2cc72f2bf01bfa635f80de528
BLAKE2b-256 checksum
How to use checksums
4e47eb0d54b3c389a08662e453272c6805e1341d16862195fa6d9a7784d56ace
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp314-cp314t-win_amd64.whl

Download URL rsloop-0.1.46-cp314-cp314t-win_amd64.whl
Size 2.3 MB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
54d0cf8572069c22a399be0dfef182c724f677b3d7aa16f917ca2dd18c5d329d
BLAKE2b-256 checksum
How to use checksums
7570a673bb28ca8e6b7962833115f3f68e6b7b95bfbbf0094c4bc8015d21d7e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp314-cp314t-manylinux_2_39_x86_64.whl

Download URL rsloop-0.1.46-cp314-cp314t-manylinux_2_39_x86_64.whl
Size 2.7 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
ec7292a89a0c42e75f9685e9b9ccd2cf317e4a788cdca079d36d1ef29ff0357e
BLAKE2b-256 checksum
How to use checksums
ee7be571a541d8f6cad8cc9f822d9c41c034389affe6b7331caed7a482a85ed8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp314-cp314t-manylinux_2_39_aarch64.whl

Download URL rsloop-0.1.46-cp314-cp314t-manylinux_2_39_aarch64.whl
Size 2.5 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
eaa2ba59d9355ca0a4ca5e19c5b98ec41098bf9239558ce3d9c1d7a0c0bc78e4
BLAKE2b-256 checksum
How to use checksums
70a0db54132f8126acae2e20245fa2cfd3de1e64b0cb4631f24e8cc87c337ed4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp314-cp314t-macosx_13_0_x86_64.whl

Download URL rsloop-0.1.46-cp314-cp314t-macosx_13_0_x86_64.whl
Size 2.7 MB
Tags CPython 3.14 CPython 3.14 free-threading macOS 13.0+ x86-64
SHA-256 checksum
How to use checksums
34a7b7ac78cb19ffd1c880ac66aa78d1adb8fbd09c4b34e7ff35515d99c980e3
BLAKE2b-256 checksum
How to use checksums
97fdbae78908415acce9679ac80d20d3224579393bd398addd3e64e4f5f98bbc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp314-cp314t-macosx_13_0_arm64.whl

Download URL rsloop-0.1.46-cp314-cp314t-macosx_13_0_arm64.whl
Size 2.5 MB
Tags CPython 3.14 CPython 3.14 free-threading macOS 13.0+ ARM64
SHA-256 checksum
How to use checksums
16f641813e6d1d44834a1840a9ad2a440cd41be5a422ec548cff40097f53fa75
BLAKE2b-256 checksum
How to use checksums
78048e66f70a52ddbaa1e613e4e5a9bcfb105e7bfca23245e8b948cabcbd3b9e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp314-cp314-win_arm64.whl

Download URL rsloop-0.1.46-cp314-cp314-win_arm64.whl
Size 2.3 MB
Tags CPython 3.14 Windows ARM64
SHA-256 checksum
How to use checksums
feb03606f3a60420d37c96ef8753c4bdccce510568e07dc2fafa52d587d8e42e
BLAKE2b-256 checksum
How to use checksums
6bfccd63c9b42965a111c1231df659a1520f74680412d21ac38d631d838f89b8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp314-cp314-win_amd64.whl

Download URL rsloop-0.1.46-cp314-cp314-win_amd64.whl
Size 2.3 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
633661fdcab523b3b4e56756e20b0570f05289396de194866a3bb3657d05ea09
BLAKE2b-256 checksum
How to use checksums
13b4c6471e4c0deede56f34d48d76c79720e845047e408bae0baee9da8456cd0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp314-cp314-manylinux_2_39_x86_64.whl

Download URL rsloop-0.1.46-cp314-cp314-manylinux_2_39_x86_64.whl
Size 2.7 MB
Tags CPython 3.14 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
db5018052ebaae337f8f90beab6713b82122bb11f60c4ba9c797225fe51ef136
BLAKE2b-256 checksum
How to use checksums
2bf9fd0420aa5c4a5053db08b40fdfb6a777700624c5a44b253e7624423872c6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp314-cp314-manylinux_2_39_aarch64.whl

Download URL rsloop-0.1.46-cp314-cp314-manylinux_2_39_aarch64.whl
Size 2.5 MB
Tags CPython 3.14 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
9174dc5dea3127a8504c54db5e80f798dddcbec25eeb0036c861a86f23781e0c
BLAKE2b-256 checksum
How to use checksums
6b21e18540dbda96961f5de84a6f44cc630fee962d33fbd364021e7f2ad2f88a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp314-cp314-macosx_13_0_x86_64.whl

Download URL rsloop-0.1.46-cp314-cp314-macosx_13_0_x86_64.whl
Size 2.7 MB
Tags CPython 3.14 macOS 13.0+ x86-64
SHA-256 checksum
How to use checksums
af2ff6f21fc424eb69cf47080756dc9c16115e6dc7ed9faa40d8ecb72d84369a
BLAKE2b-256 checksum
How to use checksums
503ecf99c31c8149c0d98bfe2ce36dcaa0ac3b26a8e6e2d5fa270be0a6568bf4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp314-cp314-macosx_13_0_arm64.whl

Download URL rsloop-0.1.46-cp314-cp314-macosx_13_0_arm64.whl
Size 2.5 MB
Tags CPython 3.14 macOS 13.0+ ARM64
SHA-256 checksum
How to use checksums
8793c7e0e0615af49fa77df8eb703eb409128f6f2a4a97cea5ed3daf31dcd4c7
BLAKE2b-256 checksum
How to use checksums
d394f5f03d1e43154ad658bed3c1e61b5bb9d0e3b22cd2869409b3bb0de7477c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp313-cp313-win_arm64.whl

Download URL rsloop-0.1.46-cp313-cp313-win_arm64.whl
Size 2.3 MB
Tags CPython 3.13 Windows ARM64
SHA-256 checksum
How to use checksums
8dea6f1e82d2348e7dbb5001cb0d1585487fbcf2c805f2d7228f1d01356ec5dc
BLAKE2b-256 checksum
How to use checksums
5556392100b6358ce35efa0ce8d0c4848dbc1f3f53376a78fe9ef649d94bdbed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp313-cp313-win_amd64.whl

Download URL rsloop-0.1.46-cp313-cp313-win_amd64.whl
Size 2.3 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
d23792aad82ae1867521e7b63eab3549df4387ffb24cabf9fbf476bcc89ce21f
BLAKE2b-256 checksum
How to use checksums
57ca207c3ee1379e686b5d36a33181644210d0887a0dd16a13975c8fcb0c21bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp313-cp313-manylinux_2_39_x86_64.whl

Download URL rsloop-0.1.46-cp313-cp313-manylinux_2_39_x86_64.whl
Size 2.7 MB
Tags CPython 3.13 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
09962027c8d9a643add9f95f5feec21f084bf5d6bd17676cb92a48c9ddcf7931
BLAKE2b-256 checksum
How to use checksums
89ebb476dff085d2e03c3a5b2c5758a914baf57ca872a86fb06daea950c831a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp313-cp313-manylinux_2_39_aarch64.whl

Download URL rsloop-0.1.46-cp313-cp313-manylinux_2_39_aarch64.whl
Size 2.5 MB
Tags CPython 3.13 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
325bd05409548c9fcacb5871f98acc7ebf54078dbc41eb9f10f613406a471041
BLAKE2b-256 checksum
How to use checksums
9242f241a04373df7d0e8c9b923d2be0744358f008f2dbd2923fbe9f326e80d9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp313-cp313-macosx_13_0_x86_64.whl

Download URL rsloop-0.1.46-cp313-cp313-macosx_13_0_x86_64.whl
Size 2.7 MB
Tags CPython 3.13 macOS 13.0+ x86-64
SHA-256 checksum
How to use checksums
15ccb80eede0e84ec06a32d581b2d7dbad48ce424ff3433094482308ee35abc3
BLAKE2b-256 checksum
How to use checksums
da8cd54ec1660f1052d0e2b0c4ecc6a22708c817c6390d3d803712411de1f621
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp313-cp313-macosx_13_0_arm64.whl

Download URL rsloop-0.1.46-cp313-cp313-macosx_13_0_arm64.whl
Size 2.5 MB
Tags CPython 3.13 macOS 13.0+ ARM64
SHA-256 checksum
How to use checksums
55f3cc562fabd920a7e6c1b90fc0cfb6a35ee6b44bfb46288070d46dd082b774
BLAKE2b-256 checksum
How to use checksums
c0e31de677046921be8f04657808b0178deb09c5279a8731728b1113a5a546b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp312-cp312-win_arm64.whl

Download URL rsloop-0.1.46-cp312-cp312-win_arm64.whl
Size 2.3 MB
Tags CPython 3.12 Windows ARM64
SHA-256 checksum
How to use checksums
cd71a95491373d4dfe712cd9e6c8bf3833da1093b08052fba7bd90d50e422bd5
BLAKE2b-256 checksum
How to use checksums
e680ed9e3f23decb6ed1dade94564dfec4a325837cdfe29a544ef35f029003fd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp312-cp312-win_amd64.whl

Download URL rsloop-0.1.46-cp312-cp312-win_amd64.whl
Size 2.3 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
3a1d440c5089abe6bccceb833faf420240316f54da3fbd7d0fedf29d28058c51
BLAKE2b-256 checksum
How to use checksums
6177afacc4fe85f8eed118f460980d53d9f029f225efc2696c120df2843d5b5d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp312-cp312-manylinux_2_39_x86_64.whl

Download URL rsloop-0.1.46-cp312-cp312-manylinux_2_39_x86_64.whl
Size 2.7 MB
Tags CPython 3.12 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
c2c45771ab90c1a0f18c0b92e854dda2b5491d6ade0dc0654a5098e1a04006a2
BLAKE2b-256 checksum
How to use checksums
a77193d5a542505bead21bc225c2d337046d5cf702f0fb4925f5930c97dc9ee4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp312-cp312-manylinux_2_39_aarch64.whl

Download URL rsloop-0.1.46-cp312-cp312-manylinux_2_39_aarch64.whl
Size 2.5 MB
Tags CPython 3.12 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
b9529aafac2e670dd80343d01c0b1ade359be738aa09502904facacfd498a3c1
BLAKE2b-256 checksum
How to use checksums
80fbd35056025e1a91ccef94e6e4f10773ffdd820578718481a226cb10090276
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp312-cp312-macosx_13_0_x86_64.whl

Download URL rsloop-0.1.46-cp312-cp312-macosx_13_0_x86_64.whl
Size 2.7 MB
Tags CPython 3.12 macOS 13.0+ x86-64
SHA-256 checksum
How to use checksums
e5aa3e0a3a20c2619f1b695bc9a1f2f5ef546169e944e95c955f92db67591ae7
BLAKE2b-256 checksum
How to use checksums
51e92575158583be4e9aa4b845bc3442c155db89ff659a7c150313446e3b005f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp312-cp312-macosx_13_0_arm64.whl

Download URL rsloop-0.1.46-cp312-cp312-macosx_13_0_arm64.whl
Size 2.5 MB
Tags CPython 3.12 macOS 13.0+ ARM64
SHA-256 checksum
How to use checksums
fc12802fbc454914d59c9786f4da0bcba7f596c9fd5434350da7492a2d5c3f16
BLAKE2b-256 checksum
How to use checksums
adf8243a36af61b12da4af2594c571b9fe7f0379dfc857b65b3faf554e08b6ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp311-cp311-win_arm64.whl

Download URL rsloop-0.1.46-cp311-cp311-win_arm64.whl
Size 2.3 MB
Tags CPython 3.11 Windows ARM64
SHA-256 checksum
How to use checksums
02c99ad3d6b049fb249714a963ba78e04f7945b38d4369c497bd446d30521fb7
BLAKE2b-256 checksum
How to use checksums
f2d4ca93324239506174754aee76f481e777e3c651acb386abe29012cedd8dc7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp311-cp311-win_amd64.whl

Download URL rsloop-0.1.46-cp311-cp311-win_amd64.whl
Size 2.3 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
774aa512c2bd55a48b84034079e50d2f3a8dcff155eb72edf88ec9263010d4fa
BLAKE2b-256 checksum
How to use checksums
f96c1750213edfcd71c41a4a47b29a5d7fa68e07ab5871315d8c7919b71276ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp311-cp311-manylinux_2_39_x86_64.whl

Download URL rsloop-0.1.46-cp311-cp311-manylinux_2_39_x86_64.whl
Size 2.7 MB
Tags CPython 3.11 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
4704fbe90ad6495108043197a95ff619bb127ee2af360a6ea316cd3fba3297b2
BLAKE2b-256 checksum
How to use checksums
9bc58682453f2f464e32611743b1bff4134bfdba1a184d15f6de28745cc5e2fb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp311-cp311-manylinux_2_39_aarch64.whl

Download URL rsloop-0.1.46-cp311-cp311-manylinux_2_39_aarch64.whl
Size 2.5 MB
Tags CPython 3.11 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
f64bbab5e48a93c5dd7cf2e9a89140bd6362846b0893f41fb7613d5c52db359c
BLAKE2b-256 checksum
How to use checksums
5fd6d4d551d862934ca1b5d31b8a13e4d530ee9309708257edf1eefc2625e1a6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp311-cp311-macosx_13_0_x86_64.whl

Download URL rsloop-0.1.46-cp311-cp311-macosx_13_0_x86_64.whl
Size 2.6 MB
Tags CPython 3.11 macOS 13.0+ x86-64
SHA-256 checksum
How to use checksums
201c0b6e2e06fc8ca7e5cc609782a565d4b02ed806244b73fa4e3ee3d757e582
BLAKE2b-256 checksum
How to use checksums
ab93ec18f3e2bdeae4f37e9a8b21a0b34cba9e687699a926dba7ff0cd01917f2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp311-cp311-macosx_13_0_arm64.whl

Download URL rsloop-0.1.46-cp311-cp311-macosx_13_0_arm64.whl
Size 2.5 MB
Tags CPython 3.11 macOS 13.0+ ARM64
SHA-256 checksum
How to use checksums
5f39bf783b86a2c0487cdf7fce5b11f47fb1231d5c8777e54dc71d7101652770
BLAKE2b-256 checksum
How to use checksums
ccaf9d05bd32067c3b1a09e6f5204b56b9ba38106052602926dbb3f35400a619
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp310-cp310-win_amd64.whl

Download URL rsloop-0.1.46-cp310-cp310-win_amd64.whl
Size 2.3 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
3f4f63b74ec6d5ed5f59cfa21379254c09931b801e3981cb328e96d1220bd4ee
BLAKE2b-256 checksum
How to use checksums
cf8f91e61a5f5cfcee04e6c983a6bc4ffe71c18e27fa64ba7700c11bb1b0aa1b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp310-cp310-manylinux_2_39_x86_64.whl

Download URL rsloop-0.1.46-cp310-cp310-manylinux_2_39_x86_64.whl
Size 2.7 MB
Tags CPython 3.10 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
e5c746da80ca0b894d68f5e1dda909da9b07adebf44d73cb029acbf5da3a0a90
BLAKE2b-256 checksum
How to use checksums
186fbb6d5c44c22a2ab515168015080b438a4745668b913108d449667351ed43
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp310-cp310-manylinux_2_39_aarch64.whl

Download URL rsloop-0.1.46-cp310-cp310-manylinux_2_39_aarch64.whl
Size 2.5 MB
Tags CPython 3.10 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
ac7c47ad719074b6fa28f638c8d0c20f413e21cdc90715281263b989208fb040
BLAKE2b-256 checksum
How to use checksums
5c96cf231bdd6ecb1fb32003378de1e41c27db79c178276a81adb17d0a01af1d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp310-cp310-macosx_13_0_x86_64.whl

Download URL rsloop-0.1.46-cp310-cp310-macosx_13_0_x86_64.whl
Size 2.6 MB
Tags CPython 3.10 macOS 13.0+ x86-64
SHA-256 checksum
How to use checksums
73407ada4222b036b8b76abe0285554123f6169e0801e048b48475e66e8ef1c0
BLAKE2b-256 checksum
How to use checksums
e0e4b134c19448303c7e8c0ee012050ff57abc53c7070d57632a376d6008197b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / rsloop-0.1.46-cp310-cp310-macosx_13_0_arm64.whl

Download URL rsloop-0.1.46-cp310-cp310-macosx_13_0_arm64.whl
Size 2.5 MB
Tags CPython 3.10 macOS 13.0+ ARM64
SHA-256 checksum
How to use checksums
a824270eb41e02e6e5409587613824a32ce4dca76f6f62690da715ea1c924ae6
BLAKE2b-256 checksum
How to use checksums
62a0435a2c85b2b9a05df6427271d721423a09b1930c2417efdb501ec9047ff8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.46 This release

35 release files

0.1.9

38 release files

0.1.8

38 release files

0.1.7

38 release files

0.1.6

38 release files

0.1.5

38 release files

0.1.4

38 release files

0.1.3

38 release files

0.1.2

25 release files

0.1.1

17 release files

0.1.0

9 release 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