CheckOps
cargo-tarpaulin
cargo-tarpaulin is an Apache-2.0 code coverage tool for Rust projects, with ptrace and LLVM engines and HTML, LCOV, Cobertura XML and JSON reports plus Coveralls and Codecov support.
Latest public signals
Not refreshed yet. Refresh reads the public site and, when the entry has a GitHub repository, the latest release.
Introduction
Tarpaulin is a code coverage reporting tool for the Cargo build system. It runs your tests and records which lines executed, then produces reports for humans and CI services. It has long been a popular choice in Rust CI pipelines because it is installed as a single cargo subcommand.
Its README explains that on Linux the default tracing backend is still ptrace, which only works on x86_64, and that you can switch to LLVM coverage instrumentation with --engine llvm; on macOS and Windows, LLVM is the default. Tarpaulin can also run in Docker for developers not on Linux. Output formats include HTML, LCOV, Cobertura XML and JSON, and it can upload directly to Coveralls, with LCOV or XML reports used for Codecov. Options cover workspaces, features, ignoring tests or panics, excluding files and failing under a coverage threshold (--fail-under). Version 0.37.6 was released on 5 November 2026.
The source code is at xd009642/tarpaulin on GitHub under the Apache-2.0 licence, with about 3,000 stars; the most recent commit was on 10 November 2026.
Features
- Single subcommand:
cargo tarpaulinin any project. - Two engines: ptrace on Linux x86_64 or LLVM instrumentation.
- Many formats: HTML, LCOV, Cobertura XML and JSON.
- Thresholds:
--fail-underfor CI gates.
Pros
- Free to use: Open source under the Apache-2.0 licence, so the core tool costs nothing to use.
- Actively maintained: The repository had commits as recent as 10 November 2026.
- Community: About 3,000 GitHub stars.
Cons
- Platform caveats: The ptrace engine is Linux x86_64 only.
- Accuracy differences: Line coverage can differ from LLVM region coverage tools.
Usage and Links (Example)
cargo install cargo-tarpaulin
cargo tarpaulin --out Html --out Lcov
cargo tarpaulin --engine llvm --fail-under 80
Resources:
Pricing
cargo-tarpaulin is free and open source under the Apache-2.0 licence.
Recommended for?
- Rust teams wanting simple coverage in CI.
- Projects reporting to Coveralls or Codecov.
Conclusion
cargo-tarpaulin is a long-standing, easy coverage tool for Rust; cargo-llvm-cov is an alternative when precise LLVM region coverage matters.
Alternatives
Other tools on CheckOps that cover similar ground. Open a page, or compare one with cargo-tarpaulin side by side.
Ccargo-llvm-covcargo-llvm-cov is a cargo subcommand (Apache-2.0 or MIT) for LLVM source-based code coverage in Rust, supporting cargo test, cargo run and cargo nextest with precise line and region coverage.Compare with cargo-tarpaulin
CCoverallsCoveralls is a hosted code coverage history and statistics service that integrates with your CI to report repository, file and line-by-line coverage with pull request notices; free for open source with paid plans for private repos.Compare with cargo-tarpaulin
CCodecovCodecov by Sentry is a code coverage reporting service that shows coverage for any language, CI and code host in pull request comments and dashboards, with flags, carryforward, test analytics for flaky tests and AI test generation.Compare with cargo-tarpaulin
Ccargo-nextestcargo-nextest is an Apache-2.0 next-generation test runner for Rust, up to 3x faster than cargo test per its site, with per-test process isolation, retries, partitioning, JUnit output and a filterset DSL.Compare with cargo-tarpaulin
Ccargo-mutantscargo-mutants is an MIT-licensed mutation testing tool for Rust that injects bugs into your code and reports which ones your tests miss, with nextest support, sharding and diff-based runs.Compare with cargo-tarpaulin
Rrstestrstest is an Apache-2.0 fixture-based and parameterised testing framework for Rust, offering pytest-style fixtures, #[case] tables, value matrices and async support on top of cargo test.Compare with cargo-tarpaulin