bacon is a background rust code checker.
It's designed for minimal interaction so that you can just let it run, alongside your editor, and be notified of warnings, errors, or test failures in your Rust code.
The bacon website is a complete guide.
Below is a short overview.
cargo install --locked bacon
bacon
That's how you'll usually launch bacon, because other jobs like test
, clippy
, doc
, your own ones, are just a key away: You'll hit c to see Clippy warnings, t for the tests, d to open the documentation, etc.
bacon --path ../broot
or
bacon ../broot
bacon --job check-all
When there's no ambiguity, you may omit the --job
part:
bacon check-all
bacon clippy
or, if you want it to run against all targets (tests, examples, benches etc):
bacon clippy-all
bacon test
First create a bacon.toml
file by running
bacon --init
This file already contains some standard jobs. Add your own, for example
[jobs.check-win]
command = ["cargo", "check", "--target", "x86_64-pc-windows-gnu", "--color", "always"]
or
[jobs.check-examples]
command = ["cargo", "check", "--examples", "--color", "always"]
watch = ["examples"] # src is implicitly included
Don't forget the --color always
part: bacon uses style information to recognize warnings and errors.
and run
bacon check-win
or
bacon check-examples
The bacon.toml
file may evolve with the features and settings of your project and should be added to source control.
Bacon is licenced under AGPL-3.0. You're free to use it to compile the Rust projects of your choice, even commercial.
The logo is designed by Peter Varo and licensed under a
Creative Commons Attribution-ShareAlike 4.0 International License.