Skip to main content

True async filesystem I/O — no fake async, no GIL stalls.

Project description

rapfiles

True async filesystem I/O — no fake async, no GIL stalls.

PyPI version Downloads Python 3.8+ License: MIT

Overview

rapfiles provides true async filesystem I/O operations for Python, backed by Rust and Tokio. Unlike libraries that wrap blocking I/O in async syntax, rapfiles guarantees that all I/O work executes outside the Python GIL, ensuring event loops never stall under load.

Roadmap Goal: Achieve drop-in replacement compatibility with aiofiles, enabling seamless migration with true async performance. See docs/ROADMAP.md for details.

Why rap*?

Packages prefixed with rap stand for Real Async Python. Unlike many libraries that merely wrap blocking I/O in async syntax, rap* packages guarantee that all I/O work is executed outside the Python GIL using native runtimes (primarily Rust). This means event loops are never stalled by hidden thread pools, blocking syscalls, or cooperative yielding tricks. If a rap* API is async, it is structurally non-blocking by design, not by convention. The rap prefix is a contract: measurable concurrency, real parallelism, and verifiable async behavior under load.

See the rap-manifesto for philosophy and guarantees.

Features

  • True async file reads and writes
  • Native Rust-backed execution (Tokio)
  • Zero Python thread pools
  • Event-loop-safe concurrency under load
  • GIL-independent I/O operations
  • Verified by Fake Async Detector
  • aiofiles compatibility (drop-in replacement)

Feature Categories

Requirements

  • Python 3.8+ (including Python 3.13 and 3.14)
  • Rust 1.70+ (for building from source)

Installation

pip install rapfiles

Building from Source

git clone https://github.com/eddiethedean/rapfiles.git
cd rapfiles
pip install maturin
maturin develop

Development Setup

For development with testing support:

git clone https://github.com/eddiethedean/rapfiles.git
cd rapfiles
pip install -e ".[test]"

This installs the package in editable mode along with testing dependencies (pytest, pytest-asyncio, aiofiles).

Run tests:

pytest

Usage

Basic File Operations

import asyncio
from rapfiles import read_file, write_file

async def main():
    # Write file asynchronously (true async, GIL-independent)
    await write_file("example.txt", "Hello from rapfiles!")
    
    # Read file asynchronously (true async, GIL-independent)
    content = await read_file("example.txt")
    print(content)
    # Output: Hello from rapfiles!
    
    # Write another file
    await write_file("output.txt", content)

asyncio.run(main())

Binary Files

import asyncio
from rapfiles import read_file_bytes, write_file_bytes

async def main():
    # Write binary data
    await write_file_bytes("image.png", image_data)
    
    # Read binary data
    data = await read_file_bytes("image.png")

asyncio.run(main())

File Handles

import asyncio
from rapfiles import open

async def main():
    # Open file with async context manager
    async with open("file.txt", "r") as f:
        content = await f.read()
        print(content)
    
    # Write mode
    async with open("output.txt", "w") as f:
        await f.write("Hello, world!")
    
    # Binary mode
    async with open("image.png", "rb") as f:
        data = await f.read()
    
    # Read lines
    async with open("file.txt", "r") as f:
        line = await f.readline()
        lines = await f.readlines()

asyncio.run(main())

Concurrent File Operations

import asyncio
from rapfiles import read_file, write_file

async def main():
    # Process multiple files concurrently
    tasks = [
        write_file("file1.txt", "Content 1"),
        write_file("file2.txt", "Content 2"),
        write_file("file3.txt", "Content 3"),
    ]
    await asyncio.gather(*tasks)
    
    # Read all files concurrently
    contents = await asyncio.gather(
        read_file("file1.txt"),
        read_file("file2.txt"),
        read_file("file3.txt"),
    )
    print(contents)
    # Output: ['Content 1', 'Content 2', 'Content 3']

asyncio.run(main())

Documentation

Comprehensive documentation is available in the docs/ directory:

Feature Documentation

Project Documentation

Benchmarks

This package passes the Fake Async Detector. Benchmarks are available in the rap-bench repository.

Run the detector yourself:

pip install rap-bench
rap-bench detect rapfiles

Current Status (v0.2.0)

Phase 1 Complete ✅:

  • ✅ File handle operations (AsyncFile class with async with support)
  • ✅ File operations: read(), write(), readline(), readlines(), seek(), tell()
  • ✅ Binary file operations: read_file_bytes(), write_file_bytes()
  • ✅ Append operations: append_file()
  • ✅ Directory operations: create_dir(), create_dir_all(), remove_dir(), remove_dir_all(), list_dir()
  • ✅ Path checking: exists(), is_file(), is_dir()
  • ✅ Directory traversal: walk_dir() for recursive directory walking
  • ✅ File metadata: stat(), metadata(), FileMetadata class
  • ✅ Path operations: rapfiles.ospath module (aiofiles.ospath compatible)
  • ✅ aiofiles compatibility: Drop-in replacement for basic aiofiles operations

Phase 2 Complete ✅:

  • ✅ File manipulation: copy_file(), move_file(), rename(), remove_file()
  • ✅ Link operations: hard_link(), symlink(), canonicalize()
  • ✅ Atomic operations: atomic_write_file(), atomic_write_file_bytes(), atomic_move_file()
  • ✅ File locking: lock_file(), lock_file_shared() with FileLock class
  • ✅ Batch operations: read_files(), write_files(), copy_files() with concurrent execution
  • ✅ Comprehensive test suite: 188+ tests covering all Phase 1 and Phase 2 features
  • ✅ Type stubs: Complete .pyi files for IDE support
  • ✅ Code quality: Ruff formatted and linted, clippy checked

Known Limitations:

  • buffering, encoding, errors, newline, closefd, opener parameters accepted for API compatibility but not yet fully implemented
  • No streaming operations for large files (planned for Phase 3)
  • No file watching capabilities (planned for future phases)
  • No advanced I/O patterns like zero-copy (planned for future phases)

Roadmap: See docs/ROADMAP.md for planned improvements. Phase 1 (aiofiles compatibility) and Phase 2 (advanced operations) are complete. Future phases will add streaming operations and advanced optimizations.

Related Projects

Contributing

Contributions are welcome! Please see our contributing guidelines (coming soon).

License

MIT

For detailed release notes, see CHANGELOG.md.

Project details


Download files

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

Source Distribution

rapfiles-0.2.1.tar.gz (87.0 kB view details)

Uploaded Source

Built Distributions

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

rapfiles-0.2.1-cp314-cp314-win_arm64.whl (885.4 kB view details)

Uploaded CPython 3.14Windows ARM64

rapfiles-0.2.1-cp314-cp314-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.14Windows x86-64

rapfiles-0.2.1-cp314-cp314-manylinux_2_28_x86_64.whl (965.8 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

rapfiles-0.2.1-cp314-cp314-manylinux_2_28_aarch64.whl (951.6 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

rapfiles-0.2.1-cp314-cp314-macosx_11_0_arm64.whl (905.2 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

rapfiles-0.2.1-cp314-cp314-macosx_10_12_x86_64.whl (911.6 kB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

rapfiles-0.2.1-cp313-cp313-win_arm64.whl (884.9 kB view details)

Uploaded CPython 3.13Windows ARM64

rapfiles-0.2.1-cp313-cp313-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.13Windows x86-64

rapfiles-0.2.1-cp313-cp313-manylinux_2_28_x86_64.whl (965.1 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

rapfiles-0.2.1-cp313-cp313-manylinux_2_28_aarch64.whl (951.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

rapfiles-0.2.1-cp313-cp313-macosx_11_0_arm64.whl (905.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

rapfiles-0.2.1-cp313-cp313-macosx_10_12_x86_64.whl (913.1 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

rapfiles-0.2.1-cp312-cp312-win_arm64.whl (889.3 kB view details)

Uploaded CPython 3.12Windows ARM64

rapfiles-0.2.1-cp312-cp312-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.12Windows x86-64

rapfiles-0.2.1-cp312-cp312-manylinux_2_28_x86_64.whl (964.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

rapfiles-0.2.1-cp312-cp312-manylinux_2_28_aarch64.whl (952.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

rapfiles-0.2.1-cp312-cp312-macosx_11_0_arm64.whl (908.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

rapfiles-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl (915.3 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

rapfiles-0.2.1-cp311-cp311-win_arm64.whl (888.2 kB view details)

Uploaded CPython 3.11Windows ARM64

rapfiles-0.2.1-cp311-cp311-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.11Windows x86-64

rapfiles-0.2.1-cp311-cp311-manylinux_2_28_x86_64.whl (965.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

rapfiles-0.2.1-cp311-cp311-manylinux_2_28_aarch64.whl (954.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

rapfiles-0.2.1-cp311-cp311-macosx_11_0_arm64.whl (912.6 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

rapfiles-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl (917.6 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

rapfiles-0.2.1-cp310-cp310-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.10Windows x86-64

rapfiles-0.2.1-cp310-cp310-manylinux_2_28_x86_64.whl (965.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

rapfiles-0.2.1-cp310-cp310-manylinux_2_28_aarch64.whl (952.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

rapfiles-0.2.1-cp310-cp310-macosx_11_0_arm64.whl (912.5 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

rapfiles-0.2.1-cp310-cp310-macosx_10_12_x86_64.whl (918.3 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

rapfiles-0.2.1-cp39-cp39-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.9Windows x86-64

rapfiles-0.2.1-cp39-cp39-manylinux_2_28_x86_64.whl (967.5 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

rapfiles-0.2.1-cp39-cp39-manylinux_2_28_aarch64.whl (955.4 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ ARM64

rapfiles-0.2.1-cp39-cp39-macosx_11_0_arm64.whl (915.1 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

rapfiles-0.2.1-cp39-cp39-macosx_10_12_x86_64.whl (920.4 kB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

rapfiles-0.2.1-cp38-cp38-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.8Windows x86-64

rapfiles-0.2.1-cp38-cp38-manylinux_2_28_x86_64.whl (969.1 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.28+ x86-64

rapfiles-0.2.1-cp38-cp38-manylinux_2_28_aarch64.whl (958.3 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.28+ ARM64

rapfiles-0.2.1-cp38-cp38-macosx_11_0_arm64.whl (915.6 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

rapfiles-0.2.1-cp38-cp38-macosx_10_12_x86_64.whl (922.8 kB view details)

Uploaded CPython 3.8macOS 10.12+ x86-64

File details

Details for the file rapfiles-0.2.1.tar.gz.

File metadata

  • Download URL: rapfiles-0.2.1.tar.gz
  • Upload date:
  • Size: 87.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for rapfiles-0.2.1.tar.gz
Algorithm Hash digest
SHA256 fefa4f99e29ebe24e0f6b0dd66e04ab49f9df2d033141c2535f9199fc707c303
MD5 1a5956118d2be07e5f939b861a5d07e2
BLAKE2b-256 7312633ed0b3d8c0e09e8258d48fbd2d8b1b3961016bcc3ebec19c7a981480ff

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp314-cp314-win_arm64.whl.

File metadata

  • Download URL: rapfiles-0.2.1-cp314-cp314-win_arm64.whl
  • Upload date:
  • Size: 885.4 kB
  • Tags: CPython 3.14, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for rapfiles-0.2.1-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 5e68175ec4009e2d6a2e2fddc608310141b5a1d05ce8a01270e447712b212d6a
MD5 ac285af16e0b51014bbf0caf3e4eba4b
BLAKE2b-256 bc29749870aefb3c7c0ef6a3ed290b16d828b0b6218f85d37284052f6d251021

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: rapfiles-0.2.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for rapfiles-0.2.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 bba88653d97ee3649c52c05de25911b13b1d0a51cf6609ed9b460ed57a1d8381
MD5 52c1f01ded32a04147511e365bcb1aa7
BLAKE2b-256 ec106ead6a79f0dc0cb149745a61c319fe57b53b87a5e9ebecc6324b02c10586

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 187c58f4d901c84b77c2e3bfd145e8d2853c5f6e2604eacdb4882d6f219a900e
MD5 5d15c63139bc144c0ea0e897440f3c2d
BLAKE2b-256 8ceaac04518f8a02e8deb4f98af3d7bbceb7d6e18eb0b0fe65ff80845602e350

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp314-cp314-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 bca9a335f127d955b1f4a7b874eb72ffeb40890f5f77a7a89ddc5d5e8a7ac97b
MD5 9b1ea5497daae2c0b438b234014328ac
BLAKE2b-256 fbee6ffe454d3bbbaddadb501fd92c74011f5f2885e08eb631eeda8ef04f8fa8

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a494879cd0af4e7365223f0cf1319d8dde30ba4e6526b8eacfdba3413223f4c2
MD5 14cdb77725042b768aa6c8d56d3922fc
BLAKE2b-256 db05d8ab0453ba5bacc3ebe83cc5759eb3df6c53babf6f7fe400db6cbd13a357

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 63349e30cb74d6e4ebc6f710f8f001a4dcab06a24d3b926e2653cc00d4ca8a82
MD5 16200f1420dc3fcd6009afc9cdcafcc4
BLAKE2b-256 62c0c56ce0f18a2b0f689580af614ad3648fcda4543dd8c6bf5ccfcdf5c669be

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp313-cp313-win_arm64.whl.

File metadata

  • Download URL: rapfiles-0.2.1-cp313-cp313-win_arm64.whl
  • Upload date:
  • Size: 884.9 kB
  • Tags: CPython 3.13, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for rapfiles-0.2.1-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 70905ce8652d86d35ed0811a3bf49e4db685f72c039b37a1528377180587a971
MD5 a244219477762bcbe240f88410cc8c3c
BLAKE2b-256 38449a59d2cef8c65a5e71b4d06aa517ad84531565c14106aef8c390733295dd

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: rapfiles-0.2.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for rapfiles-0.2.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 529406f060edd47a6fabdfc120d880266d174eeb936e99456e4caf1a2f3aebd6
MD5 86385c4cb2a51e90cdae85a9ff13ecd8
BLAKE2b-256 8edc063ba3c672d1eb88b8e984d8f1d2e8e1fb8d11015a053b0e1aeb7d1739dd

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a4b4d49a5bc31f7951be4718da0ce4eb604607876995716eec18ad08bcfbbac8
MD5 94e5ea3acf2363d07c9864e4b208f276
BLAKE2b-256 da595d96b8b3979ba11bc4eb822cb9b37865d0f7bd01437f33d47d38afab2a1d

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0a346546bb346ed1f64d4cb316fef149c6c385021d5ede1e6913bc3eb01b3b1f
MD5 1fca6b1eb6ffb54ec19e23152f1a94a2
BLAKE2b-256 f646bd6c81710d061ccb9ef8a38c3083b4db2c313fde81e0ccdb2668fdaabf17

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8fe094adf47fd62ecc58306b3fb80e1f40d399610ca0a9f5b83e52e2b60040b3
MD5 0efb68af6ae48a8ccd387b1c7697f4fa
BLAKE2b-256 5cc2518921a5819d25a284a8754833206af84a077e771b185868e1f5d2c8586b

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 cd50e2e6aa78814eac264db4b41415631203147d424ea4a1a1372ed503794d94
MD5 870f0e9170276897a7066b3e6e8efd62
BLAKE2b-256 b89a79b36f321beff6f00ccb595ac62191784ad25ecb2700adf6784621675a74

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp312-cp312-win_arm64.whl.

File metadata

  • Download URL: rapfiles-0.2.1-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 889.3 kB
  • Tags: CPython 3.12, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for rapfiles-0.2.1-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 62dffad54105fff7b801650b7f33f9324ae94eb360e7cc51712fe5f1ab5ed20b
MD5 95e7708f619b73139591692e36c49a90
BLAKE2b-256 ccdd7c283294c5871d5ec918c2e5f565174c39c479d62f21ca52d3f9dedaf7a2

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: rapfiles-0.2.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for rapfiles-0.2.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 00596db5a15d2054ba96b094dc7ed31b83e0e052f93a82c7defa340e66290b21
MD5 119683d3f80c6c928df48ce6f28be274
BLAKE2b-256 6fd89cba864484ab8d75d99c449769bff10a24cf3a61dbd27d148f1cb2b4ad4b

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a2da2449280e75473c42de618b897de1671daa45366131d850e9e5cd476e8f41
MD5 fc49f9de09787da879cf71f8ed84b38d
BLAKE2b-256 32c87e5a9b2cabf2acdd3043f4730182e604faeca95a148c73e876ede53d04b0

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 05e05a6fcad27fa63dbb521e9e91297ba4e120f803ecd554310903ee53a62c4c
MD5 2a5ebaf1233ca980e2e210cc72be85ec
BLAKE2b-256 2de88fab944ca78363ad501f7e579d44c63138780bb009fffbc118eacbac3c9c

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2a5252e93df160ca9e2397e10d55dfdc662f1705042371073fec37b05127ab93
MD5 0798ea7f9e4bf4c56ba16be828f79eef
BLAKE2b-256 0b6d2d24536243872c5e672604fdd7df386e03926ce005ace694e1c5c86ebc9f

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 cbf28b8fd1811ca4957fa210d192dc3f8f29ec9663716fc89e4502498ada2486
MD5 ef46dcf888ff2224fc8468b53326ba9f
BLAKE2b-256 9b9a798b372ed3c5f3b6f7dcb3ff5ee7a7c6d8e144bd9b6c6f21fad0fb9a27a5

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp311-cp311-win_arm64.whl.

File metadata

  • Download URL: rapfiles-0.2.1-cp311-cp311-win_arm64.whl
  • Upload date:
  • Size: 888.2 kB
  • Tags: CPython 3.11, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for rapfiles-0.2.1-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 f1c97677a79d7c5098f7ec963c16a53c49ed77a2dee9169d1112583da8ef20f7
MD5 3970752db61563c529cbae2c9db2a2ea
BLAKE2b-256 ffe34256afcac6f0c95ca3916f74e43a630a3cdf01b9f4c016ca638a0984190b

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: rapfiles-0.2.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for rapfiles-0.2.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 1fc5d72c608c7d963fe7e2ba3b9235529e6f18a8dd5ae671c5fe5478da488f91
MD5 7eb7336954b98e131f1afdaa4ff1afc6
BLAKE2b-256 d4f4fa14b0f0697453b43e91d39d33858ae31da2aa57834f52832c3bbf0fbcff

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c4df3d4f782ef2f108f9338b1474168a3d9e1afeca1b42978622ceb5d42ae695
MD5 86b056101f4e3d5958f75b578614041a
BLAKE2b-256 f491a531aff02c03c9e4bf83cbcc980e343dbccd4265284b6a3a1769a346966b

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 fdddc2765f9b6454ff3270b79cf3347efef447682b6992d25e2c6512466c42ef
MD5 20b5af3e3814f9283fb828fa93bc38fc
BLAKE2b-256 a187cf6dc62a8dc09a0fc1ce0d2ae8de67a1cf8112e5e375dbe6d78144fb9890

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 43368701469c3cbae4fdfc6d86890d3539eedfbdbeb7d394ed1e1f449876964a
MD5 9e381b1d1faecefd2ca6244c272195c5
BLAKE2b-256 cb34e07577152003191c6b12bd210d5765f8d96683d7cb3459fed7c37e7a0090

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a09fa0bc09c762e737e0518568c55b5bce2ca9ff27e70d5b2b6346c33a86c007
MD5 ab8ae9fdbaf94806a2354432d18c60a8
BLAKE2b-256 4cc39f4ea79a0b6d489aee91934d168ed23ea884cb844546b75634b28b55b3f0

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: rapfiles-0.2.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for rapfiles-0.2.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 62ea1703e8a50d0cf85e0a0265ef4a7374dac1163234782258568c4e2f10543f
MD5 9b09664d34793f3e4eb6178837d6965d
BLAKE2b-256 48b9402395fa80e9befe5643393f19928b4328af2a7d3c2988a7def4263bddd6

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 60fc186ec6824e5c8b13e4194198791ca56c4e6ab48de8310283d292127118b6
MD5 62b61403843a4c5a68c7d5a2b7d1b86f
BLAKE2b-256 ee29e34dab4333bd069bb1c1407edcdc70947d588a4226f2363009590a35fee5

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9ec539a913e5379741a9ce3c52ab8e2da090a4c169aa7d12d47130e55bbccee8
MD5 029a41eddab06085ce0768f6f001dfde
BLAKE2b-256 3db2f57f32c55707823828fc60828d21b7b455fd705db95c1b8e0aee917dffee

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 621ffe44f26521381af6a6b3db8f26dd81130dd1f63faa5b5fc92170b1543241
MD5 0f024c1c8cc43f55417ef86d996c1009
BLAKE2b-256 f5fe1cf688287973e1e4cc2d8d18e9cf8b2ea4849fb8a32afb4221a86e33cc55

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 bec637efc69a0030a3c4ef2790cfd5f40c569fe2c52f3019083cf7a666c84b4b
MD5 036f3d4266c8d2b048f49bcf91c07158
BLAKE2b-256 ac023c57a393e8d9b26ba48583de7502cbac0011c726d0e92f8e3d1c3cb50d77

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: rapfiles-0.2.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for rapfiles-0.2.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 b2cd3f92a82e60e5c7693afa91259a0033c2b4a3e2b514c3493525a861825475
MD5 3cbfdacfffd2805e673fafc98e23a105
BLAKE2b-256 63018c6e47c306eec4cab2ed34dc6be3c747e70ad2f398308be09cb8997f9b7a

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 11a540ed5cdd1a2158f4bc8ac39bce72c78d86aea3fdc156d2c956c41d66ace9
MD5 58a4d87024bccc898b8cd8c02a9b7373
BLAKE2b-256 fefe043b9d4841a8ea3cc51e9de88f80f84d29137f911f004e013944e146a22b

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp39-cp39-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp39-cp39-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 40e3790f30208f5b1bf589185b955a9532ba6b37195b79807a082553a63abd88
MD5 7f5643f286c2ddb4df272ddf1441aea7
BLAKE2b-256 d3fe15d5a39ca33bc7c1ccd4e9dc4ca4d4eb99c5ba8a5feedb54c59db2a5ee53

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b107a7b5644a56f3b6af9464516d23f98ab318ce0842205dade276444f728771
MD5 91f72f3a706c2723b9c295d0c2b36fe5
BLAKE2b-256 4afb413bc6bf528db32fa30803fbdf505187397e8fe45ca8c2a38e375f7c40f8

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c9986301905928500bf6dccc2fc88d8c0ae9249b5487ae613b2843146186d088
MD5 f537abab4eff5ed171852f9123b9996f
BLAKE2b-256 cce68ddb78e773ff72922e656bb1ed30235db9f72e5dd7bc757750b75c42f71a

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: rapfiles-0.2.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for rapfiles-0.2.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 7bfaef6e04a31fd3f0d5bc417698341bb2ac1529188ec947f455ede18db50e39
MD5 63f53518b32d95ab73be9fa2407d857a
BLAKE2b-256 6e35fa25034091609d53a6ac170ecbb59048d5807141b617dd1298bdb34cc11a

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp38-cp38-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp38-cp38-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0877841fef9c7b9af553ded27f1e5d35a660cc7e2b645f5b1be321fdb0587365
MD5 c68096327616d7b5bb58b9b6535f619e
BLAKE2b-256 d36999ebcb760418106c74f903b932ea5faaf768b5789f64ea7f0b89dea1f8c9

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp38-cp38-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp38-cp38-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4a88481c6dded15377ea65db9e8a0ec6976b4f97beead7218eee1966f4ca0670
MD5 6d2ebaff7c181f8fbc263f04bb9fefce
BLAKE2b-256 426ca6f8401e6ce9b8eb2992d4731edda3c50297ad00caa943d36796fe882ee0

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 df20cc312c2197a405282c7ca46e63ab428f95737e316f613dd392d2067d5c1b
MD5 5b121c1bea9d601d88ece3f868a838f4
BLAKE2b-256 bd768cff7bdcdee0e1ebbb0d13d7e3685bffbe66644060c731c8f87c8bc586c5

See more details on using hashes here.

File details

Details for the file rapfiles-0.2.1-cp38-cp38-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rapfiles-0.2.1-cp38-cp38-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 44b730e930ee7809d7f91b38f897b4a447bcf77a838b0cea9c4468555d2d8262
MD5 7ab98372715d1c5599b9502e168968f6
BLAKE2b-256 86433ea3562633b2155a733f6b0ec129a2b5f3a431e65f0d3cb633f462c9d508

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page