| Branch | Docs | GitHub Actions | Drone | Coverage (Linux) | Coverage (macOS) | Coverage (Windows) |
|---|---|---|---|---|---|---|
master |
||||||
develop |
Boost.Corosio is a coroutine-only I/O library for C++20 that provides asynchronous networking primitives with automatic executor affinity propagation. Every operation returns an awaitable that integrates with the IoAwaitable protocol, ensuring your coroutines resume on the correct executor without manual dispatch.
Corosio depends on Capy. Both must
be made available before linking. Use FetchContent, add_subdirectory,
or find_package — declaration order does not matter:
include(FetchContent)
FetchContent_Declare(capy
GIT_REPOSITORY https://github.com/cppalliance/capy.git
GIT_TAG develop
GIT_SHALLOW TRUE)
FetchContent_Declare(corosio
GIT_REPOSITORY https://github.com/cppalliance/corosio.git
GIT_TAG develop
GIT_SHALLOW TRUE)
FetchContent_MakeAvailable(capy corosio)
target_link_libraries(my_app Boost::corosio)- CMake 3.14 or later
- C++20 compiler (GCC 12+, Clang 17+, MSVC 14.34+)
- Ninja (recommended) or other CMake generator
Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at https://www.boost.org/LICENSE_1_0.txt)