Anaconda/ReviewProcess

From FedoraProject

< Anaconda
Revision as of 12:31, 21 March 2013 by M4rtink (Talk | contribs)

Jump to: navigation, search

Contents

Anaconda Patch Review Process

To improve the quality of commits and reduce the number of typos introduced into the anaconda source, we are adding a new mandatory patch review process. The intent is to keep this very light-weight while still increasing visibility for changes.

Note that review is no substitute for having tested your code and so you should still do that even before the submission of the code for review.

How to Submit Changes for Review

For "final" review of patches, it is best to have a local git tree to which you have committed your changes as a set of patches. If it is a small change, one commit may be sufficient. Larger changes should be broken into a regular patch series in which at each subsequent stage of patch application, the whole is usable and testable.

Please also make sure that there is a usable commit message along with each commit. These should be formatted with a simple summary (~ 70 characters or less), a blank line and then a lengthier description (if necessary)

Once you have this, you can use

  git format-patch origin/master..

which will spit out a series of files named 000x-foo containing your patches. Look to ensure that these look reasonable and then you can send the patches to anaconda-devel-list for review with a command like

  git send-email --to anaconda-patches@lists.fedorahosted.org --suppress-from \
 --compose <patch files here>

This will let you compose an introductory mail for the patch series; if this is a single patch, you can likely send without --compose as your commit message should be enough to make it clear what you are trying to fix.

Reviewing Process

Patches will be sent to anaconda-devel-list where it is expected that they'll be critiqued. Be sure to give adequate time for people to see changes, especially larger changes or something which might be expected to be controversial. We aren't at this time going to put any strong constraints on how many reviews are needed or anything of that sort, though. Use your best judgement.

Misc Tips

Git Configuration Tips

To make all of this work easily with git, you should set up some basic config options with git config --global. Options that are good to set are user.name, user.email, and sendemail.smtpserver

Install the git-email package

On Fedora 18, the git send-email command is not included in the main git package; install the git-email package to get it.

Syntax Checking of Code

Thanks to Hans's hard work, we now have a workable pychecker config again; pleas be sure to run the script and ensure that your code does not introduce any new syntax errors.