Skip to content
This repository was archived by the owner on Apr 26, 2024. It is now read-only.

Commit dcc7873

Browse files
authored
Add information on how the Synapse team does reviews. (#13132)
1 parent a0f51b0 commit dcc7873

File tree

4 files changed

+47
-1
lines changed

4 files changed

+47
-1
lines changed

changelog.d/13132.doc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Document how the Synapse team does reviews.

docs/SUMMARY.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@
8181
# Development
8282
- [Contributing Guide](development/contributing_guide.md)
8383
- [Code Style](code_style.md)
84+
- [Reviewing Code](development/reviews.md)
8485
- [Release Cycle](development/releases.md)
8586
- [Git Usage](development/git.md)
8687
- [Testing]()

docs/development/contributing_guide.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,7 @@ To prepare a Pull Request, please:
351351
3. `git push` your commit to your fork of Synapse;
352352
4. on GitHub, [create the Pull Request](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request);
353353
5. add a [changelog entry](#changelog) and push it to your Pull Request;
354-
6. for most contributors, that's all - however, if you are a member of the organization `matrix-org`, on GitHub, please request a review from `matrix.org / Synapse Core`.
354+
6. that's it for now, a non-draft pull request will automatically request review from the team;
355355
7. if you need to update your PR, please avoid rebasing and just add new commits to your branch.
356356

357357

@@ -527,10 +527,13 @@ From this point, you should:
527527
1. Look at the results of the CI pipeline.
528528
- If there is any error, fix the error.
529529
2. If a developer has requested changes, make these changes and let us know if it is ready for a developer to review again.
530+
- A pull request is a conversation, if you disagree with the suggestions, please respond and discuss it.
530531
3. Create a new commit with the changes.
531532
- Please do NOT overwrite the history. New commits make the reviewer's life easier.
532533
- Push this commits to your Pull Request.
533534
4. Back to 1.
535+
5. Once the pull request is ready for review again please re-request review from whichever developer did your initial
536+
review (or leave a comment in the pull request that you believe all required changes have been done).
534537
535538
Once both the CI and the developers are happy, the patch will be merged into Synapse and released shortly!
536539

docs/development/reviews.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
Some notes on how we do reviews
2+
===============================
3+
4+
The Synapse team works off a shared review queue -- any new pull requests for
5+
Synapse (or related projects) has a review requested from the entire team. Team
6+
members should process this queue using the following rules:
7+
8+
* Any high urgency pull requests (e.g. fixes for broken continuous integration
9+
or fixes for release blockers);
10+
* Follow-up reviews for pull requests which have previously received reviews;
11+
* Any remaining pull requests.
12+
13+
For the latter two categories above, older pull requests should be prioritised.
14+
15+
It is explicit that there is no priority given to pull requests from the team
16+
(vs from the community). If a pull request requires a quick turn around, please
17+
explicitly communicate this via [#synapse-dev:matrix.org](https://matrix.to/#/#synapse-dev:matrix.org)
18+
or as a comment on the pull request.
19+
20+
Once an initial review has been completed and the author has made additional changes,
21+
follow-up reviews should go back to the same reviewer. This helps build a shared
22+
context and conversation between author and reviewer.
23+
24+
As a team we aim to keep the number of inflight pull requests to a minimum to ensure
25+
that ongoing work is finished before starting new work.
26+
27+
Performing a review
28+
-------------------
29+
30+
To communicate to the rest of the team the status of each pull request, team
31+
members should do the following:
32+
33+
* Assign themselves to the pull request (they should be left assigned to the
34+
pull request until it is merged, closed, or are no longer the reviewer);
35+
* Review the pull request by leaving comments, questions, and suggestions;
36+
* Mark the pull request appropriately (as needing changes or accepted).
37+
38+
If you are unsure about a particular part of the pull request (or are not confident
39+
in your understanding of part of the code) then ask questions or request review
40+
from the team again. When requesting review from the team be sure to leave a comment
41+
with the rationale on why you're putting it back in the queue.

0 commit comments

Comments
 (0)