Add initial review request UI for commit histories.

Review Request #6931 — Created Feb. 10, 2015 and submitted — Latest diff uploaded

Information

Review Board
dvcs
39bc55a...

Reviewers

Review requests that contain commit history will now show the list of
commits on the current diff revision. The changes to the commits in
diff revisions are now reflected in change descriptions.

The BuiltinLocalFieldMixin has been modified to allow subclasses to
override its default behaviour (where the review_request_details are
replaced if it is a draft and the field does not exist on the draft).
This was changed because the new DiffCommitListField needs to display
the draft commits and the default behaviour would prevent that.

Tested the following manually:

  • Created a review request with commit history. The commit list field
    was displayed in the draft view.
  • Published the review request. The commit list field was displayed in
    the public review request.
  • Uploaded a new diff with history. The draft view reflected the
    changes in the commit list field.
  • Published the review request. The change description reflected the
    changes to the commits on the review request.
  • Published the review request without uploading a new diff. The commit
    list field did not change and it did not appear in the change
    description.
  • Updated the review request using a new diff with history. The change
    description was rendered properly.
  • Updated the review request using a squashed diff. The commit list
    field disappeared from the review request and the change description
    showed the removed commits.
  • Updated the review request using a a diff with history. THe commit
    list field re-appeared in the review request and the chagne
    description showed the added commits.