Skip to content

turnloop 0.1.0-alpha.2

Pre-release
Pre-release

Choose a tag to compare

@proggeramlug proggeramlug released this 15 Sep 01:10
· 117 commits to main since this release
7f37e7e

Second alpha of turnloop, an embeddable, host-driven event-loop driver for Rust (zero tokio) with native, Windows, WASI and web backends. All 12 crates are published at 0.1.0-alpha.2.

New

  • turnloop-io (new crate): the shared async adapter layer on the turnloop executor (streams, pools, DNS, exchange cancellation, TLS upgrades).
  • Windows IOCP backend (#5): the production Windows provider.
    • Completion-port I/O, a high-resolution NT wait-packet timer, named pipes, processes with Job Objects, and console signals.
    • The shared contract suite passes on windows-2025, including the no-spin and zero-allocation gates.
    • .bat/.cmd programs are rejected before spawn.
  • Async clients (#6) on turnloop-io:
    • PostgreSQL: TLS, SCRAM-SHA-256-PLUS channel binding, prepared statements, COPY, notifications, cancel, pools.
    • MySQL: TLS, caching_sha2 / RSA, binary protocol, pools.
    • Redis: pipelines, pub/sub, cluster MOVED/ASK, Sentinel.
    • SMTP: STARTTLS / implicit TLS, auth, pipelining.
    • MongoDB: SDAM/CMAP, retryable reads/writes, cursors.
    • Async TLS, HTTP/1.1 + HTTP/2 client and server, and WebSocket adapters.
  • WASI 0.2 DNS through the additive Backend::resolve (native backends keep the blocking-pool fallback).

Verification

  • CI on every native mode (Linux, macOS, Windows), WASI 0.2 and 0.3, and web (Chrome, Firefox).
  • Real-server suites for PostgreSQL, MySQL, Redis, MongoDB and SMTP, native and WASI 0.2.
  • h2spec, miri, loom, zero-tokio and the dependency soak gates.

Known follow-ups

Windows issues #8–#11 (named-pipe backlog, same-port pipe routing, remaining contract equivalents, console and job semantics).