- If you have no experience with Asio or with HTTP, how approachable is this library? Were you able to understand the documents? Could you use the examples? Were you able to build something of your own? Very approachable. I was able to git-submodule the github project, add a couple lines to my CMakeLists.txt, and compose bits from the examples into just what I needed. The one major gotcha for a new user is asio's lack of configurable timeouts on sync methods. This seems to be a common problem for new asio users and moving from sync examples to async real-world code can be painful. I'd like to see an upfront note about this or more async examples as I expect this library to be popular with users completely new to asio. - What is your evaluation of the design? I haven't studied it enough to say - What is your evaluation of the implementation? It's template-heavy which is outside my normal comfort zone. Many error messages are more confusing than they'd be with procedural or oop code. Compilers have been making good progress with this and beast includes many static asserts inside its templates to help. - What is your evaluation of the documentation? It's all there and searchable with good examples. I had trouble finding the websocket binary flag without a google site search but once I found it I saw it's in the obvious place - What is your evaluation of the potential usefulness of the library? Very high. Its main competitors are complex to set up or bloated/highly coupled to a large set of libraries - Did you try to use the library? With which compiler(s)? Did you have any problems? Yes, I'm using it in production and haven't had any issues. Beast has contributed no extra compiler warnings or ubsan/asan problems to my own code aside from one false positive which Vinnie quickly fixed. I wouldn't expect any problems as the tests cover virtually everything. using clang 3.8.0 and gcc 5.4.0 and boost 1.58.0, which the author has kept compatible through some effort as the minimum version - How much effort did you put into your evaluation? A glance? A quick reading? In-depth study? A few days using beast to add embedded http servers to existing applications, port existing libcurl client code, and write a new websocket client for an existing server - Are you knowledgeable about the problem domain? Not really, I was looking for a library to take care of this - should beast be accepted into boost? Yes, accept. I avoided using boost for many years because of integration headaches and compilation time. I've come around and now use it for basic cross-platform support for things that in other languages would be part of the standard library (like boost::filesystem and, before c++11, boost::thread). Not having a standard way to do http is an embarrassment and I'd like to see this accepted asap to hasten the inevitable libraries that will go on top and have even more value for users looking for high abstraction/simple use cases. Michael Larson On Wed, Jul 5, 2017 at 10:19 PM, Michael Caisse via Boost < boost@lists.boost.org> wrote:
Hi all -
We are half-way through the review and have some great involvement and exchanges and a few reviews already.
I hope if you haven't written a review yet that you still will. Please provide whatever effort you can afford toward the review process. Boost depends on community involvement.
You might have noticed that I have solicited input from you regardless of your experience with the domain. I personally think it is a mistake to have input only from domain experts. True innovation often comes from "outsiders". If you have no experience with Asio or with HTTP, how approachable is this library? Were you able to understand the documents? Could you use the examples? Were you able to build something of your own?
Domain experts -- you know the dark corners of the domain. The hard parts that have caused you hours of lost sleep and the need to hack around an existing library or to write your own. How does Beast address your concerns and the problems you have experienced in the past? Is it flexible enough to be put into your tool chest?
So far we have reviews from:
* Marcel Ebmer * Peter Dimov * Artyom Beilis * Zach Lain * Nik Bougalis * Klemens Morgenstern * Glen Fernandes
If I missed a review from you, please let me know!
Happy Coding! michael -- Michael Caisse Ciere Consulting ciere.com
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/ mailman/listinfo.cgi/boost