eidheim / Simple-WebSocket-Server

A very simple, fast, multithreaded, platform independent WebSocket (WS) and WebSocket Secure (WSS) server and client library implemented using C++11, Boost.Asio and OpenSSL. Created to be an easy way to make WebSocket endpoints in C++.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Removing dependency on Boost

kbartosik opened this issue · comments

Hi,
Excellent library, congrats.
Do you consider removing dependency on Boost? Quick skimming through your code showed very few dependency on Boost (like error_code, which can be taken from std).
Of course, the heart - Asio - but that does not need to be from Boost. There is a version of non-Boost (see on asio home page http://think-async.com/Asio/AsioAndBoostAsio).
Disclaimer - I do not have anything against Boost - but removing dependency might be better for those not wanting to compile/use it.

Thank you for the kind feedback.

We are dependent on Boost in the next few years. However, Asio will most likely be a part of the standard library in C++20. We can also move to std::regex instead of boost::regex in around 2019. Boost.Coroutine is also used, but hopefully the boost.asio sources will move to std coroutines soon after C++17 arrives, but like with regex, we would need to wait for the popular server LTS'es to expire.

That said, I do try to keep the library as modern as possible, but I also have to take into account that older systems like, currently, Ubuntu 14 and debian stable should be able to compile the library without modifications.

Thank you for explanation.
That is ok, just wanted to know. With or without Boost, I am going to use your library.
BTW, great you have made it MIT licensed. Good choice.
Closing issue.