Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

./x.py test does not rebuild properly #226

Open
Aurel300 opened this issue Oct 14, 2020 · 3 comments
Open

./x.py test does not rebuild properly #226

Aurel300 opened this issue Oct 14, 2020 · 3 comments
Labels
pending-on-external Issues that we cannot resolve due to factors outside of our control (e.g. in rustc).

Comments

@Aurel300
Copy link
Member

This is a minor issue, but if I do the following steps:

  1. Start with a working build of prusti, passes tests with ./x.py test --all.
  2. Make a change in the codebase, in my case in prusti-specs/src/specifications/preparser.rs
  3. Run the tests again with ./x.py test --all.

The last step seems to build some things (including prusti-specs), but after the build is complete and the tests run, they fail with can't find crate for prusti_contracts_internal which prusti_contracts depends on. If I do a proper rebuild ./x.py build --all, and then test again, it's fine.

Maybe there is something wrong with the crate dependencies?

@fpoli
Copy link
Member

fpoli commented Oct 14, 2020

What happens is that prusti-test uses the binaries of prusti-launch and prusti, but there is no cargo dependency between them because there is no code dependency. (In the old Makefile there was a cargo build before each cargo test to fix this).

I wonder what happens if we declare a dependency without actually using it. Maybe it's enough to make cargo recompile the dependencies (prusti, prusti-launch...) when ./x.py test --all is executed.

@fpoli fpoli mentioned this issue Jan 4, 2021
@fpoli
Copy link
Member

fpoli commented Jan 6, 2021

Relevant cargo issue: rust-lang/cargo#4316

@Aurel300 Aurel300 added the pending-on-external Issues that we cannot resolve due to factors outside of our control (e.g. in rustc). label Feb 23, 2021
@fpoli
Copy link
Member

fpoli commented Mar 15, 2022

Pending on rust-lang/cargo#9096

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pending-on-external Issues that we cannot resolve due to factors outside of our control (e.g. in rustc).
Projects
None yet
Development

No branches or pull requests

2 participants