Log in
product

XCBeautify: Supporting GitHub Actions Annotations

Learn about the latest xcbeautify renderer.

Overview

XCBeautify now features an output format option for GitHub Actions.

Getting Started

To utilize this function, simply run xcbeautify and add the --renderer github-actions flag during execution.

xcodebuild [flags] | xcbeautify --renderer github-actions

How It Works

When you use the GitHub Actions renderer, xcbeautify formats output that harnesses workflow commands to highlight warnings, errors, and other results directly within the GitHub user interface.

When you run a pull request check with the GitHub Actions renderer, you'll find all xcodebuild results and feedback in the Annotations section of the run summary.

An image that shows a GitHub Actions run summary with xcbeautify comments.

Furthermore, you'll find native inline feedback on PRs. This includes compiler warnings, compiler errors, and test failures.

An image that shows a GitHub Actions run with an inline xcbeautify comment.

By using this feature, you may avoid the need for additional third-party tools, such as Danger and related dependencies, to report a summary of xcodebuild output.

Introducing Renderers

As of 0.21.0, xcbeautify adds the Renderer concept. Renderer specifies the way you want xcbeautify to format its output.

Historically, xcbeautify has only supported one command line output format. This is now the format provided by the TerminalRenderer, and it's the default option.

Renderer provides the groundwork to add other output formats, such as for other CI/CD providers.

Final Thoughts

If you'd like to learn more about this change, you can find the introductory pull request here.

Thank you to Eli Perkins for providing support and direction on this change and supporting GitHub Actions annotations.

Feedback

If you'd like to provide feedback or a contribution, please consider opening an issue or pull request.

Supercharge your Swift app development

Get started

You might also like

Etsy's Journey with Tuist: A Deep Dive into Modularity and Rapid Iteration
Etsy evolves its decade-long monolithic iOS app with Tuist, paving the way for modular development. With nearly 50 iOS engineers, they leverage Tuist for streamlined module creation and emphasize a unified approach to architecture. Transitioning to SwiftUI and adopting Preview Driven Development, Etsy champions rapid iteration, testability, and consistent quality. Their tech journey reflects innovation at its best.
We are deprecating tuistenv in favor of Mise
In this blog post, we share why we are deprecating tuistenv in favor of mise, a runtime executor that allows you to manage multiple versions of a tool and activate the right one when you choose a directory in your terminal.
Swift Macros at scale
Swift Macros, while powerful, can hinder build times. This blog post explains why and what we can do to mitigate the issue.