-
Notifications
You must be signed in to change notification settings - Fork 0
CI and Code Scanning
let diagnostic = reporter
.error("Cannot combine incompatible values")
.code("E-TYPE")
.label("src/main.rs", 12, Some(9), Some(5), Some("numeric value"))
.secondary_label("src/lib.rs", 4, Some(5), Some(8), Some("string declaration"));
reporter.emit_github_actions(&diagnostic)?;| diagprint | GitHub Actions |
|---|---|
| Trace · Debug · Info | notice |
| Warning | warning |
| Error · Fatal | error |
Primary labels keep the diagnostic's severity; secondary labels are emitted as notices so related locations stay visible without looking like extra failures. Workflow-command data and properties are escaped.
SarifRenderer produces SARIF for GitHub Code Scanning and any SARIF 2.1.0 consumer:
use diagprint::render::SarifRenderer;
SarifRenderer.write_many("target/diagprint.sarif", [&first, &second])?;write_many() writes one complete document (not appended JSON fragments) with:
- SARIF 2.1.0 metadata, deterministic rule IDs and indices, severity mapping;
- primary and related locations with exclusive end-column ranges;
- notes, help, causes, and diagprint source-revision metadata.
No synthetic fingerprints are invented.
Canonical fingerprints and report digests make runs comparable: semantic report deltas and baseline-aware CI evaluation flag what's new rather than everything, and delta annotations are available for GitHub Actions. The delta format is specified in docs/delta-v1.md.
Exact-byte artifact receipts and transactional artifact persistence (artifact-store feature) keep CI outputs verifiable; capsules bundle a scan for later verification:
diagprint scan . --static --history .diagprint/history --capsule reports/project.diagpack
diagprint capsule verify reports/project.diagpack
🩺 diagprint · a Cybercore Tech project · MIT OR Apache-2.0
🏠 cybercoretech.net ·
✉️ dev@cybercoretech.net ·
🔒 security@ ·
💬 Discord ·
🐛 Issues ·
☕ Buy Me a Coffee
⚡ Start
- 📥 Installation
- 🚀 Quick Start
- 🧪 Examples
🧱 Build
📤 Ship
🔧 Fix
- 🔧 Remediation
- 🛡️ Safety Model
🔬 Investigate
🛠️ Project
- 🛠️ Contributing
- 🗺️ Roadmap