Code review is a social, emotional, and logistical process. Receiving a pull request review is a particularly vulnerable moment. What do my peers think of my work? What do I need to improve based on this feedback? How can I make sure I’ve addressed all concerns?
To improve the pull request review experience—and make taking them back to your text editor as easy as possible—we’re excited to share review comments in Atom. Starting with Atom 1.37 beta, you can view comments from reviews in a dock next to the editor. This dock provides seamless navigation between comments and code or text, so you can easily make changes in response to feedback. To ease anxiety about whether or not you’ve addressed all comments, check the progress bar to see how many unresolved comments remain.
We’ve also added a few more features to help you through your reviews:
- Resolve comments: Mark comment threads as resolved from the review comments dock. Resolving a comment thread advances the progress bar, providing a visual indication and a well-deserved sense of satisfaction for moving closer to your goal.
- Show diff formatting: The dock shows you the lines of the diff immediately surrounding the comment. Need more context? Click the Open Diff button to see the diff for the entire pull request.
- Expand and collapse comments: Since comment threads can get lengthy, we wanted to give you the ability to focus on just the information that’s most useful to you. To reduce visual clutter, you can collapse and expand review summary comments and comment threads.
- Navigate changes with line highlighting and gutter icons: See which line of code or text a comment belongs to with line highlighting and gutter icons. Clicking a gutter icon also opens the reviews dock and scrolls to that comment. Note that in order to see any highlighting and icons, you must be signed in to GitHub for Atom, and on a branch that’s checked out and corresponds to a pull request.
- Checkout and refresh: If reviews are on a different branch than the one you’ve checked out, you can still see comments but can’t jump to the file or mark comments as resolved. To checkout a pull request branch, use the handy “Checkout” button at the top of the reviews dock. While you’re up there, you can click the refresh icon to fetch new comments and reviews.
Our early designs for code review in Atom felt like re-creating GitHub.com in an editor.
You have a different mental context when you’re in a browser than when you’re in an editor. Fundamentally, you use an editor to edit code or text. We decided to approach pull request review differently and prioritize an editing-centric experience. Editing code around a long comment or thread can be disruptive, so instead of inline comments we decided to build a dock alongside the code or text for you to show (or hide) as you need it.
The next step was user research to validate our dock designs. We tested our assumptions to verify that the new designs were comprehensible and useful. Research participants were excited to have a method to address review comments without switching between GitHub.com and their editor.
Participants expressed that reacting to comments with emojis was an important way to let reviewers know that feedback was received. Emoji reactions also served as a way to say thank you or great job. Emojis can also add subtext, express tone, and help people communicate more empathetically.
Additionally, the flow for responding to comments was more important than we realized. As code authors, our users wanted the ability to ask if they addressed a reviewer’s concern, rather than make assumptions. It makes sense—pull request reviews are a two-way conversation. We incorporated this valuable feedback and added replying to comments and emoji reactions to our minimum viable ship.
Sadly, any feature with a social component has the potential for abuse. For your safety, the comments dock hides the text of comments that GitHub users have reported as abusive or spammy. To decrease the likelihood of misuse, we also asked for a feature review from our friendly Community and Safety Team prior to launch.
To get early access to review comments in Atom, download Atom 1.37 Beta. If you have feedback or want to receive news about what’s next, check out the Atom repository. Thanks for reading, and happy editing (and reviewing!).