Repository navigation
v0.5.2 — Performance, docs & CI hardening patch
No API break, no on-disk format change, no new dependency. Drop-in upgrade from v0.5.1.
cargo update -p segment-buffer
Performance
flush()now recycles theunflushedVec capacity across flushes. Previouslystd::mem::takeleft the field at zero capacity, forcing the next batch through ~log2(N) reallocs. The new path reserves the previous batch's capacity inside the same lock scope — one upfront allocation replaces incremental growth. No public API change, no change to the concurrency contract.- Performance tuning guide (
docs/PERFORMANCE.md§ "Tuning for your workload"). Surfaces the four config-only Tier 0 levers (DurabilityPolicy,FlushPolicy,compression_level,for_each_from) in impact order, each with a code snippet and a "when NOT to use" guardrail. examples/background_flush.rs— the recommended pattern for p99-sensitive producers:FlushPolicy::Manual+ a caller-owned timer thread with an atomic shutdown flag and a final synchronous flush before exit.
Documentation
- README expansion: Cargo features table (
default = [],encryption,loom,fuzz),append_allone-liner in Quickstart,iter_fromexample next to the drain loop,open_with_reportcrash-recovery example. SegmentBufferrustdoc: new# Concurrencysection (MPMC semantics, single-processflockinvariant, mutex-never-held-across-I/O rule, loom-provendelete_acked+appendinterleaving, re-entrancy panic). Added#[doc(alias = "queue" | "spool" | "wal" | "writeahead" | "log")]for search discoverability. Cross-linked allexamples/*.rsfrom the crate-root rustdoc.
CI / tooling
actionlintstep added toscripts/verify-gate.shand a matching job inci.yml.- lychee redirect URLs documented in
.github/lychee.toml(idiomatic docs.rs patterns that look like errors but aren't). - Historical doc annotations: 12 of 23
docs/{status,planning,perf}/2026-07-2*files annotated with non-destructive resolution notes (inline corrections for stale claims, end-of-file appendices for completed TODO items).
Verification
All gates green on commit 512d74a:
cargo fmt --all -- --checkcargo clippy --all-targets --features encryption -- -D warningscargo test --no-fail-fast --features encryptioncargo doc --no-deps --features encryptioncargo publish --dry-run --features encryption- CI + Nix workflows:
success(verified viagh run list)