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.14, including 3.14t free-threading

🛠️ 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)
iocp_batch_size 64 IOCP batch completion harvest size (Windows, 1–256)
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,
        auto_flush: bool = False
    ): ...

    # 读取
    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

File Wrapping

def wrap_file(fd: int, mode: str = "rb", *, owns_fd: bool = False) -> AsyncFile[bytes]: ...

Wrap an existing file descriptor (int) or a file-like object with fileno() as an AsyncFile, backed by the optimal platform backend. Binary mode only.

Pool Management

def drain_handle_pool() -> None: ...            # Drain all cached file handles
def drain_buffer_pool() -> None: ...            # Drain all cached I/O buffers

Use drain_handle_pool() / drain_buffer_pool() to release pooled resources at runtime — useful after bulk tempfile operations or between benchmark rounds.

🧪 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.4.1-cp314-cp314t-win_amd64.whl (104.2 kB view details)

Uploaded CPython 3.14tWindows x86-64

ayafileio-1.4.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (119.8 kB view details)

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

ayafileio-1.4.1-cp314-cp314t-macosx_13_0_x86_64.whl (86.4 kB view details)

Uploaded CPython 3.14tmacOS 13.0+ x86-64

ayafileio-1.4.1-cp314-cp314t-macosx_13_0_arm64.whl (81.9 kB view details)

Uploaded CPython 3.14tmacOS 13.0+ ARM64

ayafileio-1.4.1-cp314-cp314-win_amd64.whl (99.6 kB view details)

Uploaded CPython 3.14Windows x86-64

ayafileio-1.4.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (117.9 kB view details)

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

ayafileio-1.4.1-cp314-cp314-macosx_13_0_x86_64.whl (84.7 kB view details)

Uploaded CPython 3.14macOS 13.0+ x86-64

ayafileio-1.4.1-cp314-cp314-macosx_13_0_arm64.whl (80.0 kB view details)

Uploaded CPython 3.14macOS 13.0+ ARM64

ayafileio-1.4.1-cp313-cp313-win_amd64.whl (97.6 kB view details)

Uploaded CPython 3.13Windows x86-64

ayafileio-1.4.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (118.1 kB view details)

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

ayafileio-1.4.1-cp313-cp313-macosx_13_0_x86_64.whl (84.8 kB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

ayafileio-1.4.1-cp313-cp313-macosx_13_0_arm64.whl (80.0 kB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

ayafileio-1.4.1-cp312-cp312-win_amd64.whl (97.6 kB view details)

Uploaded CPython 3.12Windows x86-64

ayafileio-1.4.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (118.1 kB view details)

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

ayafileio-1.4.1-cp312-cp312-macosx_13_0_x86_64.whl (84.8 kB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

ayafileio-1.4.1-cp312-cp312-macosx_13_0_arm64.whl (80.0 kB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

ayafileio-1.4.1-cp311-cp311-win_amd64.whl (98.3 kB view details)

Uploaded CPython 3.11Windows x86-64

ayafileio-1.4.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (119.2 kB view details)

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

ayafileio-1.4.1-cp311-cp311-macosx_13_0_x86_64.whl (85.3 kB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

ayafileio-1.4.1-cp311-cp311-macosx_13_0_arm64.whl (81.1 kB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

ayafileio-1.4.1-cp310-cp310-win_amd64.whl (98.5 kB view details)

Uploaded CPython 3.10Windows x86-64

ayafileio-1.4.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (119.4 kB view details)

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

ayafileio-1.4.1-cp310-cp310-macosx_13_0_x86_64.whl (85.3 kB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

ayafileio-1.4.1-cp310-cp310-macosx_13_0_arm64.whl (81.2 kB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

File details

Details for the file ayafileio-1.4.1-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: ayafileio-1.4.1-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 104.2 kB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ayafileio-1.4.1-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 7c439965efff0656b1abbeb26c0b085313c2aa44fcf09efe18ce2024e64d02d5
MD5 2ce447242b31802b3ae2de8eb80b1ac1
BLAKE2b-256 4a8afcbaa2239f039f279d4700185081aba769a40c302012aaac83d17d52667e

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp314-cp314t-win_amd64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

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

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 88a032fc5bd9337037ce47ea9edc50444ee17294941ee548767a5f05bf96fa6d
MD5 c633ecc8433edcea4dfa17049fb92fe9
BLAKE2b-256 cc2ac6ddd83fb0af3d2d551e778b83f8e055f25b01852edf4bc96ae20b9b6a81

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp314-cp314t-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp314-cp314t-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 244121aecb10c052067fbacedb9966f2bd327e5335845699c39bb0d034d79f15
MD5 60cf21ab761a0a583dd12406123a8308
BLAKE2b-256 8f4c5125bd04dcf4411b38618651c49b10a1bb2a922894741ae7b27762de9868

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp314-cp314t-macosx_13_0_x86_64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp314-cp314t-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp314-cp314t-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 5781ac01722d962cd9f6c58530bf9c63a501f0b6538ce3eddceef4d3eb1bdd80
MD5 7bb62f34ccb5b057eb9b75b99b1ae594
BLAKE2b-256 ab8eeeaf22987d1c60808ba284a699121bab3842ad001e8e3d2ed794297f4ba7

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp314-cp314t-macosx_13_0_arm64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: ayafileio-1.4.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 99.6 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ayafileio-1.4.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 4ebad5bc9579c8324ba18d31114c46ed383f571ecef0c7d2e13c226052252b5d
MD5 3124acc33cf884cb6b91aea424748bec
BLAKE2b-256 e1c525ed9d0c51d1187c7e6c903d0d1cd65c75f9de9b1710037cc6b680414601

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp314-cp314-win_amd64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 faeee37ff2c6729620aa10db4685be483715adeafb97a959da41fecfa01f6cdc
MD5 7c444f0e74723fcd479d8be5c74e43bc
BLAKE2b-256 57ee30fa432c7db4e08722de3b2ecd83bedeab457a253c5800b04788f5a97276

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp314-cp314-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp314-cp314-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 8b8a26bd25f6c99bfca1472bf619166926d1ec2a21fdea0c65f7a58224b28590
MD5 dbf95f315008ab8557dca709e762d394
BLAKE2b-256 c8f7fbc5fcbc1b5b60cb85d598a4e6a0225d285b3cff148da66eae40723b89b1

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp314-cp314-macosx_13_0_x86_64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp314-cp314-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp314-cp314-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 72b9925b2c2f4400166f17b5133c724af2b5badd3c485f8ee23cda41dc4ee5d3
MD5 1794a766c3b70318a39be7a4c3a98cdb
BLAKE2b-256 34adc24bc1c267b99ab08e216d85c918df6f47262214ae7132976b506f354839

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp314-cp314-macosx_13_0_arm64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: ayafileio-1.4.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 97.6 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ayafileio-1.4.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 238f701db670b5caf418a83da9e97b5b9286838edc5f279adb280aa08bfd5a4d
MD5 4cb88c5440e370ef33d424fb23cec62c
BLAKE2b-256 033ddc9476510e5ce00bee3e53aa94da90148293c70e396f0071207ea3528d62

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp313-cp313-win_amd64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b644555352e04a39b13628860b8473c3decab4021eab2e008f71bf5093cedc94
MD5 778df3d87ee3797d0cb0d4cdc036f44a
BLAKE2b-256 dbe83271400e99e7e685c736bde08cbde7722e2a50fbf83273fbafcf15aa5a21

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 153bc35bf2d02f9583e424e1f62702aed3175dc26e323caf07b04aad59178d83
MD5 309a13ebd3afc4f17fb07be72630dc6a
BLAKE2b-256 f10897fb346a0dc4fc6fb0c00dae3b578a27b1dc7ea31285e9b7a0ca69b0c015

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp313-cp313-macosx_13_0_x86_64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 0bb3db9e1a7c3bff2e1ea822b0c81f9260e8b8822c39e9f78004630dc5009c27
MD5 a37c926cb76465893b5606040d840a18
BLAKE2b-256 c748ecefb88f448c599a56493a076d2176964c3731da9880b83987359a777b7c

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp313-cp313-macosx_13_0_arm64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: ayafileio-1.4.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 97.6 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ayafileio-1.4.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 faa804bdb21d3cc4189105926d2566abd4f935ae012a49728eb4ddcbfc7bdd53
MD5 6b80de10264d1dcd1acf72e12161ffa8
BLAKE2b-256 81fe180ec041e2b274720e694feb7cc00576c7b1d2e3222fa9329fe938df1a1e

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp312-cp312-win_amd64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 25c1b4da888808808ba95b694a6128eb5518a6f592bee819a935e65a9cf737da
MD5 e5ebe8af2bbf3930af78785ad1137462
BLAKE2b-256 322d589884f4b1bfab5c2cf4ce73f14b5d19d0e1f37face9a3086a92ee540c10

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 8f146e0263db00803d3b0c55c897c646b90c28ea9cd50c6eb1fb3afbf83b0ab5
MD5 6999b52b3ebf81cbe8f15268d9b8d257
BLAKE2b-256 1ebf5cc65f07f1fd34a0898d7df7a1419571d66b521439b18ef405a1024eda89

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp312-cp312-macosx_13_0_x86_64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 28a1760f1d8d3d7eb997e81b7f41c383f813daf85106552d4dc1fdcb201741a2
MD5 45f8139f775d299ad61001b6cd7725cd
BLAKE2b-256 28c8c326a17ed099a0de576ecc8b9ebd741b983961c35a2f870c81d79c4f0e0e

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp312-cp312-macosx_13_0_arm64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: ayafileio-1.4.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 98.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ayafileio-1.4.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e8adc6e116be52216843ed9eb0564fe195020ec43365d030e5224c5e7379972a
MD5 3e67d755ce373c51bd6363064ea4e1b6
BLAKE2b-256 ae3015135246b0e843f74f1feba6b0a85f67557d64af2c3da4a9db3d63744cd0

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp311-cp311-win_amd64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cbab0742ff047f9292ffef62f18938bc2c2a83afc292ca130ded6367fcd13fe9
MD5 3c412009ddb8066c63bd882546f86567
BLAKE2b-256 6481ff8dd14618edca8d9ee70c3e0713523c1c93e0de8703551f726619b6fda2

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 433464e662562fa0746f661565733d87456a1e346e5dcb040329ebb0b62a7c26
MD5 370cecde870da3fe4b88c8b962ba437c
BLAKE2b-256 673fb96cc898f5db7eb4bc72fea01e725c6a4b2621a98fbd921c9706265d1e91

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp311-cp311-macosx_13_0_x86_64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 e04d250b4f24b332b58c3121b326a53e0d85c64cf50bff43eb93586c747dcead
MD5 2df8feb212a17ea081e8dc798de76a2b
BLAKE2b-256 a5062bab3f21e90913a81fbdd81becca6efaa14c87b51248e65ee0dce77219b1

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp311-cp311-macosx_13_0_arm64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: ayafileio-1.4.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 98.5 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ayafileio-1.4.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f0f39def97a31203bb4d008b94fd765429328b8c3cb5b2251d0dad6bdd120e9c
MD5 01c592bef2aa7c0f1412bb646a117c25
BLAKE2b-256 85803c52de2bf4a3a94d9a9e535ae72455582bbee2dcc65771de87fd9c71f670

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp310-cp310-win_amd64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 02cd0fe48e6b1a0e24266e84952f70418694ea8572eb46a89379330058fa7c79
MD5 619f1e2921f900ac5f7b6ecb89377fbf
BLAKE2b-256 47f634e2f8d5cb66a30f534f3c500d2af45ccdca67aa98d6394da213268c73da

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 7a3d86a15cf9583d1fee7fde8a7b74ccbc0e4438208c5141f235ad858d2d48bd
MD5 db3449adcd48c5f8872742e0513f57ee
BLAKE2b-256 2bffe9594ad5880d9c05bd78df70263122e1cc01d828de0e9fffb56b15fd8f52

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp310-cp310-macosx_13_0_x86_64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ayafileio-1.4.1-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.1-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 55701b42401303399e3aad71ffcadb61724c4386c0383ac68e438704b3e878c1
MD5 dc6773d21ab81e58e1647bd41f006367
BLAKE2b-256 977e547b35baa747f501fed33d5f0240a33399a66774767c6b163a0b753a4641

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.1-cp310-cp310-macosx_13_0_arm64.whl:

Publisher: release.yml on Patchouli-CN/ayafileio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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