Introducing check runs and annotations

Image of Meaghan Lewis

In the latest release of GitHub for Visual Studio, the Editor Tools team has improved the pull request experience with check runs and annotations. Seeing annotations inline for a check run when reviewing a pull request provides the reviewer with more information in order to perform a more thorough review of their code.

Annotations in pull requests

The GitHub for Visual Studio team worked on a release to provide you with more information when reviewing pull requests. This past August, @stanleygoldman implemented checks and statuses so that pull requests show a status of pending, passing, or failing for each check. Taking it a step further, checks can be configured to run against changed files in a pull request to provide annotations and show details about the code including errors, warnings, and general information.

error annotation blog

How it works

When a check run application is configured for a repository, annotations appear on each pull request if a certain condition is met. Looking at the list of changed files, it’s easy to see which files have annotations. Here’s an example where the indicator is beside the file name (represented by a symbol), and the number of annotations is linked.

warning annotation magnified

When you click on the link, the file opens for you to view more details about the annotations. In the margin of the diff, lines with check run annotations are identified with a different color: red for errors, yellow for warnings, and blue for information.

zoom in on warning warning

When inline comments are on the same line as an annotation, two separate indicators appear: a diamond symbol for the annotations and a circle for comments. When clicking on the marker, both the annotation and comment are displayed.

zoom in on information

Applications of annotations

GitHub applications can be integrated with checks to list annotations about lines of code that have been changed in pull requests. Here are a few awesome GitHub applications that can show annotations through check runs:

  • Build Cross Check creates checks and surfaces warnings, errors, and additional information.

  • Yamburger finds syntax errors in YAML files changed in pull requests.

  • Kubevalidator validates Kubernetes YAML files changed in GitHub Pull requests against a community-maintained set of schemas using kubeval.

  • Prosebot listens for changes to Markdown files and runs various checks against them to provide feedback on English spelling, prose, and inclusive verbiage.

  • Linter-Alex ensures your writing is sensitive and considerate before you merge your pull requests.

You can use existing GitHub applications to provide code annotations, or you can build your own. This option provides the flexibility to choose the exact annotations you want to show in your project.

Try it out

Try the new check run annotations feature, and let us know what you think!

If you’re curious see what else we worked on, check out the latest release notes. As always, you can reach out to us in our repository or on Twitter.

Catch early bird pricing for GitHub Satellite

Sync up with us and leading developers from around the world in Berlin, May 22-23, and get €100 off regular-priced tickets until April 11.

Get tickets

Join us at Maintainerati

Calling all maintainers: Unite at Maintainerati, a one-day unconference to gather, present, and discuss the day after GitHub Satellite.

RSVP