Is Asio still developed separate from Boost, or is Boost.Asio the only version still being updated?
On the Asio website they talk about there being benefits to both versions, and that Asio is updated more often than Boost is. However, the latest dev release on the site is 1.5.3, released in March of 2011, whereas the latest Boost 1.53 release from February 2013 includes Asio 1.8.3, with a large number of changes since 1.5.3.
Either the Asio website was abandoned without notification in favor of Boost-only updates, or it has moved to some location I haven't found. Does anyone know definitively what happened?
The reason I ask is that I'm trying to cut Boost from my project, and Boost.Asio is the only Boost library I'm currently using. Asio by itself is a header-only library, but Boost.Asio pulls in several other Boost libraries (System, Regex, Date_Time) which are otherwise unused.
I'd be willing to switch to another light-weight socket library, but haven't found one as good as Asio yet (in terms of low dependencies and using native platform iocp/epoll methods).
Best Solution
Asio is separately developed, then boostified and merged into Boost.Asio. However, you may not be able to remove Boost from your project based on which features and compiler are being used. As of Asio 1.10.0, Asio tries to use the equivalent C++11 standard libraries instead of Boost.
Asio is basically Boost.Asio:
Boost dependencies may exists for Asio versions before 1.10.0. These dependencies are often introduced within templates; thus, the dependency may only occur when an application uses specific functionality. It is easy to overlook the subtle detail on the Asio and Boost.Asio page, where it states:
In general, the following features introduce dependencies:
std::chrono
will be used.read_until()
operations that use regex depend on Boost.Regex.It may be worth considering using: