On Fri, Jun 26, 2026 at 2:23 AM Vinnie Falco via Boost < boost@lists.boost.org> wrote:
They are separate because not everyone needs sockets. Capy provides the coroutine execution model, and byte-oriented streams. Business logic that operates on streams: HTTP parsing, protocol state machines, serialization, can be expressed without Corosio's platform-specific I/O. Capy is the part you can use everywhere, including environments where sockets don't exist. Corosio adds the platform layer: sockets, timers, reactors.
It's worth noting for the review managers and other readers that it's typically considered a strong anti-pattern to tie security-critical functionality like parsing network bytes to a scheduler. Tying HTTP parsing to a byte-oriented stream is something security researchers aren't particularly stoked about. Instead, what people who are serious about fuzzing wanna see is just a one-step separation from fuzzer output to parser input. This is how libraries like Botan, rustls, etc. work and is even how Beast works underneath it all. Byte-oriented streams may be somewhat nice but tbqh, they're isomorphic to just generating localhost traffic anyway which isn't very hard to setup and then abstract away, even. A review that evaluates only Capy, declines to examine Corosio, and finds
it wanting is not engaging with what was submitted. I wouldn't call such a review an abomination. I would call it a misunderstanding.
I realize that the two-library physical division is not what folks are used to, and I am sure that the Boost community is smart enough to navigate this novelty as presented.
It seems odd to make a proposal like this and then add this as some sort of an addendum. You propose two libraries but then it's wrong when only the foundational one gets reviewed? It doesn't make sense to propose two libraries and say that the criticism of one is irrelevant because it doesn't consider the other. Either we're reviewing two libraries or we're reviewing one and if we are going to review two, then it's acceptable to review one completely in isolation. It either stands up on its own or it doesn't. - Christian