| 20 | '''Yoheeb added:''' |
| 21 | * Allow selective creation and display of code review comments that are specific to a file in the changeset, maybe next to (view diffs) on changeset summary, add "Code review - ACCEPTED/REJECTED/NONE/ADD REVIEW (with proper permissions of course)" as a link to the full review. |
| 22 | * Allow wiki formatting in code reviews, including inter-trac links. (file: xyz/abc.C according to !#123, this isn't the correct fix....see @line127-129 or something) |
| 23 | * Configurable Workflow hooks on configurable Code review status (accept, reject...etc)? |
| 24 | |
| 25 | Originally, I was going to create something similar to this, but you created a foundation that was better. Some things I was going for, which I hope you will consider: |
| 26 | My design requirements were (optional items in italics): |
| 27 | 1 - Allow a code review on a changeset[[BR]] |
| 28 | 2 - save the code review results in a "permanent" location (I was going to use subversion repo properties)[[BR]] |
| 29 | 3 - ability to view/print code reviews for: |
| 30 | A: individual changeset[[BR]] |
| 31 | B: Range of Changeset (including all) |
| 32 | ''4 - configurable pass/fail, etc states''[[BR]] |
| 33 | 5 - Access to add/view code reviews for entire changeset from changeset view |
| 34 | ''A: with wiki markup support and/or links to individual files under review'' |
| 35 | 6 - Access to add/view code reviews for the "currently" viewed file from a changeset diff view[[BR]] |
| 36 | 7 - code review permission to create/edit a review[[BR]] |
| 37 | ''8 - code review VIEW permission''[[BR]] |
| 38 | 9 - ability to see all (or individual) reviews when viewing a specific file/file+revision (suggest augmenting annotation feature)[[BR]] |
| 39 | ''10 - workflow triggers.'' |
| 40 | |
| 41 | with that: |
| 42 | My original idea was to save the reviews to the subversion changeset via properties with some simple formatting, and: |
| 43 | * Also suggest a link to code review, if present, when a list if files is presented for large changesets (right next to "view diffs") |
| 44 | * Modify the Annotation view template to parse the special properties, and pull out reviews specific to the current file/selected revision and |
| 45 | * Show each review by author (allow multiple reviewers) |
| 46 | * only show the review outcome (accepted, rejected, ...make this configurable?) as a link to the full review text as a wiki page/section of a page (maybe 1 page per changeset, 1 heading section per file?) |
| 47 | * This allows a code review summary to just be a print of a wiki page, or, a print of all the sub page via, say, Wiki-Print |
| 48 | * changeset string format could be something as simple as CR:REVNUM:File:Author:result as the property name, then the comments. |
| 49 | * then on the annotation hover, parsed into: (in pseudo code, sorry, not sure how else to convey the idea) |
| 50 | {{{ |
| 51 | for all properties on changeset REVNUM: |
| 52 | split on : |
| 53 | if [0] ==CR and [1] ==$REVNUM: |
| 54 | if [3] == CURRENT_FILE_SHOWN: |
| 55 | insert "Code review by " +Author +" - " + CreateLinkToFullReview(CR:REVNUM:File:Author:result) into annotation pop-up |
| 56 | else: |
| 57 | remove it from the __displayed__ list of properties in annotation pop-up! |
| 58 | else: |
| 59 | allow normal processing |
| 60 | }}} |
| 61 | |
| 62 | Now I realize this is tied to subversion, but could some of these ideas be incorporated into this DB based implementation. |
| 63 | Also, I apologize for the verboseness of this, not sure what the best way to convey these concepts in compact form. |