Skip to content

Releases: chaosbeagle/pyisyntax-fastio

pyisyntax-fastio 0.2.0a1

Pre-release

Choose a tag to compare

@chaosbeagle chaosbeagle released this 15 Jul 13:14
2d3b2a0

pyisyntax-fastio 0.2.0a1

This is an experimental, unofficial alpha of the pyisyntax-fastio fork. It is
published on GitHub only and is not available from PyPI. The public Python
usage remains:

from isyntax import ISyntax

The distribution name is pyisyntax-fastio; the import package remains
isyntax.

Install

Download the wheel for your operating system and architecture from the assets
below, then install that local file. For example, on 64-bit Windows:

python -m pip install pyisyntax_fastio-0.2.0a1-cp310-abi3-win_amd64.whl

All wheels use the CPython Stable ABI (cp310-abi3). Package metadata requires
Python 3.10 or newer, and CI coverage currently spans CPython 3.10, 3.11, and
3.12.

Available binaries:

  • Windows x86-64
  • Linux x86-64 (manylinux2014 / glibc 2.17 or newer)
  • macOS Intel x86-64
  • macOS Apple Silicon arm64

There are no Windows ARM64, Linux aarch64, or macOS universal2 wheels in this
alpha.

Highlights

  • Preserves the existing from isyntax import ISyntax API.
  • Adds a per-slide positional source API with native-file and seekable Python
    source implementations.
  • Sorts missing tile codeblocks by file offset and applies bounded prefetch
    coalescing with a maximum 64 KiB gap and 1 MiB span.
  • Treats EOF, short reads, and callback failures as fatal instead of decoding
    partial or uninitialized codeblock data.
  • Adds cumulative physical-I/O counters.
  • Raises RuntimeError for pixel reads from an uninitialized Python caller
    thread instead of allowing a native crash.

Verification and limitations

  • Release source: commit
    2d3b2a0.
  • The post-merge package matrix passed sdist tests on CPython 3.10–3.12, all four
    wheel builds, abi3audit, and an installed Windows-wheel smoke test from a
    Unicode path: GitHub Actions run 29417869726.
  • Warm-cache H99 measurements showed materially fewer physical reads and less
    logical seek distance, but true OS-cold HDD validation is still pending. This
    alpha does not promise a universal speed-up.
  • Pixel reads currently need to remain on the Python thread that initialized
    libisyntax for the slide.
  • This project is unofficial and is not affiliated with or endorsed by Philips.

The Python fork is MIT-licensed. The vendored libisyntax code retains its
BSD-2-Clause license; both notices are included in every distribution. SHA-256
hashes are provided in SHA256SUMS.txt.