Diff viewer demo

Review Request #2 - Created Sept. 12, 2016 and updated

chipx86
Review Board
master
470, 5
demo

The Review Board diff viewer is one of the best on the market. It has many ways to help
you look through a change and focus on what's important.

Here's just a few of the features we provide:

  • Detailed file index

    The file index lists all the files modified in the diff, along with a graph showing the
    relative number of inserts, deletes, and replaces.

    The thickness of the ring shows how much of the file is modified (and will be a full red
    or green circle, if the file is deleted or added).

    The colored dots on the side link to the matching changed chunks for that file.

  • Multi-line commenting

    Click a line number, or click and drag down several lines to comment on those lines.

  • Syntax highlighting

    Every diff is syntax-highlighted, making it easier to see, for instance, what's a string
    and what's a reserved keyword.

    This supports highlighting file formats of all kinds.

  • Collapsable diffs

    Diffs are shown collapsed, only showing what changed and the immediate lines around it.

    A header is shown above each change, showing the nearest function or class. Clicking on the
    header will show all unchangedl ines up to that function or class.

    Alternatively, click the [+] 20 to show 20 more lines, or the [+] to show all the lines
    hidden behind that header.

  • Moved code detection

    Significant code changes that move around a file are specially shown with little move flags
    saying where they went to or where they came from. You can rely on these to know that you
    don't need to give that code another look.

    For example, see how the __init__ function was moved in /r/2/diff/

  • Interdiffs

    When reviewing multiple iterations of a change, you can view an "interdiff," the diff
    between two diffs. It's easy to see what has actually changed. For example, see /r/2/diff/1-2/

  • Indentation change indicators

    When code is indented or un-indented, we show it cleanly without showing a full line change.
    These are shown by >>>> and <<<< markers on lines, which you can see in /r/2/diff/ and in
    /r/2/diff/1-2/

    Unlike most diff viewers, you won't have to waste your time examining every line that was
    indented, looking for changes.

    This will even differentiate between spaces and tabs. If someone accidentally indents
    the wrong way, you'll know.

  • See changes made within a line

    When replacing just part of a line, we highlight the changes, making it much easier to see
    the addition of a word, renaming of a variable, or even the accidental removal of a semicolon.

  • Download any file in the diff

    Simply click the little down arrow next to the "Revision" or "New Change" in the diff's
    header to download the full content of either the file on the left-hand side or right-hand
    side.

Click View Diff in the top-right to look at the diff for this review request
to play around with the diffs.


  
  • 43
  • 1
  • 3
  • 47
Description From Last Updated
This is my comment guest2269 guest2269
this is test comment guest3566 guest3566
Hmm guest5603 guest5603
Why do you move this guest172 guest172
test guest4495 guest4495
This is a bug! guest1022 guest1022
test guest5087 guest5087
rrrrr guest1841 guest1841
hi guest459 guest459
foobar guest5801 guest5801
This looks great guest172 guest172
Can selected rows.Great~ guest1094 guest1094
This is test!! guest3273 guest3273
;ll;l;l guest9445 guest9445
asdf guest7568 guest7568
Test issue guest8285 guest8285
Hey, I like this! guest2023 guest2023
Just Wrong! guest5572 guest5572
probme guest3566 guest3566
this is a bug plese fix it guest5109 guest5109
wait, what? guest9373 guest9373
Bad guest1181 guest1181
why change new_value to 'old' in info:? guest5352 guest5352
Comments can be made across multiple lines. You might even want to suggest code, like: if value is not None: ... chipx86 chipx86
This is weird. check again guest3377 guest3377
Where the hell is the else branch??? Come imedeatly to my office guest1841 guest1841
asdfasdfasdfasdf guest506 guest506
Surely this shouldn't be here This text has a link to wikipedia guest8979 guest8979
just for test guest2078 guest2078
Test multi-line comment! guest5087 guest5087
fdasfd guest5572 guest5572
ooooooooooooh guest459 guest459
jhgkjhgk guest956 guest956
asfdasdfsaf guest5572 guest5572
Is this method really still needed? guest3004 guest3004
test guest6108 guest6108
What's wrong with this though? guest8979 guest8979
test guest7613 guest7613
What this means? guest172 guest172
Cooltoo guest1181 guest1181
This is a bug(test) guest1903 guest1903
testing fix it then ship it guest3602 guest3602
this is my comment guest1771 guest1771
chipx86
  1. 
      
    1. is this right?

  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     
     
     
     
     

    Comments can be made across multiple lines.

    You might even want to suggest code, like:

    if value is not None:
        # The rest of the code would go here...
        value_html = ...
    

    Note also how this comment opens an issue. We can use this to track what work still needs to be done on the diff.

    1. We can then have a discussion on it. Maybe I think this code is better:

      if not (not value):
          ...
      
    2. Double negative? You're fired!

chipx86
Review request changed

Commit:

+1f6923b96ee8b096ac1411ee4cb1642850bf814b

Diff:

Revision 2 (+25 -29)

Show changes

guest5572
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    asfdasdfsaf

guest5572
  1. Ship It!
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
    1. sdfsd

guest5572
  1. gjgfjfgj

    1. hell

guest1394
  1. what a crazy thing

guest1394
  1. Ship It!
guest1841
  1. Ship It!
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
    1. fixed.

  3. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    Where the hell is the else branch??? Come imedeatly to my office

  4. Somebody cannot write

guest7613
guest3509
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    not sure if this is a good idea. :)

guest3940
  1. 
      
guest3940
  1. Ship It!
guest5574
  1. Ship It!
guest5574
  1. Ship It!
guest2078
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     

    just for test

guest5603
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
guest459
  1. Ship It!
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
  3. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     
     
     
     
     
     
     
     

    ooooooooooooh

guest5109
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    this is a bug plese fix it

guest2269
  1. Ship It!
guest2269
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revisions 1 - 2)
     
     

    This is my comment

guest2269
  1. Ship It!
guest6931
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    Test

  3. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     

    Why did u delete these?

guest172
guest172
  1. 
      
  2. What this means?

guest172
  1. Reveiw 1

guest172
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    Why do you move this

  3. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     

    This looks great

guest1022
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    This is a bug!

guest9373
  1. j

guest9373
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    wait, what?

guest9373
  1. Ship It!
guest3004
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     
     
     
     
     
     
     
    Is this method really still needed?
guest4495
  1. Ship It!
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
guest4495
  1. Ship It!
guest3377
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     
     
     
     
     

    This is weird. check again

guest3965
  1. Ship It!
guest2759
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    Test

guest2759
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    Test123

guest2023
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    Hey, I like this!

guest9613
  1. Ship It!
guest5643
  1. 
      
    1. you wrote nothing

guest7208
  1. test

guest617
  1. ok

guest1181
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
guest1181
  1. Cool

  2. Cooltoo

guest5572
  1. 
      
    1. jk

  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     
     
     

    Just Wrong!

guest5572
  1. Ship It!
guest2267
  1. test

guest956
  1. Interesting...

guest956
  1. Ship It!
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
    This shouldn't be here.
  3. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    jhgkjhgk

guest3273
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    This is test!!

guest3273
  1. aaaaaa

guest1805
  1. Ship It!
guest1805
  1. Ship It!
guest9445
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     
     
     
     
     
     

    ;ll;l;l

guest5087
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     
  3. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     
     
     
     
     
     
     
     
     
     
     

    Test multi-line comment!

guest6108
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     
     
     
guest5352
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    why change new_value to 'old' in info:?

guest8223
  1. Ship It!
guest7568
  1. added a comment

  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     
     
     
     
     
     
guest1903
  1. test for review

guest1903
  1. 
      
  2. This is a bug(test)

guest1903
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    fatal bug(markdown)

    1. fixed

guest1903
  1. Ship It!
guest8979
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     
     
     

    Surely this shouldn't be here

    This text has a link to wikipedia

  3. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     
     
     

    What's wrong with this though?

    1. HEYYYYY Here's some C++:

      uint32_t someNum = 0;
      if (someNum == 0) {
        printf("What the\n");
      }
      
guest506
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     

    asdfasdfasdfasdf

guest9302
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    Test code in lists:

    • List item
    • Another list item

      Code in list
      
    • More list items

guest1094
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     
     
     
     
     
     
     
     

    Can selected rows.Great~

guest2283
  1. Ship It!
guest2283
  1. Ship It!
guest8106
  1. Test!

guest3566
  1. Ship It!
guest3566
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
     
     
     
     
     
     
     
     
     

    this is test comment

guest3566
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
guest3602
  1. Ship It!
  2. testing fix it then ship it

    1. you write the review/comments but don't publish. Click Ship It to publish

guest2922
  1. dupa

guest8285
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     

    Test issue

guest5801
  1. 
      
  2. reviewboard/reviews/fields.py (Diff revision 2)
     
     
guest1771
  1. Ship It!
guest1771
  1. 
      
  2. this is my comment

guest2127
  1. 
      
guest2127
  1. 
      
guest2127
  1. Ship It!
Loading...