Reviewing becomes even more easier

In the last news we talked about the new "mark as reviewed" feature: in a commit or a pull request, you can mark a file as reviewed, and it will stay this way (a green mark, and collapsed by default) until it changes (obviously it won't change in a commit, only in a pull request).

It is great, and eases the reviewing process in many ways:

  • you can pause a review and come back later, without having to think about what you already saw
  • in a multi-rounds review process, you don't need to check again those files

It's great. But it's now even better!

You can know mark as reviewed not only a whole file, but also "hunks".

Hunks are parts of a diff in a file: if a file is modified in many places, there will be many hunks. It is git that decides how to create the hunks: two changes that are near one to each other will be in the same hunk.

What the point of this?

It's great to mark a whole file as reviewed, but let's imagine: there is many hunks in a file but you have some remarks to do only on one or a few lines. You can now mark as reviewed all the hunks not related to these lines and you will only need to check the non-reviewed on the next round!

And, of course, when all the hunks of a file are marked as reviewed, the file is marked as reviewed too. And, like reviewed files, reviewed hunks are collapsed by default: you'll see only the content of the hunks that still need your attention.

And to ease this process even more, we added three entries in the "hamburger menu" on the right of the search field:

  • show reviewed files: this is a checkbox, checked by default. When unchecked, all files marked as reviewed are totally hidden
  • mark all filtered files as reviewed: when clicked, all the files that are currently visible will be marked as reviewed. If you have for example some .yml files related to test data, or whatever, you can filter them through the search box, then easily mark all of them as reviewed
  • mark all filtered files as reviewed: it's the exact reverse of the previous one. It can be used for example to remove the reviewed mark on all the files in the pull request if you want to review all again.