Skip to main content

Crate cbh_storage

Crate cbh_storage 

Source
Expand description

Implementation crate for cargo-bench-history; do not depend on this directly.

The storage port and its backends. analyze and the mutating commands talk to a single [Storage] trait; behind it sit a local-filesystem backend, an Azure Blob backend, and a read-through caching backend that mirrors a cloud backend onto local disk (using per-project cache-epoch markers to detect remote rewrites). The key-layout and sanitization rules that keep those backends addressing the same objects live here too, alongside an in-memory fake (behind private-test-util) so commands are testable without a filesystem or cloud account. Split out of the cargo-bench-history shell so the Azure and blob-storage dependencies are isolated for mutation testing.

Every item is re-exported flat from the crate root, so consumers write cbh_storage::StorageFacade rather than reaching into a submodule.