Skip to main content

Cross-platform async file API for Python. Blazing fast like Shameimaru Aya.

Project description


ayafileio

License Python Version Platform Version

当前是英文 | chinese version

"The fastest file I/O in Gensokyo, swift as the Wind God Maiden."
— Aya Shameimaru, always flying at full speed

Cross-platform asynchronous file I/O library using native async I/O where available.
Windows leverages IOCP (I/O Completion Ports), Linux uses io_uring (kernel 5.1+), and macOS uses Dispatch I/O (GCD) for truly non-blocking file operations.

changes

see -> CHANGES

🏆 The Only True Async on All Three Major Platforms

Platform Backend True Async Description
Windows IOCP NT kernel native I/O Completion Ports
Linux io_uring Next-gen async I/O (kernel 5.1+)
macOS Dispatch I/O GCD kernel-level async I/O

ayafileio is the only Python library providing true async file I/O on Windows, Linux, and macOS.

📸 Key Features

Feature Description
🍃 Zero thread overhead No background threads on true async platforms
📰 Kernel-level completion IOCP / io_uring / Dispatch I/O direct to kernel
High concurrency Handles thousands of concurrent file operations
🎴 Familiar API aiofiles-compatible, supports async/await
📖 Text & binary support Automatic encoding/decoding in text modes
🔧 Unified configuration Runtime tunable parameters for all backends
🌍 Cross-platform Windows, Linux, and macOS
🐍 Latest Python Supports 3.10, 3.11, 3.12, 3.13, 3.14

🛠️ Installation

pip install ayafileio

System requirements:

  • Python 3.10+
  • Windows 7+ / Linux (kernel 5.1+ for io_uring) / macOS 10.10+
  • No external dependencies, precompiled wheels available

🚀 Quick Start

import asyncio
import ayafileio

async def main():
    # Write to a file — fast as the wind
    async with ayafileio.open("example.txt", "w") as f:
        await f.write("Hello, async world!\n")

    # Read with automatic decoding
    async with ayafileio.open("example.txt", "r", encoding="utf-8") as f:
        content = await f.read()
        print(content)

    # Binary operations
    async with ayafileio.open("data.bin", "rb") as f:
        data = await f.read(1024)
        await f.seek(0, 0)

asyncio.run(main())

⚡ Performance Best Practice

ayafileio's file open/close overhead is already in the microsecond range, but for maximum performance, avoid reopening the same file in a loop.

# ❌ DO NOT DO THIS: repeated open/close in a loop
for i in range(10000):
    async with ayafileio.open("data.bin", "rb") as f:
        data = await f.read()

# ✅ DO THIS: open once, operate many times
async with ayafileio.open("data.bin", "rb") as f:
    for i in range(10000):
        await f.seek(0)
        data = await f.read()

The latter is ~6x faster — it eliminates 9999 unnecessary coroutine scheduling round-trips.

🔍 Backend Information

Check which backend is currently in use:

import ayafileio

info = ayafileio.get_backend_info()
print(info)
# Windows: {'platform': 'windows', 'backend': 'iocp', 'is_truly_async': True}
# Linux:   {'platform': 'linux', 'backend': 'io_uring', 'is_truly_async': True}
# macOS:   {'platform': 'macos', 'backend': 'dispatch_io', 'is_truly_async': True}

⚙️ Unified Configuration

ayafileio provides a unified configuration system that allows runtime tuning:

import ayafileio

# View current configuration
config = ayafileio.get_config()
print(config)

# Update configuration
ayafileio.configure({
    "io_worker_count": 8,
    "buffer_size": 131072,      # 128KB buffer
    "close_timeout_ms": 2000,
})

# Reset to defaults
ayafileio.reset_config()

Configuration Options

Option Default Description
handle_pool_max_per_key 64 Max cached handles per file (Windows)
handle_pool_max_total 2048 Max total cached handles (Windows)
io_worker_count 0 IO worker threads, 0=auto
buffer_pool_max 512 Max cached buffers
buffer_size 65536 Buffer size in bytes
close_timeout_ms 4000 Close timeout for pending I/O (ms)
io_uring_queue_depth 256 io_uring queue depth (Linux)
io_uring_sqpoll False Enable SQPOLL mode (Linux)

📚 API Reference

AsyncFile class

class AsyncFile(Generic[T]):
    def __init__(
        self, path: str | Path, mode: str = "rb",
        encoding: str | None = None,
        newline: str | None = None,
        errors: str | None = None
    ): ...

    # 读取
    async def read(self, size: int = -1) -> T: ...
    async def readline() -> T: ...
    async def readlines(hint: int = -1) -> list[T]: ...
    async def readall() -> T: ...                        # read(-1) 别名
    async def readinto(buf: bytearray | memoryview) -> int: ...  # 零拷贝 [仅二进制]

    # 写入
    async def write(self, data: str | bytes) -> int: ...
    async def writelines(lines) -> None: ...              # 批量写入

    # 位置
    async def seek(self, offset: int, whence: int = 0) -> int: ...
    async def tell() -> int: ...
    async def truncate(size: int) -> None: ...

    # 控制
    async def flush(self) -> None: ...
    async def close(self) -> None: ...

    # 属性
    @property
    def closed(self) -> bool: ...
    @property
    def name(self) -> str: ...
    @property
    def mode(self) -> str: ...

    # 状态
    def readable() -> bool: ...
    def writable() -> bool: ...
    def seekable() -> bool: ...
    def fileno() -> int: ...
    def isatty() -> bool: ...

    # 迭代器
    def __aiter__(self) -> AsyncFile[T]: ...
    async def __anext__(self) -> T: ...

Supported Modes

Mode Description
"r", "rb" Read (text/binary)
"w", "wb" Write (text/binary)
"a", "ab" Append (text/binary)
"x", "xb" Exclusive create (text/binary)
+ added Read/write combinations

Configuration Functions

def configure(options: dict) -> None: ...      # Unified configuration
def get_config() -> dict: ...                   # Get current configuration
def reset_config() -> None: ...                 # Reset to defaults
def get_backend_info() -> dict: ...             # Get backend information

🧪 Performance Comparison

Simulating Crawlee's Dataset append pattern (5,000 records, 50 concurrent):

Platform ayafileio aiofiles Speedup
Windows (NVMe SSD) 41,336 items/s 9,658 items/s 4.28x
Linux (NVMe SSD) 17,688 items/s 11,455 items/s 1.54x
macOS (NVMe SSD) 29,837 items/s 25,522 items/s 1.17x
Windows (6yr old HDD) 20,251 items/s 13,011 items/s 1.56x

Key findings:

  • On Windows enterprise SSD, ayafileio achieves 42x lower P99 latency (0.044ms vs 1.854ms)
  • aiofiles shows 96.7% jitter under load; ayafileio only 16.2%
  • Even on degraded hardware, ayafileio maintains predictable performance

Test environment: Windows 10/11, Ubuntu 22.04, macOS 14; GitHub Actions enterprise NVMe SSD

🤝 Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Add tests
  4. Ensure benchmarks pass
  5. Open a pull request

📄 License

MIT License — see LICENSE for details.


"Slow is a crime, right?"
— Aya Shameimaru, editor-in-chief of Bunbunmaru News


Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

ayafileio-1.1.1.post1-cp314-cp314t-win_amd64.whl (95.5 kB view details)

Uploaded CPython 3.14tWindows x86-64

ayafileio-1.1.1.post1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (114.0 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ayafileio-1.1.1.post1-cp314-cp314t-macosx_13_0_x86_64.whl (84.0 kB view details)

Uploaded CPython 3.14tmacOS 13.0+ x86-64

ayafileio-1.1.1.post1-cp314-cp314t-macosx_13_0_arm64.whl (79.0 kB view details)

Uploaded CPython 3.14tmacOS 13.0+ ARM64

ayafileio-1.1.1.post1-cp314-cp314-win_amd64.whl (91.6 kB view details)

Uploaded CPython 3.14Windows x86-64

ayafileio-1.1.1.post1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (112.0 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ayafileio-1.1.1.post1-cp314-cp314-macosx_15_0_arm64.whl (76.3 kB view details)

Uploaded CPython 3.14macOS 15.0+ ARM64

ayafileio-1.1.1.post1-cp314-cp314-macosx_13_0_x86_64.whl (81.8 kB view details)

Uploaded CPython 3.14macOS 13.0+ x86-64

ayafileio-1.1.1.post1-cp314-cp314-macosx_13_0_arm64.whl (76.8 kB view details)

Uploaded CPython 3.14macOS 13.0+ ARM64

ayafileio-1.1.1.post1-cp313-cp313-win_amd64.whl (89.3 kB view details)

Uploaded CPython 3.13Windows x86-64

ayafileio-1.1.1.post1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (112.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ayafileio-1.1.1.post1-cp313-cp313-macosx_15_0_arm64.whl (76.3 kB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

ayafileio-1.1.1.post1-cp313-cp313-macosx_13_0_x86_64.whl (81.9 kB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

ayafileio-1.1.1.post1-cp313-cp313-macosx_13_0_arm64.whl (76.7 kB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

ayafileio-1.1.1.post1-cp312-cp312-win_amd64.whl (89.4 kB view details)

Uploaded CPython 3.12Windows x86-64

ayafileio-1.1.1.post1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (112.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ayafileio-1.1.1.post1-cp312-cp312-macosx_15_0_arm64.whl (76.4 kB view details)

Uploaded CPython 3.12macOS 15.0+ ARM64

ayafileio-1.1.1.post1-cp312-cp312-macosx_13_0_x86_64.whl (82.0 kB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

ayafileio-1.1.1.post1-cp312-cp312-macosx_13_0_arm64.whl (76.8 kB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

ayafileio-1.1.1.post1-cp311-cp311-win_amd64.whl (90.2 kB view details)

Uploaded CPython 3.11Windows x86-64

ayafileio-1.1.1.post1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (113.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ayafileio-1.1.1.post1-cp311-cp311-macosx_15_0_arm64.whl (77.5 kB view details)

Uploaded CPython 3.11macOS 15.0+ ARM64

ayafileio-1.1.1.post1-cp311-cp311-macosx_13_0_x86_64.whl (82.7 kB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

ayafileio-1.1.1.post1-cp311-cp311-macosx_13_0_arm64.whl (77.9 kB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

ayafileio-1.1.1.post1-cp310-cp310-win_amd64.whl (90.3 kB view details)

Uploaded CPython 3.10Windows x86-64

ayafileio-1.1.1.post1-cp310-cp310-manylinux_2_28_x86_64.whl (112.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

ayafileio-1.1.1.post1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (113.4 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ayafileio-1.1.1.post1-cp310-cp310-macosx_15_0_arm64.whl (77.6 kB view details)

Uploaded CPython 3.10macOS 15.0+ ARM64

ayafileio-1.1.1.post1-cp310-cp310-macosx_13_0_x86_64.whl (82.8 kB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

ayafileio-1.1.1.post1-cp310-cp310-macosx_13_0_arm64.whl (78.0 kB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

File details

Details for the file ayafileio-1.1.1.post1-cp314-cp314t-win_amd64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 dfa210c2b50773e58d982ff2b13565ceffcb47cf16c133f9a7a0c81fa758bcfa
MD5 7ea3518d18bc5d1ecdb40ce17da2020c
BLAKE2b-256 d7c5099181b124caf9c1672304c37b45030658d2e7919412974666149a35b8a0

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c2892f89da2d0a2d4970553b2d193a7b234be3b74a7bb765dbe588101d0848d8
MD5 ff100beae57282da1a2fa80a3347ae47
BLAKE2b-256 26316ba078f4b2142375419fb52f5d7271ec51aad6acc88a4756f1c6d871e37e

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp314-cp314t-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp314-cp314t-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 56104ab81a719ac12661cce8372fbd2400f3cba5c2455868399f7b38065deda8
MD5 31a7e4fa9a9db54a2e7df748e71fb8d9
BLAKE2b-256 efba7a9344cdcc08af41343f7d0643ba8ca5dc5092792161e582364cfbf350e9

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp314-cp314t-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp314-cp314t-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 5421f623f0d3d2b658af162c7d117408493182b8ec5653e927d7a7c5d668406d
MD5 522a3b32cadeb199c45dec944481b408
BLAKE2b-256 d63694bfb003b5cf48acf88bee1a5292ea14c9b68df51a7648ef6628dacada34

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 08f4961c67364722dd82eccd77b0d01193a9836ef72aa0929bc1b5d82f3b289f
MD5 7cb530bbf884bae92d9fceefcc2c1c14
BLAKE2b-256 a4b20c3f1d033cd5cc104df384ad0e0e368b74bdda43c1cd51ccaf07fadad740

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c2dc0d3bb87632c2ad5a46e1076fe16a77085375d079a043862cbc6263e26ef8
MD5 064c62cd181ac757720fc42d49551f8f
BLAKE2b-256 7e7f9fb60436c93c0ff7cb91365a8e289df4e811f7354ac287d23963154f591b

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp314-cp314-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp314-cp314-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 b820c2eeae0665cbaf44997aa9ae466b64c8771b6fa30c8a6d50e75003bdffc9
MD5 33f9ab450eb9d0e931214d0828d12526
BLAKE2b-256 3231df007a6a5f3daa57700e0c093e35ae9aff4a260690bb500e2f413902b6c8

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp314-cp314-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp314-cp314-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 d096448164f11c628cc52151841d3ae88b9d7d35d6e9b5ac37625203e3e49506
MD5 a43077dcbb2d259faf1789a29110d0d0
BLAKE2b-256 036936019e5d4be104f7f83484a966d60121d1545931ef1dd8c5f1622a1c9654

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp314-cp314-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp314-cp314-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 4fbda4437abe0a7b894feae6b5dd9605700d9ec9cbecc707e3a38ee37c977c30
MD5 0aa37f512c6f4feabce6f5b716b68ece
BLAKE2b-256 cf5c3d05a3c51b7b66ba46ad8d9406cc430ab640e36e5961467c71c19f1bf556

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 95e17879c6ef35b18c101853add5b7785badcb2a07d15b0c6336b95598d009a1
MD5 7f390dd6d89e97e3776fbaf57f11fab1
BLAKE2b-256 01bbba303a1c72c94c9650394bcf45ed9ea266309e4e0e93a6cebd7017cf70ba

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0822324cc4cf1e1e4154480efdce29ce0a04c8982beefc95df512f8e0fcc9b68
MD5 5a3b17c12e28df3bf4ad70b1ff07289e
BLAKE2b-256 f8976e91ae7df0e4b0009f07911a1737e25d52fc4eea6aaf6f1a0cd163c2e62e

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp313-cp313-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 d1feb128156def02fb1bf66cb10c3f452c3bbce89d1c0eebe4830a0beee2abe1
MD5 9465d525e8bb4039be252227e5ea4a2a
BLAKE2b-256 00fe0e8c7f8252dfbafcf07e2095901363f545acad8463431ad055b44903d500

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 91866bd8244e6a25551858977d62273ce4bfdebbe1898b4fbdc5fa4d8bf1be06
MD5 286cda362b42cc85a0cc58998f856d49
BLAKE2b-256 4fc98ff936f190ebbf404f92fbd29e2a44fa8f0e703473bdd71c1f8155ef73fd

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 dfae403f040b5f922a633714f83512d270d2cec2e89e1ab2707c0e4ff8404fc1
MD5 bac720a48a2fb9fe849976e4447e2f66
BLAKE2b-256 f11a58ef29b4130ad46a2d34a8fb4551539454239b5666fca2ba9e1434dccb00

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9f096c0d312407da705f3af86de51ad4e0daf73b2e5fc13325092ed89c726590
MD5 1bc757e4b283b31b792eef0340caf4b6
BLAKE2b-256 a00773c5aa71871ceb8a69023fbf2175eaeb17d3654e3a002d0897ac7512fc50

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 feb75c934d4635828cc326fd74cf6b15550079559b414a9e2df2bfc2c63f5d31
MD5 bd2cbed6b9f78344460b2b05891d9f3d
BLAKE2b-256 25d441e321ad96936066aa483017e52f55f896368bc310ed6d7d6a124734c312

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp312-cp312-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp312-cp312-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 681f9395b9b6f972498cf48dfc3ece2f391d8d5caa1b9fd9faed2f56e1f69e94
MD5 c8fb8bb541d1e6c872345d8036ec8170
BLAKE2b-256 f25245a62181f98be958d61eb50138c9f99b9016267ffb304aa9234d3512fe77

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 641349586fdf9ec345f8c8eead80ffbbbca1846f26d956a78e71975c2f3a52be
MD5 933b4ab88bdbdf7443b35d4a9f2df86b
BLAKE2b-256 a9200ec824997da386e665ebedc0891b6e1ca70cc9e98078576ac326820124fa

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 079cd0f65a7fa8126ea6843579e054801ac9e8c0cde3f69cc03953460c96d709
MD5 7ef23efd920dc9830eee963639311c5b
BLAKE2b-256 66d1bfc29b92eb08f9a3f1c999d0b2c7dc21c485f15b9d2f5ab2055e53e5ef47

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 1e059721440f90abb0d8c27c671fe6a79b24e938f2433fe2830b49fa8133b657
MD5 8cd01cf8d728456adbbd18eaf9b06249
BLAKE2b-256 5eaa84daf0af04375f9308f4d2892a830a7d79340d0f2e98268fde94032a8ee1

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0e0d992825502ea14e9475fa347e629175e25c91f9be2a5b32c9b6ac695bf532
MD5 a7e4a8b64170dafaccdb21c7b2bb01df
BLAKE2b-256 ea124e9b7da75df27f6ae38a060c8539bf5138feffb5261abd2a8b4eec54494e

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp311-cp311-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp311-cp311-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 85fff0da028868f248ef6433b6ee08feaad7f800cc90a465750b40bc81924384
MD5 abaebc46e2f670e15760cc87e57dae28
BLAKE2b-256 7e9dcdc0af2829d99dced445149fbc3ab00175b1b5d9971a0198d14fee1dab23

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 e16230218e5ecee245fe370b3c3c01d363961df118de03bc0f7a41750f53d57b
MD5 117caa5b875d4aae68ed6115ff92a1ff
BLAKE2b-256 3c2913295b4eaeaec8e6cab746af600625c4b1f3355f9f54392306b0c5f08821

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 21d6d8cec1046e257ace30f45108c7121ecee2173ab1c4cda9bcf23e3f4b230f
MD5 dc97c0a8e71da9990ccf28e1382be152
BLAKE2b-256 c6245c6d43597d672b4456e34ce646a1d3fb0a4ecbcf1f12b1cb2378d1e72305

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 0462709b923db9ba058c8a6b324203f9ae204706be0cfe24605dd57bdbaa2d5d
MD5 1f46b81d4a4d08fea41378162d3cd367
BLAKE2b-256 3ac68aaf7961f65049fb344d1c2027b49d7f3151dd7f62692bd0e27ce0d932f8

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 41b3e90986b8f33842f2e564c16cd8526b58649016c6cd81cb2696390e4a26b3
MD5 1dbd8f68dd74ea23f843a459482ba456
BLAKE2b-256 acc620d19384f2da81da85054593ba386b2b007a33209c96d9a5297d3e4c32a5

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 550b211cce7e385bfe440263e1cce4eb56ebcbe2ff6ccf3d2c5221c556dcdc53
MD5 5312886111917659242bbb320b5f2a75
BLAKE2b-256 dbf377704a021a7543d07d0ce777208b3e80a9654cfacc8970017eee0018a204

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp310-cp310-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp310-cp310-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 9a0bab3df6bd06d02e9b19dfc73c14e431a61d52fd02ea6e8c8572047168b943
MD5 28d15dad48dfaca5e738100f7f27602b
BLAKE2b-256 31bd164b7bfb51be30ede5ee7cdafbbe83f8c6c4cc804f65e732a5f96c47726e

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 8bc3d13062a8e369ccb689370f246664cbf4c8f7122255c32b3c9d344a610d7b
MD5 8cae3d06f285a94f9161c59ef24e4003
BLAKE2b-256 132b0e5b5aa474cff3a567f0cfbedd08fb8c47529b0f1d26b0ed5895e8dda18f

See more details on using hashes here.

File details

Details for the file ayafileio-1.1.1.post1-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.1.1.post1-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 2a8ade6762d4a96e48e76d7c7dfc79d56e2f1f6f546d55f55c178ac46a5a935a
MD5 8d81b08bc2e164c985953a9bc9192e9e
BLAKE2b-256 0f35a2e253b98891da1f199373fda8b3a3cce83cf99a1adf61449a1cd899c791

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