2 Punkte von sinav 21 일 전 | Noch keine Kommentare. | Auf WhatsApp teilen

Die Zeit für cargo build in Rust-Projekten wird mit jedem PR schleichend länger, und ich habe das gebaut, weil es mühsam war nachzuverfolgen, welcher PR die Ursache ist.
cargo-chronoscope ist eine CLI, die den JSON-Event-Stream von cargo (--message-format=json-render-diagnostics) verarbeitet, alle Builds in einer lokalen SQLite-DB aufzeichnet und sie auf vier Arten analysiert.

4 Subcommands

  • record — zeichnet einen einzelnen Build unverändert auf
  • watch — ratatui-basiertes TUI-Dashboard während des Builds. Zeigt für jede aktive Kompilierung die elapsed time, die Anomalie-Klassifizierung (langsamer/schneller/normal als üblich) sowie CPU und Speicher in Echtzeit. (Das Demo-GIF befindet sich ganz oben in der README.)
  • ls — Liste der letzten Builds
  • diff <before> <after> — Veränderungen pro Crate zwischen zwei Builds + Vergleich des critical path

Unterschied zu cargo --timings

Das eingebaute cargo --timings zeigt die Timeline eines einzelnen Builds. cargo-chronoscope ist auf Vergleiche zwischen Builds und Regressionserkennung spezialisiert — es verwendet den Durchschnitt ±2σ vergangener Builds als Baseline und klassifiziert den aktuellen Build automatisch.

GitHub-Action-Integration

- uses: ymw0407/cargo-chronoscope@action-v1  

Mit einer einzigen Zeile wird für jeden PR automatisch ein Sticky-Kommentar mit dem Build-Zeit-diff veröffentlicht. Fork-PRs werden ebenfalls unterstützt (workflow_run-Pattern).

Installation

cargo install cargo-chronoscope  

Aktueller Status

Feedback/Issues sind willkommen.

Noch keine Kommentare.

Noch keine Kommentare.