Reference
Release 1.0.9
Nidus 1.0.9 routing and OpenAPI builder performance notes.
Release 1.0.9
Nidus 1.0.9 is a measured framework-construction performance and engineering quality patch release. Public APIs remain compatible with 1.0.8; the retained changes remove avoidable allocations and cumulative cloning without changing request, provider, routing, or OpenAPI semantics.
Route Construction
- Controller mount prefixes are normalized once per controller build instead
- Route parameter normalization writes into one pre-sized
Stringinstead of - Existing root, trailing-slash, repeated-slash, braced-parameter, and empty
- In the final local 150-sample Criterion comparison, 32-route controller
of once for every stored route.
allocating a temporary string per segment, collecting a Vec, and joining a second output string.
parameter behavior has focused regression coverage.
construction improved from 24.195-24.331 us to 15.885-16.102 us, a 34.1%-35.8% improvement interval.
OpenAPI Schema Registration
- Schema registration now inserts directly into the document's owned
- The existing first-registration-wins behavior for duplicate schema names is
- A new 64-schema construction benchmark improved from 177.04-179.30 us to
BTreeMap instead of cloning every previously registered schema on each addition.
preserved by a focused integration test.
14.324-14.425 us, a 92.0%-92.1% improvement interval in the final local 150-sample comparison.
Evidence Boundary
The benchmark figures above are local aarch64-apple-darwin, Rust 1.96.0 construction-time measurements, not universal request-throughput claims. A request-context in-place refresh experiment produced inconsistent results and regressed the metrics-enabled production stack by 9.8%-15.2% in the final repeat; it was reverted and is not part of 1.0.9.
The release candidate is validated with:
cargo fmt --all --check
cargo clippy --workspace --all-targets --all-features -- -D warnings
cargo test --workspace --all-features
cargo test --bench request_lifecycle --all-features
cargo test --bench routing --all-features
RUSTDOCFLAGS='-D warnings' cargo doc --workspace --all-features --no-deps
cargo deny check
cargo audit --deny warnings
bash scripts/semver-check-publishable-crates.sh
bash scripts/package-publishable-crates.sh --list-only
NIDUS_EXTERNAL_EXAMPLES_LOCAL_PATCH=1 bash scripts/verify-external-examples.sh
npm --prefix website run verify
cargo +nightly fuzz build
After publishing, verify every crate, docs.rs page, and standalone example:
bash scripts/verify-published-release.sh 1.0.9