Gunnar

mikronova/funnel-core

bench/Cargo.toml

# Detached bench crate for funnel-core — its OWN `[workspace]` so the heavy
# `nornir` dev-dependency (the Bencher contract) never touches the published
# funnel-core crate's lockfile/members. `nornir`'s `run_bench_example` detects
# `<repo>/bench/examples/nornir-bench.rs` and runs cargo *inside* this dir.
# See nornir/.nornir/bencher.md (the three accepted layouts).
[package]
name = "funnel-core-bench"
version = "0.0.0"
edition = "2021"
publish = false

[workspace]

[dependencies]
# `default-features = false` per nornir's own guidance for bench consumers: drops
# the eframe/egui/wgpu + rmcp + embed-holger server stacks (the bench api
# `nornir::bench` is not feature-gated). Keeps this harness lean AND independent of
# the embed-holger server build.
nornir = { path = "../../nornir", version = "0.6.0", default-features = false }
funnel-core = { path = "..", version = "0.1.5" }
chrono = { version = "0.4", features = ["serde"] }
anyhow = "1"
serde_json = "1"

[[example]]
name = "nornir-bench"
path = "examples/nornir-bench.rs"

# Pin the znippy-* registry crates to their local sources — the same
# `[patch.crates-io]` nornir carries in its own workspace root, mirrored here
# because a `[patch]` section is only honoured at the WORKSPACE ROOT and this is
# a detached workspace. Without it, `nornir` (a path dep) resolves
# `znippy-zoomies = "0.1.13"` from the registry, whose published 0.1.20 predates
# the local `gatling_bfs` re-export → `E0432: unresolved import
# znippy_zoomies::gatling_bfs` in nornir's `src/knowledge/context.rs`, and the
# bench example cannot build at all. Same fix as skade/bench + dwarves/bench.
[patch.crates-io]
znippy-zoomies = { path = "../../znippy-zoomies" }