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.

Join us at GitHub Universe

Our largest product and community conference is returning to the Palace of Fine Arts in San Francisco, November 13-14. Hear what's next for the GitHub platform, find inspiration for your next project, and connect with developers who are changing the world.

Get tickets

GitHub Actions now supports CI/CD

GitHub Actions makes it easier to automate how you build, test, and deploy your projects on any platform, including Linux, macOS, and Windows. Try out the beta before GitHub Actions is generally available on November 13.

Sign up for the beta