On Mon, Nov 29, 2021 at 11:30 AM Vinnie Falco wrote:
Upon reviewing Boost.Coroutine2, Boost.Fiber, and taking another look at Boost.Spawn, I believe you are correct.
We have a problem with not being able to deprecate Boost.Coroutine because of Asio. The Asio author is silent on pull requests and emails. Boost.Spawn appears to be a mechanism for facilitating progress on this matter, in a fashion similar to adding an improved string_view to Boost.Utility.
In light of this, I endorse Boost.Spawn for review.
Boost.Coroutine is deprecated, but cannot be removed because of Asio. The discussion above implies that Boost.Spawn allows Boost.Coroutine to be removed - but I don't understand how because Boost.Asio still depends on Boost.Coroutine And Boost.Asio cannot depend on Boost.Spawn since the latter depends on Boost.Asio, no? According to Oliver's e-mail above Spawn uses io_context from Asio, and that would result in a dependency cycle. What am I missing? Glen