Boost Formal Review Process
Introduction
What to include in Review Comments
Results
Notes for Review Managers
Notes for Library Submitters
Review Wizard
Fast Track Reviews
Proposed libraries are accepted into Boost only after undergoing a
formal review, where Boost mailing list members comment on their
evaluation of the library.
The final "accept" or "reject" decision is made by the Review Manager, based on the review comments
received from boost mailing list members.
Boost mailing list members are encouraged to submit Formal Review
comments:
- Publicly on the mailing list.
- Privately to the Review Manager.
Private comments to a library submitter may be helpful to her or him,
but won't help the Review Manager reach a decision, so the other forms
are preferred.
What to include in Review Comments
Your comments may be brief or lengthy, but basically the Review
Manager needs your evaluation of the library. If you identify
problems along the way, please note if they are minor, serious, or
showstoppers.
Here are some questions you might want to answer in your review:
- What is your evaluation of the design?
- What is your evaluation of the implementation?
- What is your evaluation of the documentation?
- What is your evaluation of the potential usefulness of the
library?
- Did you try to use the library? With what compiler? Did
you have any problems?
- How much effort did you put into your evaluation? A glance? A quick
reading? In-depth study?
- Are you knowledgeable about the problem domain?
And finally, every review should answer this question:
- Do you think the library should be accepted as a Boost
library? Be sure to say this explicitly so that your other
comments don't obscure your overall opinion.
At the conclusion of the comment period, the Review Manager will post
a message to the mailing list saying if the library has been accepted or
rejected. A rationale is also helpful, but its extent is up to the
Review Manager. If there are suggestions, or conditions that must be met
before final inclusion, they should be stated.
Before a library can be scheduled for formal review, an active boost
member not connected with the library submission must volunteer to be the
"Review Manager" for the library.
The Review Manager:
- Checks the submission to make sure it really is complete enough to
warrant formal review. See the Boost
Library Requirements and Guidelines. If necessary, work with
the submitter to verify the code compiles and runs correctly on several
compilers and platforms.
- Finalizes the schedule with the Review Wizard
and the submitter .
-
Posts a notice of the review schedule on both the regular boost mailing list and the
boost-announce
mailing list.
- The notice should include a brief description of the library
and what it does, to let readers know if the library is one they
are interested in reviewing.
- If the library is known to fail with certain compilers, please
mention them in the review notice so reviewers with those compilers
won't waste time diagnosing known problems.
- Inspects the Boost library
catalogue for libraries which may interact with the new submission.
These potential interactions should be pointed out in the review
announcement, and the author(s) of these libraries should be privately
notified and urged to participate in the review.
- Urges people to do reviews if they aren't forthcoming.
- Follows review discussions regarding the library, moderating or
answering questions as needed.
- Decides if there is consensus to accept the library, and if there
are any conditions attached.
- Posts a message on both the boost and boost-announce lists
informing members of the review results.
In other words, it is the Review Manager's responsibility to make sure
the review process works smoothly.
See Submission Process for a
description of the steps a library developer goes through to get a
library accepted by Boost.
A proposed library should remain stable during the review period; it
will just confuse and irritate reviewers if there are numerous
changes. It is, however, useful to upload fixes for serious bugs
right away, particularly those which prevent reviewers from fully
evaluating the library. Post a notice of such fixes on the mailing
list.
Library improvements suggested by reviewers should normally be held
until after the completion of review period. If the suggested
changes might affect reviewer's judgments, post a notice of the
pending change on the mailing list.
The Review Wizard coordinates the formal review schedule:
- Maintains a list of review manager volunteers, in the form of a
queue, so that volunteers who least recently managed reviews become the
prime candidates for upcoming reviews.
- When a formal review is requested for a library:
-
- Assign a review manager and suggests a schedule, after checking
(via private email) availability of the volunteers at the top of
review manager queue.
- Finalize the schedule, once the review manager verifies the
library is actually ready for review.
- Resolve schedule slips or other issues with review managers and
submitters.
- Maintains a schedule of both past and pending reviews, in the form
of the Review Schedule web
page.
- Resolves questions from review managers and library submitters, who
sometimes want a third opinion on questions such as "Should we extend
the review period because ...?"
- Monitors the general review process, and makes minor adjustments as
needed, or queries the list about possible major adjustments.
The role of Boost Review Wizard is currently played by Thomas Witt.
To qualify for fast track review:
- The component must be small.
- The technique must be already in use in Boost libraries and the new
component provides a common implementation.
- A full Boost-conformant implementation is available in the sandbox.
- The Review Wizard determines that the proposal qualifies for fast
track review.
Procedure:
- The Boost Review Wizard posts a review announcement to the main Boost
developer's list. The review period will normally last for 5 days. No two
fast track reviews will run in parallel. Fast track reviews may run during
full reviews, though generally this is to be avoided.
- After the review period ends, the submitter will post a review summary
containing proposed changes to the reviewed implementation.
- The Review Wizard will accept or reject the proposed library and
proposed changes.
- After applying the proposed changes, the component is checked into CVS
like any other library.
Revised
15 October, 2003
© Copyright Beman Dawes 2000
Use, modification, and distribution are subject to the Boost Software
License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at
www.boost.org/LICENSE_1_0.txt)