514: Comments don't show between multiple versions of a review
- NotABug
- Review Board
bens*****@yaho***** (Google Code) (Is this you? Claim this profile.) | |
June 11, 2008 | |
1379 |
What's the URL of the page containing the problem? It is the diff viewer What steps will reproduce the problem? 1. Post a review of a changelist 2. Add a comment 3. Post an update to the same review 4. See that the comment doesnt show any more in the new revision What is the expected output? What do you see instead? I expect to see all comments from all versions for each line If there is multiple, then maybe color coding them would help. What operating system are you using? What browser? firefox on windows Please provide any additional information below.
This is the intended design. Comments are tied to a revision of a diff. You can't properly move them over if there are any changes to the diff anyway, as code may be deleted, added, changed, and it wouldn't make sense anymore. So it wouldn't be possible to preserve all comments all the time. There is a diff selector with the other revisions, which will let you see past comments.
-
+ NotABug -
+ Component-DiffViewer
There needs to be some way for the reviewer and submitter to see past comments per line because otherwise the reviewer won't know if the changes have answered the comments. The submitter wants to see past comments for the same reason. CodeReviewer handles multiple comments per-line without a problem. Just see http://www.smartbear.com/i/orig/ccollab-feature-sidebyside.png for an example
Lines change though. You might make a comment on line 36, but line 36 from the old diff might be completely different than line 36 on the new one. A bunch of code may have been added or removed. Most of the time, it just wouldn't make sense. Take this a step further and think about comments on interdiffs. There's no way of making that work right. I don't see anything in that screenshot that shows them doing what you're describing. It looks like it's just a conversation on a line in that particular diff. Can you describe exactly how this feature works?
That's fine if the comment doesn't appear on the same line as before. It just needs to show up and reference the version it is commenting on.
I'd think it should (sometimes? usually?) be possible to match lines in the other revisions with lines in the current revision; If the comment's on a line that doesn't exist in the current revision, it could show up on the nearest adjacent line. Or if lines have been added, it could be moved appropriately. Even if the comment isn't actually marked as being on the correct line, it'd help if you could still see the comment text on the same page as the newer revision (in the same general area as the code the comment was originally on), because when reviewing, you want to compare the comments on the old revision (containing required fixes to the code) with the updated code. Having them on separate pages makes correlating between them more difficult. It would also be nice (for similar reasons) if, when looking at a specific line in one diff revision, there would be a link to the matching line in the latest revision. This would mean you could see the original comment (on the old revision), then jump over to the updated code to see if it was fixed.
I also think the feature critical in code reviews. Is finding the correct location the only difficulty here? If so, why not do the following: for a comment tight to the diff between revision x and revision y, show it in any diff between revision a and revision b if a = x or a = y or b = x or b = y? This way you can easily find out where the comment should be shown, and reviewers can also easily compare x to b or y to b to see if the issue has been resolved. To further assist reviewers, you can allow reviewers to mark each comment as resolved, and show the number of unresolved comments for each revision in the summary section. With this feature, once the author publish a new version, the reviewers only need to compare the revisions that have unresolved comments to the latest revision and track the comments.