xd009642/tarpaulin

A code coverage tool for Rust projects

View on GitHub ↗Jump to charts ↓

Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 7 minutes ago
Added to GitGenius on September 22nd, 2026
Created on April 7th, 2017
Open Issues & Pull Requests: 33 (+0)
GitHub issues: Enabled
Number of forks: 197
Total Stargazers: 3,021 (+0)
Total Subscribers: 13 (+0)

Repository Insights (GitGenius)

Median issue/PR response: N/A
Mean response time: 40.9 days
90th percentile: 16.0 hours
Tracked items: 99

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 9
New in 7 days: 2
Closed in 7 days: 2
Avg open age: 640 days
Stale 30+ days: 8
Stale 90+ days: 7

Recent activity

Opened in 7 days: 2
Closed in 7 days: 2
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • enhancement (26)
  • accuracy (9)
  • bug (7)
  • Instrumentation (2)
  • Source-analysis (2)
  • compiler or linker bug (1)
  • help wanted (1)
  • question (1)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Tarpaulin is a code coverage reporting tool for Rust projects that integrates with the Cargo build system.

The tool measures line coverage by loading compiled binaries into memory and parsing debugging information to identify which lines were executed during test runs. It supports multiple instrumentation backends: on Linux it defaults to Ptrace tracing on x86_64 processors, while macOS and Windows use LLVM coverage instrumentation by default. The Ptrace backend can be switched to LLVM coverage with a command-line flag. Tarpaulin can also run in Docker, making it accessible to developers not using Linux locally.

Developers should choose Tarpaulin if they need line coverage reporting for Rust projects and can work within its constraints. It works with the full Cargo test CLI, supports coverage of tests, doctests, benchmarks, and examples, and can upload results to Coveralls or Codecov. The tool generates HTML reports and other coverage formats, and allows excluding files from coverage calculations through configuration files. The README notes that doc tests with the should_panic attribute will not report coverage when using LLVM instrumentation.

The project maintains active engagement with reported issues and welcomes contributions. Development is responsive to edge cases, with the maintainers explicitly requesting detailed bug reports including setup information and example projects to fix coverage failures caused by unique package and build feature combinations. The tool acknowledges known compiler regressions that affect accuracy and provides troubleshooting documentation alongside contribution guidelines.