Code Review

Code Review Practices

PR to libtock-rs can be divided into two categories:

  1. Upkeep pull requests are minor changes to existing functionality. Examples include bug fixes (that do not significantly affect APIs) and documentation that describes an existing implementation.
  2. Significant pull requests are pull requests that are too substantial to be considered upkeep pull requests. Significant pull requests may include new functionality, API changes, significant refactoring, new tooling, and other changes.

The owners of libtock-rs (listed below) determine whether a PR is an upkeep PR or a significant PR. PRs should be merged by the libtock-rs owners rather than the PR's author. PRs authored by libtock-rs owners should be merged by a reviewer rather than their author. In general, PRs should be merged using a bors r+ command rather than the GitHub UI (see the bors documentation for more information on bors).

A PR may only be merged when all of the following are true:

  1. At least one libtock-rs owner (who is not the PR author) has approved the PR.
  2. All outstanding review discussions have been resolved.
  3. If the pull request is significant, a 7 day waiting period has passed since the PR was opened.

We recommend that authors of significant PRs comment on the PR when they believe the above criteria have been satisfied (including the waiting period). This is primarily to remind the owners to merge the PR. Secondarily, it should help identify confusion about a PR review's status.


The owners of libtock-rs are: