[[PageOutline(2-3, Categories, pullout)]] = Distributed Peer Review of Source Code == Description This plugin integrates a distributed peer review system for software developers into Trac. The plugin eliminates the need for time consuming code review meetings by giving developers the ability to review code in a user-friendly web-based environment during their own time and in a distributed manner. The interface integrates seamlessly with your repository, thereby allowing users to browse it for reviewable files. The purpose of this plugin is to review files from the repository and comment on them. Later on one may check the applied changes against the original file using a diff view. The plugin is not meant for reviewing change sets (#224). Key features: * Support for multiple repositories (since [15598]) * Diff view of changes in follow up reviews * Use wiki formatting in comments * Inline display of comments * Mark comments as read * Customizable [wiki:PeerReviewPlugin/Workflows review workflows] * Custom [wiki:PeerReviewPlugin/Reports reports] * Export data in MS Word docx format This is the main page with code reviews that are to be performed by you as well as code reviews that you have requested to be performed by others: [[Image(PeerReviewPlugin/Documentation:my_code_reviews.png, 800px, border=2)]] Further documentation: * [wiki:PeerReviewPlugin/Documentation User guide] * [wiki:PeerReviewPlugin/Reports Reports] * [wiki:PeerReviewPlugin/Screenshots Screenshots] * [wiki:PeerReviewPlugin/Workflows Workflows] The plugin uses code from TestManagerForTracPlugin for the workflow feature (see TestManagerForTracPluginWorkflow) and persistence of objects (see TestManagerForTracPluginGenericClass). Thanks to [wiki:seccanj Roberto Longobardi] for making it available under the permissive bsd-license. See also: [[ListTagged(codereview)]] == Bugs/Feature Requests Existing bugs and feature requests for PeerReviewPlugin are [report:9?COMPONENT=PeerReviewPlugin here]. If you have any issues, create a [/newticket?component=PeerReviewPlugin new ticket]. [[TicketQuery(component=PeerReviewPlugin&group=type,format=progress)]] If you have any comments about the plugin or/and you would like to join the discussion, please see ticket #2850. == Download Download the zipped source from [export:peerreviewplugin here]. Multirepository support is available in [source:peerreviewplugin/trunk trunk]. == Source Check out PeerReviewPlugin from [/svn/peerreviewplugin here] using Subversion, or [source:peerreviewplugin browse the source] with Trac. == Installation General instructions on installing Trac plugins can be found on the [TracPlugins#InstallingaTracplugin TracPlugins] page. Enable the plugin in your `trac.ini` file: {{{#!ini [components] codereview.* = enabled }}} == Configuration === Permissions The permissions `CODE_REVIEW_DEV` and `CODE_REVIEW_MGR` must be assigned as appropriate: * Only users with permission {{{CODE_REVIEW_DEV}}} may perform code reviews. * Permission {{{CODE_REVIEW_MGR}}} is for administration of code reviews. === Workflow operation for reviews You can configure a custom workflow operation {{{set_review_owner}}} for reviews: {{{#!ini [peerreview-resource_workflow] change_owner = * -> * change_owner.name = Change Owner to change_owner.operations = set_review_owner change_owner.permissions = CODE_REVIEW_MGR }}} This operation allows you to change the owner of a review. Possible users are taken from the same list as the one used when creating a review. In the given example you need the permission {{{CODE_REVIEW_MGR}}} to perform the operation. === Project list When creating a review you can specify an associated project. The projects are taken from the list created by SimpleMultiProjectPlugin. If you don't have this plugin installed or you want to create another list, you may do so using the following settings: {{{#!ini [peerreview] projects = Project1, Project2, Project3 }}} == Recent Changes [[ChangeLog(peerreviewplugin, 3)]] == Author/Contributors '''Author:''' Team5 [[BR]] '''Maintainer:''' [[Maintainer]] [[BR]] '''Contributors:''' [wiki:sontek], [wiki:djeebus], [wiki:proofek], [wiki:blongden], [wiki:bselby], [wiki:Rys], [wiki:andersm], [wiki:rjollos], [wiki:yudivian]