Nextest doesn't work in workspace where Cargo.toml of workspace is not hierarchically higher than crates
Output
File structures
Repo
.cargo/workspace/Cargo.toml
Crate/
src/
Cargo.toml
What I think the issue is
I believe that nextest assumes that the workspace Cargo.toml will always be in a parent folder of the crates the workspace contains.
Thank you! I've never seen this before to be honest. Do you have a reference in the Cargo documentation for it?
Hi @sunshowers , I'm sorry but I didn't understand what reference do you want me to provide?
Thanks. I had another look at your repro, and to be honest I didn't know that you could use .. in workspace members! It definitely seems rare, I've never seen a Rust project in the wild do this.
This would have to be addressed in the underlying guppy library (also maintained by myself), https://github.com/guppy-rs/guppy. I don't plan to fix this myself but a patch would be welcome.
I don't plan to work on this, but a patch would be welcome.
I checked the error message, if do not restrict manifest path must within workspace path, nextest can run tests at MinimalRepo. If you are sure this restriction can be bypass optionally, I can try provide patch to Guppy and Nextest.
Patch is ready now, for guppy repository, please review 0001-Help-fix-manifest-might-exist-out-of-workspace-root-.patch
In guppy PR #331 now
Just tagged cargo-nextest 0.9.86-b.1 with the fix from @PegasusPlusUS -- binaries will be out in around 20 minutes. Please test it out with:
cargo nextest self update --version 0.9.86-b.1
Thanks Pegasus for working on this!
Seems like this has been addressed, so closing it out.