Skip to content

cppalliance/corosio

Repository files navigation

Branch Docs GitHub Actions Drone Coverage (Linux) Coverage (macOS) Coverage (Windows)
master Documentation CI Build Status Lines Lines Lines
develop Documentation CI Build Status Lines Lines Lines

Boost.Corosio

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.

Quick Start

Standalone build

git clone https://github.com/cppalliance/corosio.git
cd corosio
cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build build

Consume via CMake

Use FetchContent or add_subdirectory to add corosio to your project, then link against Boost::corosio:

include(FetchContent)
FetchContent_Declare(corosio
    GIT_REPOSITORY https://github.com/cppalliance/corosio.git
    GIT_TAG develop
    GIT_SHALLOW TRUE)
FetchContent_MakeAvailable(corosio)

target_link_libraries(my_app Boost::corosio)

Requirements

  • CMake 3.8 or later
  • C++20 compiler (GCC 12+, Clang 17+, MSVC 14.34+)
  • Ninja (recommended) or other CMake generator

License

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)

Releases

No releases published

Packages

No packages published

Contributors 7