Repository navigation
v0.2.0 — API refinement, clippy clean, docs update
Pre-release
Pre-release
Version 0.2.0 - 2025-08-27
This release refines the collector API, keeps the codebase clippy-clean under strict lints, and updates documentation and tests. A minor breaking change improves ergonomics and performance for recording measurements.
✨ Features
- New types: Duration, Measurement
- New functions: measure, measure_named
- New macros: time!, time_named!
- Optional std-only Collector with Stats aggregation (thread-safe; per-name stats)
- Feature flags: enabled, std, minimal, full (default = ["std","enabled"])
🐛 Bug Fixes
- Resolve Clippy warnings by adding targeted
#[allow(clippy::cast_precision_loss)]and modernizing format strings, maintaining#![deny(clippy::all)]without warnings across all targets/features. - Ensure
no_stdtest stability by gatingtest_duration_displaybehind thestdfeature.
💥 Breaking Changes
Collector::recordnow accepts&Measurementinstead of taking it by value:pub fn record(&self, measurement: &Measurement).- Migration: Update call sites from
collector.record(measurement)tocollector.record(&measurement). - Rationale: Avoids unnecessary moves/clones and enables cheaper call sites.
- Migration: Update call sites from
📈 Improvements
- Update
DurationDisplay to use inline format args (no functional change). - Update documentation examples to version
0.2.0and clarify feature usage (zero-overhead withdefault-features = false). - Update tests and examples to the new
Collector::record(&Measurement)signature.
⚠️ Deprecations
None.
Full Changelog
Full Changelog: v0.1.5...v0.2.0