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.
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
- File Operations - Read, write, append (text and binary)
- File Handles - Async context managers (
async with) - Directory Operations - Create, remove, list, walk directories
- File Metadata - Get file statistics, sizes, timestamps
- File Manipulation - Copy, move, rename, remove, links
- Atomic Operations - Atomic writes and moves
- File Locking - Shared/exclusive advisory locks
- Batch Operations - Concurrent read/write/copy of multiple files
- Path Operations - Synchronous path utilities (
rapfiles.ospath)
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
- Directory Operations - Creating, removing, listing, and walking directories
- File Metadata - Getting file statistics, sizes, and timestamps
- File Manipulation - Copying, moving, renaming, removing, and linking files
- Atomic Operations - Atomic file writes and moves for data integrity
- File Locking - Advisory file locks for coordinating access
- Batch Operations - Concurrent processing of multiple files
- Path Operations - Synchronous path utilities (
rapfiles.ospath) - API Reference - Complete API documentation
Project Documentation
- Roadmap - Detailed development plans and feature roadmap
- Build and Test - Local development setup instructions
- Release Notes - Version history and changes
- Changelog - Detailed changelog
- Security - Security policy and vulnerability reporting
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 (
AsyncFileclass withasync withsupport) - ✅ 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(),FileMetadataclass - ✅ Path operations:
rapfiles.ospathmodule (aiofiles.ospath compatible) - ✅ aiofiles compatibility: Drop-in replacement for basic
aiofilesoperations
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()withFileLockclass - ✅ 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
.pyifiles for IDE support - ✅ Code quality: Ruff formatted and linted, clippy checked
Known Limitations:
buffering,encoding,errors,newline,closefd,openerparameters 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
- rap-manifesto - Philosophy and guarantees
- rap-bench - Fake Async Detector CLI
- rapsqlite - True async SQLite
- rapcsv - Streaming async CSV
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
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fefa4f99e29ebe24e0f6b0dd66e04ab49f9df2d033141c2535f9199fc707c303
|
|
| MD5 |
1a5956118d2be07e5f939b861a5d07e2
|
|
| BLAKE2b-256 |
7312633ed0b3d8c0e09e8258d48fbd2d8b1b3961016bcc3ebec19c7a981480ff
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e68175ec4009e2d6a2e2fddc608310141b5a1d05ce8a01270e447712b212d6a
|
|
| MD5 |
ac285af16e0b51014bbf0caf3e4eba4b
|
|
| BLAKE2b-256 |
bc29749870aefb3c7c0ef6a3ed290b16d828b0b6218f85d37284052f6d251021
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bba88653d97ee3649c52c05de25911b13b1d0a51cf6609ed9b460ed57a1d8381
|
|
| MD5 |
52c1f01ded32a04147511e365bcb1aa7
|
|
| BLAKE2b-256 |
ec106ead6a79f0dc0cb149745a61c319fe57b53b87a5e9ebecc6324b02c10586
|
File details
Details for the file rapfiles-0.2.1-cp314-cp314-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp314-cp314-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 965.8 kB
- Tags: CPython 3.14, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
187c58f4d901c84b77c2e3bfd145e8d2853c5f6e2604eacdb4882d6f219a900e
|
|
| MD5 |
5d15c63139bc144c0ea0e897440f3c2d
|
|
| BLAKE2b-256 |
8ceaac04518f8a02e8deb4f98af3d7bbceb7d6e18eb0b0fe65ff80845602e350
|
File details
Details for the file rapfiles-0.2.1-cp314-cp314-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp314-cp314-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 951.6 kB
- Tags: CPython 3.14, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bca9a335f127d955b1f4a7b874eb72ffeb40890f5f77a7a89ddc5d5e8a7ac97b
|
|
| MD5 |
9b1ea5497daae2c0b438b234014328ac
|
|
| BLAKE2b-256 |
fbee6ffe454d3bbbaddadb501fd92c74011f5f2885e08eb631eeda8ef04f8fa8
|
File details
Details for the file rapfiles-0.2.1-cp314-cp314-macosx_11_0_arm64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp314-cp314-macosx_11_0_arm64.whl
- Upload date:
- Size: 905.2 kB
- Tags: CPython 3.14, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a494879cd0af4e7365223f0cf1319d8dde30ba4e6526b8eacfdba3413223f4c2
|
|
| MD5 |
14cdb77725042b768aa6c8d56d3922fc
|
|
| BLAKE2b-256 |
db05d8ab0453ba5bacc3ebe83cc5759eb3df6c53babf6f7fe400db6cbd13a357
|
File details
Details for the file rapfiles-0.2.1-cp314-cp314-macosx_10_12_x86_64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp314-cp314-macosx_10_12_x86_64.whl
- Upload date:
- Size: 911.6 kB
- Tags: CPython 3.14, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
63349e30cb74d6e4ebc6f710f8f001a4dcab06a24d3b926e2653cc00d4ca8a82
|
|
| MD5 |
16200f1420dc3fcd6009afc9cdcafcc4
|
|
| BLAKE2b-256 |
62c0c56ce0f18a2b0f689580af614ad3648fcda4543dd8c6bf5ccfcdf5c669be
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
70905ce8652d86d35ed0811a3bf49e4db685f72c039b37a1528377180587a971
|
|
| MD5 |
a244219477762bcbe240f88410cc8c3c
|
|
| BLAKE2b-256 |
38449a59d2cef8c65a5e71b4d06aa517ad84531565c14106aef8c390733295dd
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
529406f060edd47a6fabdfc120d880266d174eeb936e99456e4caf1a2f3aebd6
|
|
| MD5 |
86385c4cb2a51e90cdae85a9ff13ecd8
|
|
| BLAKE2b-256 |
8edc063ba3c672d1eb88b8e984d8f1d2e8e1fb8d11015a053b0e1aeb7d1739dd
|
File details
Details for the file rapfiles-0.2.1-cp313-cp313-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp313-cp313-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 965.1 kB
- Tags: CPython 3.13, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a4b4d49a5bc31f7951be4718da0ce4eb604607876995716eec18ad08bcfbbac8
|
|
| MD5 |
94e5ea3acf2363d07c9864e4b208f276
|
|
| BLAKE2b-256 |
da595d96b8b3979ba11bc4eb822cb9b37865d0f7bd01437f33d47d38afab2a1d
|
File details
Details for the file rapfiles-0.2.1-cp313-cp313-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp313-cp313-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 951.8 kB
- Tags: CPython 3.13, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0a346546bb346ed1f64d4cb316fef149c6c385021d5ede1e6913bc3eb01b3b1f
|
|
| MD5 |
1fca6b1eb6ffb54ec19e23152f1a94a2
|
|
| BLAKE2b-256 |
f646bd6c81710d061ccb9ef8a38c3083b4db2c313fde81e0ccdb2668fdaabf17
|
File details
Details for the file rapfiles-0.2.1-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 905.6 kB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8fe094adf47fd62ecc58306b3fb80e1f40d399610ca0a9f5b83e52e2b60040b3
|
|
| MD5 |
0efb68af6ae48a8ccd387b1c7697f4fa
|
|
| BLAKE2b-256 |
5cc2518921a5819d25a284a8754833206af84a077e771b185868e1f5d2c8586b
|
File details
Details for the file rapfiles-0.2.1-cp313-cp313-macosx_10_12_x86_64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp313-cp313-macosx_10_12_x86_64.whl
- Upload date:
- Size: 913.1 kB
- Tags: CPython 3.13, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cd50e2e6aa78814eac264db4b41415631203147d424ea4a1a1372ed503794d94
|
|
| MD5 |
870f0e9170276897a7066b3e6e8efd62
|
|
| BLAKE2b-256 |
b89a79b36f321beff6f00ccb595ac62191784ad25ecb2700adf6784621675a74
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
62dffad54105fff7b801650b7f33f9324ae94eb360e7cc51712fe5f1ab5ed20b
|
|
| MD5 |
95e7708f619b73139591692e36c49a90
|
|
| BLAKE2b-256 |
ccdd7c283294c5871d5ec918c2e5f565174c39c479d62f21ca52d3f9dedaf7a2
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00596db5a15d2054ba96b094dc7ed31b83e0e052f93a82c7defa340e66290b21
|
|
| MD5 |
119683d3f80c6c928df48ce6f28be274
|
|
| BLAKE2b-256 |
6fd89cba864484ab8d75d99c449769bff10a24cf3a61dbd27d148f1cb2b4ad4b
|
File details
Details for the file rapfiles-0.2.1-cp312-cp312-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp312-cp312-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 964.2 kB
- Tags: CPython 3.12, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a2da2449280e75473c42de618b897de1671daa45366131d850e9e5cd476e8f41
|
|
| MD5 |
fc49f9de09787da879cf71f8ed84b38d
|
|
| BLAKE2b-256 |
32c87e5a9b2cabf2acdd3043f4730182e604faeca95a148c73e876ede53d04b0
|
File details
Details for the file rapfiles-0.2.1-cp312-cp312-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp312-cp312-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 952.2 kB
- Tags: CPython 3.12, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
05e05a6fcad27fa63dbb521e9e91297ba4e120f803ecd554310903ee53a62c4c
|
|
| MD5 |
2a5ebaf1233ca980e2e210cc72be85ec
|
|
| BLAKE2b-256 |
2de88fab944ca78363ad501f7e579d44c63138780bb009fffbc118eacbac3c9c
|
File details
Details for the file rapfiles-0.2.1-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 908.4 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2a5252e93df160ca9e2397e10d55dfdc662f1705042371073fec37b05127ab93
|
|
| MD5 |
0798ea7f9e4bf4c56ba16be828f79eef
|
|
| BLAKE2b-256 |
0b6d2d24536243872c5e672604fdd7df386e03926ce005ace694e1c5c86ebc9f
|
File details
Details for the file rapfiles-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl
- Upload date:
- Size: 915.3 kB
- Tags: CPython 3.12, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cbf28b8fd1811ca4957fa210d192dc3f8f29ec9663716fc89e4502498ada2486
|
|
| MD5 |
ef46dcf888ff2224fc8468b53326ba9f
|
|
| BLAKE2b-256 |
9b9a798b372ed3c5f3b6f7dcb3ff5ee7a7c6d8e144bd9b6c6f21fad0fb9a27a5
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f1c97677a79d7c5098f7ec963c16a53c49ed77a2dee9169d1112583da8ef20f7
|
|
| MD5 |
3970752db61563c529cbae2c9db2a2ea
|
|
| BLAKE2b-256 |
ffe34256afcac6f0c95ca3916f74e43a630a3cdf01b9f4c016ca638a0984190b
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1fc5d72c608c7d963fe7e2ba3b9235529e6f18a8dd5ae671c5fe5478da488f91
|
|
| MD5 |
7eb7336954b98e131f1afdaa4ff1afc6
|
|
| BLAKE2b-256 |
d4f4fa14b0f0697453b43e91d39d33858ae31da2aa57834f52832c3bbf0fbcff
|
File details
Details for the file rapfiles-0.2.1-cp311-cp311-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp311-cp311-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 965.0 kB
- Tags: CPython 3.11, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c4df3d4f782ef2f108f9338b1474168a3d9e1afeca1b42978622ceb5d42ae695
|
|
| MD5 |
86b056101f4e3d5958f75b578614041a
|
|
| BLAKE2b-256 |
f491a531aff02c03c9e4bf83cbcc980e343dbccd4265284b6a3a1769a346966b
|
File details
Details for the file rapfiles-0.2.1-cp311-cp311-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp311-cp311-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 954.3 kB
- Tags: CPython 3.11, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fdddc2765f9b6454ff3270b79cf3347efef447682b6992d25e2c6512466c42ef
|
|
| MD5 |
20b5af3e3814f9283fb828fa93bc38fc
|
|
| BLAKE2b-256 |
a187cf6dc62a8dc09a0fc1ce0d2ae8de67a1cf8112e5e375dbe6d78144fb9890
|
File details
Details for the file rapfiles-0.2.1-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 912.6 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
43368701469c3cbae4fdfc6d86890d3539eedfbdbeb7d394ed1e1f449876964a
|
|
| MD5 |
9e381b1d1faecefd2ca6244c272195c5
|
|
| BLAKE2b-256 |
cb34e07577152003191c6b12bd210d5765f8d96683d7cb3459fed7c37e7a0090
|
File details
Details for the file rapfiles-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl
- Upload date:
- Size: 917.6 kB
- Tags: CPython 3.11, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a09fa0bc09c762e737e0518568c55b5bce2ca9ff27e70d5b2b6346c33a86c007
|
|
| MD5 |
ab8ae9fdbaf94806a2354432d18c60a8
|
|
| BLAKE2b-256 |
4cc39f4ea79a0b6d489aee91934d168ed23ea884cb844546b75634b28b55b3f0
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
62ea1703e8a50d0cf85e0a0265ef4a7374dac1163234782258568c4e2f10543f
|
|
| MD5 |
9b09664d34793f3e4eb6178837d6965d
|
|
| BLAKE2b-256 |
48b9402395fa80e9befe5643393f19928b4328af2a7d3c2988a7def4263bddd6
|
File details
Details for the file rapfiles-0.2.1-cp310-cp310-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp310-cp310-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 965.8 kB
- Tags: CPython 3.10, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60fc186ec6824e5c8b13e4194198791ca56c4e6ab48de8310283d292127118b6
|
|
| MD5 |
62b61403843a4c5a68c7d5a2b7d1b86f
|
|
| BLAKE2b-256 |
ee29e34dab4333bd069bb1c1407edcdc70947d588a4226f2363009590a35fee5
|
File details
Details for the file rapfiles-0.2.1-cp310-cp310-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp310-cp310-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 952.9 kB
- Tags: CPython 3.10, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9ec539a913e5379741a9ce3c52ab8e2da090a4c169aa7d12d47130e55bbccee8
|
|
| MD5 |
029a41eddab06085ce0768f6f001dfde
|
|
| BLAKE2b-256 |
3db2f57f32c55707823828fc60828d21b7b455fd705db95c1b8e0aee917dffee
|
File details
Details for the file rapfiles-0.2.1-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 912.5 kB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
621ffe44f26521381af6a6b3db8f26dd81130dd1f63faa5b5fc92170b1543241
|
|
| MD5 |
0f024c1c8cc43f55417ef86d996c1009
|
|
| BLAKE2b-256 |
f5fe1cf688287973e1e4cc2d8d18e9cf8b2ea4849fb8a32afb4221a86e33cc55
|
File details
Details for the file rapfiles-0.2.1-cp310-cp310-macosx_10_12_x86_64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp310-cp310-macosx_10_12_x86_64.whl
- Upload date:
- Size: 918.3 kB
- Tags: CPython 3.10, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bec637efc69a0030a3c4ef2790cfd5f40c569fe2c52f3019083cf7a666c84b4b
|
|
| MD5 |
036f3d4266c8d2b048f49bcf91c07158
|
|
| BLAKE2b-256 |
ac023c57a393e8d9b26ba48583de7502cbac0011c726d0e92f8e3d1c3cb50d77
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b2cd3f92a82e60e5c7693afa91259a0033c2b4a3e2b514c3493525a861825475
|
|
| MD5 |
3cbfdacfffd2805e673fafc98e23a105
|
|
| BLAKE2b-256 |
63018c6e47c306eec4cab2ed34dc6be3c747e70ad2f398308be09cb8997f9b7a
|
File details
Details for the file rapfiles-0.2.1-cp39-cp39-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp39-cp39-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 967.5 kB
- Tags: CPython 3.9, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
11a540ed5cdd1a2158f4bc8ac39bce72c78d86aea3fdc156d2c956c41d66ace9
|
|
| MD5 |
58a4d87024bccc898b8cd8c02a9b7373
|
|
| BLAKE2b-256 |
fefe043b9d4841a8ea3cc51e9de88f80f84d29137f911f004e013944e146a22b
|
File details
Details for the file rapfiles-0.2.1-cp39-cp39-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp39-cp39-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 955.4 kB
- Tags: CPython 3.9, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
40e3790f30208f5b1bf589185b955a9532ba6b37195b79807a082553a63abd88
|
|
| MD5 |
7f5643f286c2ddb4df272ddf1441aea7
|
|
| BLAKE2b-256 |
d3fe15d5a39ca33bc7c1ccd4e9dc4ca4d4eb99c5ba8a5feedb54c59db2a5ee53
|
File details
Details for the file rapfiles-0.2.1-cp39-cp39-macosx_11_0_arm64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp39-cp39-macosx_11_0_arm64.whl
- Upload date:
- Size: 915.1 kB
- Tags: CPython 3.9, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b107a7b5644a56f3b6af9464516d23f98ab318ce0842205dade276444f728771
|
|
| MD5 |
91f72f3a706c2723b9c295d0c2b36fe5
|
|
| BLAKE2b-256 |
4afb413bc6bf528db32fa30803fbdf505187397e8fe45ca8c2a38e375f7c40f8
|
File details
Details for the file rapfiles-0.2.1-cp39-cp39-macosx_10_12_x86_64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp39-cp39-macosx_10_12_x86_64.whl
- Upload date:
- Size: 920.4 kB
- Tags: CPython 3.9, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c9986301905928500bf6dccc2fc88d8c0ae9249b5487ae613b2843146186d088
|
|
| MD5 |
f537abab4eff5ed171852f9123b9996f
|
|
| BLAKE2b-256 |
cce68ddb78e773ff72922e656bb1ed30235db9f72e5dd7bc757750b75c42f71a
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7bfaef6e04a31fd3f0d5bc417698341bb2ac1529188ec947f455ede18db50e39
|
|
| MD5 |
63f53518b32d95ab73be9fa2407d857a
|
|
| BLAKE2b-256 |
6e35fa25034091609d53a6ac170ecbb59048d5807141b617dd1298bdb34cc11a
|
File details
Details for the file rapfiles-0.2.1-cp38-cp38-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp38-cp38-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 969.1 kB
- Tags: CPython 3.8, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0877841fef9c7b9af553ded27f1e5d35a660cc7e2b645f5b1be321fdb0587365
|
|
| MD5 |
c68096327616d7b5bb58b9b6535f619e
|
|
| BLAKE2b-256 |
d36999ebcb760418106c74f903b932ea5faaf768b5789f64ea7f0b89dea1f8c9
|
File details
Details for the file rapfiles-0.2.1-cp38-cp38-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp38-cp38-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 958.3 kB
- Tags: CPython 3.8, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4a88481c6dded15377ea65db9e8a0ec6976b4f97beead7218eee1966f4ca0670
|
|
| MD5 |
6d2ebaff7c181f8fbc263f04bb9fefce
|
|
| BLAKE2b-256 |
426ca6f8401e6ce9b8eb2992d4731edda3c50297ad00caa943d36796fe882ee0
|
File details
Details for the file rapfiles-0.2.1-cp38-cp38-macosx_11_0_arm64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp38-cp38-macosx_11_0_arm64.whl
- Upload date:
- Size: 915.6 kB
- Tags: CPython 3.8, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df20cc312c2197a405282c7ca46e63ab428f95737e316f613dd392d2067d5c1b
|
|
| MD5 |
5b121c1bea9d601d88ece3f868a838f4
|
|
| BLAKE2b-256 |
bd768cff7bdcdee0e1ebbb0d13d7e3685bffbe66644060c731c8f87c8bc586c5
|
File details
Details for the file rapfiles-0.2.1-cp38-cp38-macosx_10_12_x86_64.whl.
File metadata
- Download URL: rapfiles-0.2.1-cp38-cp38-macosx_10_12_x86_64.whl
- Upload date:
- Size: 922.8 kB
- Tags: CPython 3.8, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
44b730e930ee7809d7f91b38f897b4a447bcf77a838b0cea9c4468555d2d8262
|
|
| MD5 |
7ab98372715d1c5599b9502e168968f6
|
|
| BLAKE2b-256 |
86433ea3562633b2155a733f6b0ec129a2b5f3a431e65f0d3cb633f462c9d508
|