More beautiful HTML reports for llvm-cov
(cargo-llvm-cov specifically).
- Dark theme support (switches automatically based on your browser setting).
- Syntax highlighting.
- Reduced clutter from instantiation annotations.\
- More colors, because why not.
- Progress bars (like in grcov).
To build the project from source, you need a recent installation of Rust. The recommended installation method is through rustup. Then open up a terminal and install the project as follows:
cargo install llvm-cov-pretty
The binary will be installed into your $HOME/.cargo/bin
folder by default. Please make sure it is available from your $PATH
.
Arch linux users can use an AUR helper to install the project from the AUR. For example, using paru
:
paru -S llvm-cov-pretty
If you don't want to build the project yourself, you can download pre-build binaries instead. Have a look at the release page and find the appropriate file for your platform.
The tool operates on the JSON outpu from llvm-cov. As cargo-llvm-cov directly prints those to the standard output, you can pipe the programs together like so:
cargo llvm-cov --json | llvm-cov-pretty
Of course you can do this in two steps as well:
cargo llvm-cov --json > coverage.json
llvm-cov-pretty coverage.json
There are a few extra commands (like generating shell completions) and options (like disabling instantiation annotations) as well. Have a look at the output of llvm-cov-pretty --help
.
To start developing on the project, you'll need a few extra step in addition to the ones described in the From source section.
- Install a recent version of Node.js and Yarn (usually comes bundled with Node.js).
- Ensure all submodules are initialized with
git submodule update --init
.
Then open up a new terminal and execute yarn run watch
. It will watch the project files and rebuild the stylesheet at assets/style.css
when needed. With that you're ready to hack along.
Before you create a custom build, it's recommended to stop the watch job again and run yarn run build
once, which will create a minified and optimized version of the stylesheet. It is compiled into the binary during builds.
This project is licensed under the AGPL-3.0 License (or https://www.gnu.org/licenses/agpl-3.0.html).