pronto-rustcov
⚡ A Pronto runner that highlights uncovered Rust lines in GitHub pull requests using LCOV reports from cargo llvm-cov
.
🔧 Installation
Add to your Gemfile
in the :development
group:
gem 'pronto-rustcov', group: :development
Then install:
bundle install
Alternatively, install the gem globally:
gem install pronto-rustcov
🚀 Usage
Make sure you’ve generated an LCOV file using cargo llvm-cov
:
cargo install cargo-llvm-cov cargo llvm-cov clean cargo llvm-cov --no-report cargo llvm-cov report --lcov > target/lcov.info
Github Actions Example
name: Tests permissions: contents: read pull-requests: write checks: write statuses: write on: pull_request: branches: - main jobs: tests: runs-on: ubuntu-latest steps: - name: Rust Toolchain Setup uses: actions-rust-lang/setup-rust-toolchain@v1 with: components: llvm-tools-preview - uses: ruby/setup-ruby@v1 with: ruby-version: '3.3' bundler-cache: true - name: Install rustup component uses: taiki-e/install-action@cargo-llvm-cov - name: Run Tests run: | cargo llvm-cov clean cargo llvm-cov --no-report --workspace --no-cfg-coverage --remap-path-prefix cargo llvm-cov report --html cargo llvm-cov report --lcov > target/lcov.info - name: Run Pronto env: PRONTO_PULL_REQUEST_ID: ${{ github.event.pull_request.number }} PRONTO_GITHUB_ACCESS_TOKEN: "${{ github.token }}" PRONTO_RUSTCOV_FILES_LIMIT: 3 PRONTO_RUSTCOV_MESSAGES_PER_FILE_LIMIT: 3 PRONTO_RUSTCOV_LCOV_PATH: target/lcov.info run: | gem install pronto pronto-rustcov pronto run -f github_status github_pr -c origin/${{ github.base_ref }}
📝 License
MIT