Files
rustfmt/README.md
2023-10-03 18:55:45 +02:00

48 lines
1.6 KiB
Markdown

# Run `rustfmt`
Run `cargo fmt --all` and report all formatting differences in a nice overview.
It works best in combination with [`actions-rust-lang/setup-rust-toolchain`] for [problem matcher] highlighting.
Execution Summary:
![The action reports any formatting issues found by rustfmt.](./imgs/rustfmt-results.png)
Problem Matcher:
![Annotation highlighting formatting differences.](./imgs/rustfmt-problem-matcher.png)
## Example workflow
```yaml
name: "Test Suite"
on:
push:
pull_request:
jobs:
formatting:
name: cargo fmt
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# Ensure rustfmt is installed and setup problem matcher
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
components: rustfmt
- name: Rustfmt Check
uses: actions-rust-lang/rustfmt@v1
```
## Inputs
All inputs are optional.
If a [toolchain file](https://rust-lang.github.io/rustup/overrides.html#the-toolchain-file) (i.e., `rust-toolchain` or `rust-toolchain.toml`) is found in the root of the repository, it takes precedence.
All input values are ignored if a toolchain file exists.
| Name | Description | Default |
| --------------- | ------------------------------------------------------------------------ | ------------ |
| `manifest-path` | Path to the `Cargo.toml` file, by default in the root of the repository. | ./Cargo.toml |
[`actions-rust-lang/setup-rust-toolchain`]: https://github.com/actions-rust-lang/setup-rust-toolchain
[problem matcher]: https://github.com/actions/toolkit/blob/main/docs/problem-matchers.md