Skip to content

docs(fast_io): design AsyncFileWriter trait (#1655)#3523

Merged
oferchen merged 3 commits into
masterfrom
docs/async-file-writer-trait-1655
May 1, 2026
Merged

docs(fast_io): design AsyncFileWriter trait (#1655)#3523
oferchen merged 3 commits into
masterfrom
docs/async-file-writer-trait-1655

Conversation

@oferchen
Copy link
Copy Markdown
Owner

@oferchen oferchen commented May 1, 2026

Summary

  • Design audit for a platform-agnostic AsyncFileWriter trait that hides Linux io_uring, Windows IOCP, and macOS dispatch_io / writev behind a single async-friendly surface in fast_io.
  • Cites every existing call site that branches on cfg(target_os) or feature flags today (disk-commit Writer enum, make_writer, transfer_ops/response.rs:108, generator basis-read path, lib.rs module gates) and shows how each collapses to a single trait method.
  • Recommends a four-phase landing sequence: lift IOCP first, wrap io_uring (including IoUringDiskBatch), add macOS impl per Fix IPv6 zone identifier parsing in module list requests #1657, then retire IoUringOrStdWriter / IocpOrStdWriter from engine and transfer.

Closes #1655.

Verification

Docs-only change. New file: docs/audits/async-file-writer-trait.md. No .rs, Cargo.toml, or build-config changes. No code paths exercised. Cross-references existing audits #1653 (docs/audits/macos-dispatch-io.md), #1654 (docs/audits/bsd-aio.md), #1086 (docs/audits/disk-commit-iouring-batching.md), #1899 (docs/audits/windows-iocp-benchmark.md).

@github-actions github-actions Bot added the documentation Improvements or additions to documentation label May 1, 2026
@oferchen oferchen merged commit 13371c2 into master May 1, 2026
11 checks passed
@oferchen oferchen deleted the docs/async-file-writer-trait-1655 branch May 1, 2026 21:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant