wiki:PatchReviewProcess

Version 5 (modified by davidsarah, at 2010-02-16T02:57:46Z) (diff)

assign to someone with repository write access

(see also How To Submit Patches)

Why review patches

We want more patches to be contributed to Tahoe-LAFS. Getting feedback on patches encourages contributors. Patches languishing in the "waiting to be reviewed" queue discourages them. (By the way, something else that encourages them is users saying "Thank you.".)

Who can review patches

Pretty much anyone reading this! Knowledge of Python is helpful, but some patches are so simple that reviewing them is a reasonable task for a beginner who is learning Python. Some patches require more specialized knowledge to review, but most don't.

How to review patches

  1. Go to http://allmydata.org . Click on "View Tickets". Click on "review-needed".
  2. You can read everything without registering, but to add comments or change tickets you have to be logged in. Registering is quick and easy -- click the "Register" link at the top right of the page.
  3. Read tickets until you find one that you can review.
  4. (optional) Click "accept". This marks you as the person reviewing this patch. If you don't want to commit to this then you can skip this step.
  5. Read the patch until you understand all of the docs, tests, code and comments in it. You can use the "Browse source" button at the top of the page to read the current versions of the files that the patch changes.
    1. If you can't understand the patch after spending some time on it, then say so in a comment on the ticket! This might be taken as a reason to add documentation or comments or to refactor the code. On the other hand, it might just be that you don't have enough context to understand the code. That's okay too.
    2. If you find errors or omissions in the docs, tests, code or comments then write that down in the ticket, remove the "review" keyword from the keywords, and assign the ticket to someone other than yourself. (That would be the original author of the patch, or someone who seems likely to fix the patch, or if you can't think of anyone better then assign it to me.)
    3. If you understand the patch and find no errors or omissions then remove the keyword "review", add the keyword "reviewed" and assign it to someone with repository write access (currently 'zooko', 'warner' and 'davidsarah'). We'll commit it to trunk.
    4. Feel good about yourself. Thank you for helping with our little project attempting to improve the world!