krishvishal opened a new pull request, #3113:
URL: https://github.com/apache/iggy/pull/3113

   ## Summary
   
   - Fix DAG-scoped CI builds missing binary targets needed by integration 
tests, causing all CLI/server tests to panic with `CARGO_BIN_EXE_<name> is 
unset`
   - Fix `cargo test` fallback path that would run unrelated tests from binary 
packages when nextest is unavailable
   
   ## Problem
   
   The DAG-based test scoping (#3095) passes `-p` flags to both `cargo build` 
and `cargo nextest run`, restricting CI to only affected crates. When only 
`core/integration/` files change, cargo-rail identifies 1 affected crate 
(`integration`), so CI runs:
   
   1. `cargo build --locked -p integration`: builds the integration library and 
its dependencies as libraries, but does not compile binary targets from other 
packages.
   
   2. `cargo nextest run -E "package(integration)"`: runs integration tests 
that call `Command::cargo_bin("iggy")` / `Command::cargo_bin("iggy-server")`, 
which panics because `CARGO_BIN_EXE_iggy` / `CARGO_BIN_EXE_iggy-server` are 
unset.
   
   The `integration` crate depends on `iggy-cli` as a library, but its tests 
invoke the `iggy` binary at runtime via `assert_cmd`. The binary target is a 
separate compilation unit that isn't produced by `cargo build -p integration`.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to