Boost logo

Boost Announcement :

Subject: [Boost-announce] [Boost-users] [review][beast] Beast Review Results
From: Michael Caisse via Boost-users (boost-users_at_[hidden])
Date: 2017-07-20 07:57:33

In an effort to get you all to just read this announcement sequentially,
I will start with the result:

        Beast is ACCEPTED into Boost without conditions

The entire community is served when the Boost review process works well
and I would like to personally thank each of you who took your valuable
time and worked to make Boost better. We had 21 formal reviews submitted
from a demographic that included both seasoned participants and
first-time reviewers. It is gratifying to have such participation for
what some might see as a niche library.

 * Thank you Vinnie for your effort to assemble a high-quality package
   for review and for your responsiveness on the mail-lists. GitHub,
   and Slack.
 * Thank you to the individuals that submitted their first Boost
 * Thank you to the veteran contributors and authors for continuing to
   devote energy to the community.

I found the discussion surrounding the library beneficial and I know
that Vinnie walked away with actionable items to improve Beast.

The Stats:

While the review process is not exactly tallying up votes and casting a
verdict, we can gain some insight of the general, gross-scale opinion of
the library.

Official reviews were received from:

  Reviewer Accept | Reject
* Zach Laine : X
* Nik Bougalis : X
* Artyom Beilis : X
* Peter Dimov : X
* Klemens Morgenstern : X
* Glen Fernades : X
* Marcel Ebmer : X
* Scott Determan : X
* Stanislav Karchebnyy : X
* Michael Larson : X
* Vadim Zeitlin : X
* Jared Wyles : X
* Niall Douglas : X
* Barrett Adair : X
* Gyorgy Szekely : X
* Daniela Engert : X
* Jens Weller : X
* Phil Endecott : X
* Bjorn Reese : X
* Rüdiger Berlich : X
* Christopher Kohlhoff : X

Most of the reviewers agreed on the inclusion of Beast into Boost and at
the same time that Beast isn't a great name for the library. (Just say
Boost.Beast 10-times-fast). Vinnie has a FAQ item discussing the name
and his continuing use is deliberate. He has heard the petitions to
change and weighed them.


A variety of concerns and comments were made during the review. An
impressive number of items were addressed in code or documentation
during the review period itself.

Some of the stated concern for rejection included:

* Too many templates
* Run-time polymorphism / OO would be better.

* Library scope is too small and provides no real value to users -

 This is clearly one of those value judgements and for some users the
 not-in-scope nature of Beast made the feature set not compelling
 enough to use or have as a Boost library. Other users spent time
 converting existing projects to use Beast. This included projects
 previously running POCO, libcurl, and homegrown solutions.

 Beast has existing commercial and open-source users. The library
 clearly meets the needs of some users.

* Premature optimization
* Security concerns

* Poor support for HTTP chunking -

 Vinnie proposed and then later made changes addressing the chunking
 concerns. Unfortunately, the reviewer with the complaint did not
 respond to multiple requests for feedback.

* Licensing -

 Four files have dual licenses (BSL and another). Boost's legal
 counsel is reviewing the situation and we hope to have guidance by
 the end of this week. I have not placed a condition on the
 acceptance of Beast based on the legal feedback because Vinnie knows
 licensing issues must be remedied before the repository is merged
 into Boost.

The Upsides:

There were lots of great things said about the Beast package. Some of
these include:

* Great documentation
* High quality implementation.
* Thorough test suites
* Already being used by commercial entities and others
* Lots of successful real-life conversions of existing clients/servers
* Extremely responsive developer (do you sleep Vinnie?)

An Author as much as a Library:

Accepting a library into Boost is also accepting an author. Boost
authors have enormous latitude in the control and modifications of their
libraries. Vinnie has shown dedication to addressing issues, listening
to constructive input, making changes when appropriate, and protecting
his vision of what the Beast is. I believe Vinnie will serve the
community well as a contributor.

Final Thoughts:

Reviews are hard. It is hard to have your work torn apart and remain
considerate. It is hard to repeat answers to previously asked questions.
It is hard to explain specific use-cases and why it is important a
library supports them. It is difficult to critique a large body of work.
It is hard to stick with conversations to make overall improvements.

I was impressed with the participants in the review. We are all
opinionated and passionate -- likely a prerequisite to being part of the
Boost community. Thank you all for making Boost better.

I'm looking forward to seeing additional libraries and application built
with Beast.

Michael Caisse
Ciere Consulting
Boost-users mailing list

Boost-announce list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at