Skip to content

Commit 83200d2

Browse files
hyperpolymathclaude
andcommitted
fix(container): copy benches/ so root manifest parses in minimal image
cargo validates every declared target when parsing Cargo.toml, even for `--bin echidna`. Root manifest declares explicit [[bench]] targets (proof_benchmarks, routing_benchmarks at benches/*.rs); without benches/ in the build context the parse fails with `can't find 'proof_benchmarks' bench`. Verified locally via `cargo metadata --no-deps` against the exact Containerfile copy set. Completes the minimal-image build-context fix (cf. prior crates/ commit). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent b8995dc commit 83200d2

1 file changed

Lines changed: 7 additions & 0 deletions

File tree

Containerfile

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,13 @@ COPY src/interfaces ./src/interfaces
3232
# must be in the build context too — omitting it fails the build with
3333
# `failed to read /build/crates/echidna-core/Cargo.toml`.
3434
COPY crates ./crates
35+
# Root Cargo.toml declares explicit [[bench]] targets (proof_benchmarks,
36+
# routing_benchmarks at benches/*.rs). Cargo validates every declared
37+
# target when it parses the manifest — even for `--bin echidna` — so the
38+
# benches/ sources must exist in the build context or parse fails with
39+
# `can't find 'proof_benchmarks' bench`. (tests/ and examples/ are
40+
# auto-discovered and tolerate absence, so they are intentionally not copied.)
41+
COPY benches ./benches
3542

3643
RUN cargo build --release --bin echidna
3744

0 commit comments

Comments
 (0)