v0.5.0
Pre-release
Pre-release
CPU time profiling, instrument-everything default, panic-safe data capture, and project-local storage.
Added
- CPU time profiling via
--cpu-timeflag (Linux + macOS, 64-bit) - Instrument all functions by default when no
--fn/--file/--modspecified - Project-local run data: output written to
target/piano/runs/instead of global~/.piano/runs/ - Panic-safe data capture: profiling data is collected even when the instrumented program panics
- Hidden-function footer in summary and frames reports
Fixed
- Unparseable source files are skipped with a warning instead of aborting
- Async functions skipped with a warning instead of silently producing wrong data
- Cross-thread functions correctly merged into NDJSON report
- Symlinks followed when staging project files for instrumentation
- Bare stdout path suppressed in interactive terminals
--fnhelp text clarified with substring matching example including qualified names- Actionable error messages when project directory or
src/is missing
Changed
- Default behavior:
piano buildinstruments all functions when no targeting flags are given - Run data location: project-local
target/piano/runs/