tangle


git clone https://radroots.dev/git/tangle.git
Log | Files | Refs | README | LICENSE

commit 416bfa63ac27d3b538bcb5daf21f30bee2bc996a
parent a502db721f7e87e6ca7ce5fa15b4345e1015cd10
Author: triesap <tyson@radroots.org>
Date:   Sat,  6 Jun 2026 14:52:30 -0700

release: wire coverage tool paths

- export llvm-cov and llvm-profdata paths when coverage tools are on PATH
- let Nix development shells run the coverage script directly
- extend the coverage gate test for the tool path exports
- confirm coverage now reaches the real line-coverage threshold

Diffstat:
Mcrates/tangle/tests/coverage_gate.rs | 2++
Mscripts/coverage.sh | 7+++++++
2 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/crates/tangle/tests/coverage_gate.rs b/crates/tangle/tests/coverage_gate.rs @@ -8,6 +8,8 @@ fn coverage_script_requires_workspace_full_line_coverage() { let script = read("scripts/coverage.sh"); assert!(script.contains("cargo llvm-cov --version")); + assert!(script.contains("LLVM_COV=\"$(command -v llvm-cov)\"")); + assert!(script.contains("LLVM_PROFDATA=\"$(command -v llvm-profdata)\"")); assert!(script.contains("cargo llvm-cov clean --workspace")); assert!(script.contains("cargo llvm-cov --workspace --all-targets")); assert!(script.contains("--show-missing-lines")); diff --git a/scripts/coverage.sh b/scripts/coverage.sh @@ -6,5 +6,12 @@ if ! cargo llvm-cov --version >/dev/null 2>&1; then exit 1 fi +if command -v llvm-cov >/dev/null 2>&1 && command -v llvm-profdata >/dev/null 2>&1; then + LLVM_COV="$(command -v llvm-cov)" + LLVM_PROFDATA="$(command -v llvm-profdata)" + export LLVM_COV + export LLVM_PROFDATA +fi + cargo llvm-cov clean --workspace cargo llvm-cov --workspace --all-targets --show-missing-lines --fail-under-lines 100 --fail-uncovered-lines 0