Allow diff generation to specify extra_data for a review request.

Review Request #12253 — Created April 22, 2022 and submitted — Latest diff uploaded

Information

RBTools
release-3.x

Reviewers

SCMClient.diff() can now return a review_request_extra_data
dictionary containing state to store on the review request's
extra_data.

If posting a brand-new review request, this will be stored directly on
the review request. If updating an existing one, this will be stored on
the draft.

This can be useful for storing metadata that should show up in fields on
a review request, or for providing metadata that can be used for
enhanced matching of review requests when using rbt post -u (a
feature coming for RBTools 3.1 in an upcoming change).

The data will be sent to Review Board through a JSON Merge Patch.

Unit tests pass for all supported versions of Python.

Modified the Git diff output to include some nested metadata and posted
locally. Verified the results in the posted review request, and then in the
draft.

Tested an earlier version of this with the SOS work, verifying that the data
got into the review request and was displayed in the custom fields.

Commits

Files