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

Uploaded CPython 3.14tWindows x86-64

ayafileio-1.4.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (119.6 kB view details)

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

ayafileio-1.4.0-cp314-cp314t-macosx_13_0_x86_64.whl (86.0 kB view details)

Uploaded CPython 3.14tmacOS 13.0+ x86-64

ayafileio-1.4.0-cp314-cp314t-macosx_13_0_arm64.whl (81.6 kB view details)

Uploaded CPython 3.14tmacOS 13.0+ ARM64

ayafileio-1.4.0-cp314-cp314-win_amd64.whl (99.3 kB view details)

Uploaded CPython 3.14Windows x86-64

ayafileio-1.4.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (117.4 kB view details)

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

ayafileio-1.4.0-cp314-cp314-macosx_13_0_x86_64.whl (84.3 kB view details)

Uploaded CPython 3.14macOS 13.0+ x86-64

ayafileio-1.4.0-cp314-cp314-macosx_13_0_arm64.whl (79.5 kB view details)

Uploaded CPython 3.14macOS 13.0+ ARM64

ayafileio-1.4.0-cp313-cp313-win_amd64.whl (97.1 kB view details)

Uploaded CPython 3.13Windows x86-64

ayafileio-1.4.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (117.6 kB view details)

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

ayafileio-1.4.0-cp313-cp313-macosx_13_0_x86_64.whl (84.2 kB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

ayafileio-1.4.0-cp313-cp313-macosx_13_0_arm64.whl (79.6 kB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

ayafileio-1.4.0-cp312-cp312-win_amd64.whl (97.2 kB view details)

Uploaded CPython 3.12Windows x86-64

ayafileio-1.4.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (117.6 kB view details)

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

ayafileio-1.4.0-cp312-cp312-macosx_13_0_x86_64.whl (84.3 kB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

ayafileio-1.4.0-cp312-cp312-macosx_13_0_arm64.whl (79.6 kB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

ayafileio-1.4.0-cp311-cp311-win_amd64.whl (97.8 kB view details)

Uploaded CPython 3.11Windows x86-64

ayafileio-1.4.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (118.8 kB view details)

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

ayafileio-1.4.0-cp311-cp311-macosx_13_0_x86_64.whl (84.9 kB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

ayafileio-1.4.0-cp311-cp311-macosx_13_0_arm64.whl (80.7 kB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

ayafileio-1.4.0-cp310-cp310-win_amd64.whl (98.0 kB view details)

Uploaded CPython 3.10Windows x86-64

ayafileio-1.4.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (118.9 kB view details)

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

ayafileio-1.4.0-cp310-cp310-macosx_13_0_x86_64.whl (85.1 kB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

ayafileio-1.4.0-cp310-cp310-macosx_13_0_arm64.whl (80.8 kB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

File details

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

File metadata

  • Download URL: ayafileio-1.4.0-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.0-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 6eea21507faf9d8859597c4f69b5669ad89a06f39cfbbe95aebc152eb67c18e9
MD5 24ed034f4822e7b36dba05d7122294a0
BLAKE2b-256 61f89da526383df3d1e1ded4797dd5c0e6af8b46b697ec08873bad593b4af605

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5b449744406be4544321b1c1bed4a68a0f41f393dcdbc94f5f92513aeee6ed5e
MD5 119d357c3365c9a977e19204a87060eb
BLAKE2b-256 69cfa394ae8d70a2a28af1d8417fb6bb33617a24cb89818837724eada2eb4865

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp314-cp314t-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp314-cp314t-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 569dae3f948b17622f2b35951927ebeb86eebc0ebe7a69e366bb8015bb61550b
MD5 dea619386faaa6ec71dc51c67bc655f9
BLAKE2b-256 34d8ba357f0f38ed3eb345fc4d1f8d88f4a2402909463dc2df804a78a355a590

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp314-cp314t-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp314-cp314t-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 073d31febae838b71f6290b6eb9201c3d9c4c496459608ac2007a90c404f8a59
MD5 011d8ba7d15f428e28f86f6626e7869d
BLAKE2b-256 4db0ae72a7a141b19407d83d4addd6d6ba8dc251a8a97bae2be9ab90420c1d2b

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: ayafileio-1.4.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 99.3 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.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 7f0cb1f66ecb764eea0c3c8d691086b80c38fbc6fe2fe293551a642b8b2af9f8
MD5 2f34d590f63cf14615ceb0f1aa2b6ffc
BLAKE2b-256 790cf221c90f3eb786a0507199723e9d3e974df8fc1780476d5b395c77e85fad

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ed4fa8f29d927b23598720e3cc73577ab7b468cb458524a9aabe571b0aff1c08
MD5 0986aab54e689d59ca838508bf9f4e17
BLAKE2b-256 7c0bff50337646b94e411486abd721866fd344c61917004f296d6b5858a55fc9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp314-cp314-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp314-cp314-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 73dbfeb370da6ea095f967521e519329344264ae54c96a98dc18d2ca9b469935
MD5 a3812a902083fa25dc580cb66ec3377d
BLAKE2b-256 5728e87f5d51e4519bc26b460e320df8d3d8a31e5681623f477b1a31986b40a0

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp314-cp314-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp314-cp314-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 ee235978c923d95ad233b7575b1354c2a4ff0f3cb48448e881aea48bb3eac3d2
MD5 89b021ac37e020df7469683405103386
BLAKE2b-256 8be911a68655bd2c7112991da89a8bf11f8c1bd03b2a852d3872e24e937d7503

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: ayafileio-1.4.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 97.1 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.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 b1a45f101ab00bd2965e972e3de8204bb2e69c8c00c088e3bb08898260301cc8
MD5 b730abd37789a32e0542c26e03a663e0
BLAKE2b-256 6ec0e66d3442e63ec5f8356f0c06e533f0888cb0a39a577623802bcae04456e3

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e9a22bdf35f20260bcc564728ca4106d16e69e2a11caabbd06d956eb9034e239
MD5 8aa1e41c3ae650a97443ea966ec86bf7
BLAKE2b-256 41f058dde1899f0c0de518f7ca8e66c8f5eb45adcf1b1da74a62bedde505eddb

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 9470abcbdbe919e40122ec3bd12fe59eb47e6aa8663129e05e061aed7ba07ca9
MD5 f343863b846bae1eb968384431184864
BLAKE2b-256 3e60846612a73c8edb42509853ef0e46b97cc5e9cff1ab9b5ac0890971631e71

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 e2d051cfa4a3652d91066ea4261a1ee7dd647de812a5c0773a68220cbf5bec27
MD5 42531e00e71cdbd57137866a2c4c4082
BLAKE2b-256 aa220dc795d6d7e0e30136e58dc13a965af773629da65842b70278869b193eed

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: ayafileio-1.4.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 97.2 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.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 2b7945280312d21dd5f162debbc5babf9d65f423834587acab61ace2d0fffef4
MD5 a6915be070519803b13d53500e57e611
BLAKE2b-256 0b48cce319bb2cefe5696ded53a56d8a91823be7888d9fd1b83afdcb0246f7d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 21b01a99322c955b83ad852fd88fe5364728a175c4d1782559bcad81150d5cab
MD5 5703519fc6400157e84fcafc19928ccc
BLAKE2b-256 0fb9f768d445c0b9b75d8d5f2c158a67d6546fe4cf205aef458629d381b75f4a

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 243e84b2952ce62e883a7a3dd94ae48553323edbb20e8f313625b1ab1fc898ef
MD5 97ea9551775cb9334d8a151b8d5221c0
BLAKE2b-256 18b5c2da9db26360f065bf3d62bf8cb45f0d2ccfd8c69264966b9c1201f826d5

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 8746dd76904e59d43dbf4c1dcd7f37cb230fd5d43ec1b7d57ef3b7d781384bb2
MD5 d5c514ca0b8f74bcc035576afe128aa3
BLAKE2b-256 003f584823ad88a8e845e2eefc4b6534f1ca7285fd37ce417ebdb1c5eb7c73de

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: ayafileio-1.4.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 97.8 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.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7df15a6864bfae924dae8f5b208e51c771374990d5749fe22f7c00cd87d954fd
MD5 863d770780ed1b3762651f178102d1e0
BLAKE2b-256 ac881e302221540e9da050d8dce089e60e038827cfd3cd733a0299f05aadea45

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6d671ad5e5dcca191fa31a69052297e4d714603991a3c19186f3e8630cb30ce3
MD5 47c6bf433f44ba140b96ce509379596b
BLAKE2b-256 7bc5fe5f5d7cc766d30a2fca6203aab7c0b72e5aaf65043088fdbeece3021850

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 deebb8b00252c3f7c155974685dda37d114dc0317cb473b04b92630016f9cf7d
MD5 e7323d44b73032ed79fdb387d281f224
BLAKE2b-256 49d6d475f16a3d5113993962a8142b2227cbc926dd9b407978bbc24bb3e7cda8

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 3e04df317ca1a55597ccc11c0ec90404de25ff72862f928d82efe60382f0d40a
MD5 845b2fff04dc4790b2bfd2d06e600050
BLAKE2b-256 f766c60b2a37129e9458b2b6db9bec2c76d9f5095107c85b773a567080451667

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: ayafileio-1.4.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 98.0 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.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c824f766cdbf49ab681ae74b38d086df3fd57420838155da5c885c636410bc7b
MD5 54fb5b90fb8ce024a9ab45caa408f7a6
BLAKE2b-256 89f36422f1a2f89640501424dfd3179282a17e5497b14356307369d5cae48975

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e3f36f463137ca95edac56705531535753d42e87393c4c3348cc4841cf59b02d
MD5 7e407904d5c5c7259084eaf76e5e05c0
BLAKE2b-256 9538be8727752d6e2122bc8df09ff76870a652be22b6e22d374dc2c2ebbae095

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 d26bedc3a16091f8cb82577f4bf4760c32784b7a82a99ff2c93f5876a3eb6d44
MD5 c0fe7f088d6f25a19ca55280cd0254c6
BLAKE2b-256 f515f80532ef847e48fada3fe53076659294812da4337aeae4dffd2fc6d659ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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.0-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for ayafileio-1.4.0-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 1b3417daf0e0928191d7021a50659b0b381f2b5bc2f802e23d1aeb52cbca7813
MD5 c9d21da861298c5e6d03edc4802155ae
BLAKE2b-256 f7cb9c65f0a0f5c7e2857eccb222142f4827c9dff73cd804b27d19aaaa7a7fb9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ayafileio-1.4.0-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