Who we are

We are the developers of Plastic SCM, a full version control stack (not a Git variant). We work on the strongest branching and merging you can find, and a core that doesn't cringe with huge binaries and repos. We also develop the GUIs, mergetools and everything needed to give you the full version control stack.

If you want to give it a try, download it from here.

We also code SemanticMerge, and the gmaster Git client.

Improving the new Plastic Code Review system: Part II

Monday, October 07, 2019 María Barrios Carrasco 0 Comments

In this blogpost, we are going to show you more about what is new in the Code Review system and how you can take advantage of it.

We first shared with you an overview of the upcoming new Code Review system.

And then, we showed you the first improvements in the Code Review.

Let's see the latest in the Code Review.

Remember that you can give Code Review a try if you start your Plastic this way:

plastic --codereview

Outline support

(Release 8.0.16.3476)

When a comment was placed in a line that was collapsed due to outlining, it was rendered in a wrong line. Now the comment is hidden when the line is collapsed and visible when the line is not collapsed.


We also improved the comments navigation. When navigating to a comment, we always ensure that the line that contains the comment is always expanded. Otherwise, in some scenarios a comment could be not visible.

In the following example, you can see how the code are collapsed. And when you double-click the comment, the code expands to show you the line that contains this comment:

Display questions

(Release 8.0.16.3476)

The new Code Review system now displays questions in the comments list. The reviewer asks a question when they need an answer, but no change is required initially:

Review branches changeset by changeset

(Release 8.0.16.3533)

The new Code Review system now allows you to review a branch, changeset by changeset. Just go to the Branch Explorer, right-click a branch and select New code review for this branch:

When the developers checkin often, keeping reviewers in mind, it's helpful to review the branch walking through each changeset.

So, we added a new tab that allows you to review a branch, stepping through changeset by changeset:

While reviewing a branch, you can switch between the modes Review changeset by changeset and Review entire branch at any time, adding comments in either of them. Each comment will be displayed in the mode it was added.

Why is so important reviewing changeset by changeset? When a developer follows the rule of running checkins with the reviewer in mind, then every single checkin helps the reviewer following the developer's thoughts and steps to really understand what happened.

Now, the reviewer can review the branch by diffing changeset by changeset. This way, the reviewer will follow the pre-recorded explanation the author made to clarify each step of the task.

How to apply the requested changes

(Release 8.0.16.3542)

The new Code Review system allows you to request "changes".

It is just a special comment used to request the author to make a change. And this comment is identified with a GUID. This change request can be tracked to know if it was applied.

How this tracking works? Let's see it with an example:

  • The reviewer requested the author a change:
  • Then, the author applies the requested change. To mark the change as "Done", the author only has to add a special comment to the checkin comment by entering [apply-change:change GUID]:
  • The reviewer now can track if the author applied the change or not by taking a look to the change request status in the 'Changes' list:
Notes:
  • If you specify a change request comment that doesn't exist, the checkin will fail.
  • If you delete a changeset referenced by a change request through this method, the changeset id related to that change request will be reset and the change request will be marked as "Pending" again.

Navigate to the applied change

(Release 8.0.16.3542)

The new Code Review system now allows you to navigate to the applied change when you double-click the change in the list:

Changes the code review status with pending comments

(Release 8.0.16.3568)

The new Code Review system warns you when you try to change the status to 'reviewed' but there are pending comments to solve, for example, required changes to apply or questions to answer:

Use the new "Changes and Questions" system

(Release 8.0.16.3568)

To encourage you to use the new 'Changes and Questions' system instead of the old regular review comments, we applied the following improvements:

  • The Request a change is the default option when adding a new comment:
  • You can choose the comment type in the replies too:
  • The review comment summary at the bottom of the window shows only first level regular comments, not the replies. Except for 'Changes and Questions' that will continue appearing on their changes and questions lists even if they are replies. For example, if the user replies to a question with another question, then this reply will appear in the 'Questions' list:
  • The comment navigation now marks as selected the comment and scrolls to it in the comment panel in order to make it more visible:

Display a visual guide when creating a new comment

(Release 8.0.16.3576)

Now, when you're creating a new comment, we highlight the line under the mouse when you're moving it. This guide helps to figure out the line number you're adding the new comment:

Some help about how to start

(Release 8.0.16.3576)

To help users discovering how the new Code Review system works, we added some help to the review comments panel that explains what happens and how to proceed:

  • If the code review is empty, a picture shows you how to create a new comment:
  • If the code review has comments but the selected file doesn't have comments, a picture tells you about it:
  • If the selected file has comments but no comment is selected, it will indicate how to view those comments:
  • If the selected file doesn't support review comments yet, an image for example, a graphic message warns you about it:

The Code Review system in macOS... coming soon!

We are working on implementing the Code Review system for our macOS users. So, we hope you can take advantage soon of the above described features in your macOS system.

María Barrios Carrasco
I'm in charge of the documentation area and the one to let you know the news about our products: Plastic SCM, SemanticMerge and gmaster.
I started my degree in Computer Engineering at the University of Burgos and finished my studies at the University of Valladolid.
I love doing handmade crafts, going for a walk and for tapas 😋.
You can reach me at @maria13mbc.

0 comentarios: