mhx / mhx/dwarfs

Feature request: optional Asio integration

Open
#383 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
2.6k
Forks
92
PR merge metrics
No merged PRs in 30d

Description

I'm curious whether you'd be interested in providing ability to read files from archives asynchronously using Asio (under a CMake option), which would make the FS even more ultimate solution.

The current functionality only allows to do this via `std::future`, which is sorta async, but still blocking.
Asio would allow to pair DwarFS reads with eg coroutines which would suspend until the read is complete (instead of blocking on `future.wait()`) and then resume automatically.

Feel free to close as "Not planned" if not planned.

(BTW Boost modules that DwarFS requires to compile already pull in Asio as dependency)

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by mapping the existing std::future-based archive read path and the CMake options that control optional dependencies. The issue names no files or tests, so first establish the intended asynchronous API and integration boundaries. Done would require an agreed design, an optional build configuration, and coverage for asynchronous archive reads.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp
Domain
build-system, operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.