Important Security Notice – Vulnerability allowing permission escalation

Please note that if you a commercial customer of Upsource, you should have already received an email from us in the middle of December. No further action is required if have already seen this email.

Continue reading

Posted in Uncategorized | Tagged | Leave a comment

Upsource 2018.2.1154 is available

Upsource 2018.2.1154 is out!

We have fixed some regressions introduced in 2018.2. The bundled Hub was updated to version 2018.4.11067.

Please note that this update is recommended for all users. Check out the release notes and download the new build.

Posted in Release | Leave a comment

Upsource 2018.2.1141 is available

Upsource 2018.2.1141 is out!

We have fixed some regressions introduced in 2018.2. The bundled Hub was updated to version 2018.4.11052.

If you’ve already upgraded to 2018.2 from an earlier version, please do the following after installing this update:

  1. Run lib/upsource-console.sh from the Upsource home directory (or lib\upsource-console.bat if you’re running Windows).
  2. Run fix-deleted-reviews from the console.

Please note that this update is recommended for all users. Check out the release notes and download the new build.

Posted in Newsletter, Release | Tagged | Leave a comment

What’s New in Upsource 2018.2

Please welcome Upsource 2018.2!

800x500_blogUP_2018_2_

The latest version of Upsource brings you a number of nice improvements to simplify the process of creating and updating reviews. There’s more automation and a lot of it is enhanced, so you can focus on coding and reviewing code instead of performing admin tasks. There’s also extra support for Java 9, and, of course the usual updates to the IntelliJ IDEA engine that manages the code warnings and suggestions.

Continue reading

Posted in Announcements, Newsletter, Release | Tagged , , | 2 Comments

Webinar recording: “Code Review Best Practices”

The recording of our webinar “Code Review Best Practices” is now available on JetBrains YouTube channel.

In the past we’ve looked at the specifics of what to look for in code review and code review best practices in Upsource, in this webinar recording we take a step back to look at what we’re trying to achieve with our code reviews, so we can maximize the value of the code review and minimize the pain.

About presenter:

Trisha_Gee
Trisha has developed Java applications for a range of industries, including finance, manufacturing, software and non-profit, for companies of all sizes. She has expertise in Java high performance systems, is passionate about enabling developer productivity, and dabbles with Open Source development. Trisha is a Java Champion and is a Developer Advocate for Upsource and IntelliJ IDEA.

Q&A

As promised, here are Trisha’s responses to questions that have been left unanswered during the webinar.
Continue reading

Posted in Webinars | Leave a comment

Live webinar: Code Review Best Practices

We’ve recently published a screencast highlighting some of the best practices teams may want to keep in mind when approaching code reviews. We’ve also shown how Upsource can help you follow these practices. Given how broad this topic is, we feel it deserves more attention. This is why we’ve decided to host a live webinar in which we’ll dive deeper into code review best practices with Trisha Gee.

Join us Wednesday, October 10th, 16:00 – 17:00 CEST (14:00 – 15:00 GMT / 10:00 AM – 11:00 AM EDT) to learn how your team can make code review process more efficient.

Upsource webinar: Code Review Best Practices

Space is limited, please register now.

About presenter:

Trisha_Gee
Trisha has developed Java applications for a range of industries, including finance, manufacturing, software and non-profit, for companies of all sizes. She has expertise in Java high performance systems, is passionate about enabling developer productivity, and dabbles with Open Source development. Trisha is a Java Champion and is a Developer Advocate for Upsource and IntelliJ IDEA.

Posted in Webinars | Leave a comment

Code Review Best Practices

We’ve created a new screencast outlining some of the best practices that apply to performing code reviews, and how Upsource can help apply those best practices. In this blog post we’ve also transcribed the content, and have provided links to further information.

Continue reading

Posted in Code review practices | Leave a comment

What to Look for in Java 9 Code

We’ve previously covered at What to Look for in Java 8 Code, now Java is moving faster than ever it’s time to do an update and cover what to look for in Java 9 code. While Java 9 has even now been replaced with Java 10, and Java 11 in coming in September, these Java 9 features are, of course, available in Java 10 and 11. If your application is using any version later than Java 8 you may benefit from these tips.

Continue reading

Posted in Code review practices | Tagged , , | Leave a comment

Upsource 2018.1.584 is available

The new update comes with a number of bug fixes including a fix to a regression in JIRA integration where it was not possible to enable it for newly created projects (UP-9992).

For those of you using the Upsource Integration IDE plugin, this update brings a small new feature. You can now share the Server URL setting you’ve set in your plugin with the rest of the team (UP-9637).

Check out the complete release notes and download the new build.

Posted in Update | Leave a comment

Orderly code reviews in Upsource

Code review like no other development practice relies on humans being efficient. And for most of us to achieve that, it’s important to have our tasks well organized and our time well planned.

Upsource takes care of a lot of things for you without any need to configure anything. For example, if you have a branch review, it’ll automatically add new revisions to it. It’ll promptly notify you about things that require your attention. It keeps track of which changes you have seen, and which you haven’t so that you only need to review those you haven’t seen.

With some configuration required you can automate away a lot more. You can set up a custom workflow that can create reviews, assign reviewers from a certain pool of users, close reviews and/or resolve discussions upon everyone accepting the changes.

If that’s not enough, Upsource gives you some tools to add that extra orderliness. Let’s look at some of them.

By and large, it is preferable for reviewers to do their part as soon as possible so that code reviews do not pile up, block the process, become less relevant, and harder to merge. However, it may happen that a certain reviewer or a group of reviewers accumulates a number of code reviews to go through. In such scenario, it would be helpful to them to be aware of the priorities of those code reviews. One way to go about it would be to have a habit of manually setting a Due Date for code reviews when you know it.

Code Review Due Date

Alternatively, as a team, you can have code review-level labels to signify priorities. You can have a single label to mark certain code reviews as “urgent” or create a more granular system of priority labels.

Code Review Priority Labels

Labels, of course, can be used for other things too. For example, if you create a code review for a branch or a pull request, and want to consult with your colleagues on some design decisions early on, when it’s not too late to discuss these things, you can label that review as “help wanted”. If, on the other hand, you’re not ready to show your changes to reviewers, you can put “work in progress” there and switch to “ready for review” when needed.

You can, if you want to, use code review labels to identify the type of a change in a code review (bug, feature, etc.), although, one can argue that it’s more appropriate to have this information in either commit message or linked through an issue tracker ticket. On the contrary, labeling discussions within a code review can be helpful. Upsource has pre-defined discussion labels like “bug”, “enhancement”, etc., but you can, of course, add more. For instance, “technical debt”.

Discussion Labels

When starting a discussion in a code review, you can also structure your own feedback in an actionable manner. If you have a number of suggestions on how to improve the code you are reviewing, use markdown to generate a checklist in your comment. Indicate incomplete items with - [ ], and completed ones with - [x]. This will render a list of checkboxes in the comment. As you or the code author go through the checklist, you can simply check or clear boxes to automatically update your checklist.

Checklist in a comment

Last but not least, check your notification settings – click on your profile picture at the top right corner, and go to “Notifications”. While the most important notifications are turned on by default, there are some that are considered optional but you may find useful. Like, a reminder that you have forgotten to complete a review, or notification about activities sync with GitHub.
You can also customize your notifications to receive updates on very specific things like certain files being changed.

Custom Notifications

While there’s no “one suits all” guide on how to better organize your code reviews, I hope you’ve found some ideas in this post that’ll work for your team.

Happy code reviews!

Posted in Code review practices, Feature | 2 Comments