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

Cleanup profraw files + --no-clean #292

Open
SamChou19815 opened this issue Jul 16, 2023 · 3 comments
Open

Cleanup profraw files + --no-clean #292

SamChou19815 opened this issue Jul 16, 2023 · 3 comments
Labels
C-enhancement Category: A new feature or an improvement for an existing one

Comments

@SamChou19815
Copy link

I really like the --no-clean flag since it makes incremental re-run of tests much faster. However, it eventually gets slower and slower since there are tons of profraw files generated.

In practice, I found that running rm -f target/llvm-cov-target/*.profraw before a llvm-cov run with --no-clean flag has the best of both world: the target/llvm-cov-target won't blow up in size, and we still get all the incremental runs' benefit.

Could this be added as a builtin flag so I don't have to write a custom script to do this?

@taiki-e taiki-e added the C-enhancement Category: A new feature or an improvement for an existing one label Jul 16, 2023
@taiki-e
Copy link
Owner

taiki-e commented Jul 16, 2023

Sounds reasonable to me.

@TroyKomodo
Copy link

TroyKomodo commented Jul 17, 2023

Do incremental builds actually work?

$ cargo llvm-cov show-env
...
CARGO_INCREMENTAL="0"
...

Im curious why it has to be disabled?

@taiki-e
Copy link
Owner

taiki-e commented Jul 18, 2023

@TroyKomodo
--no-clean is unrelated to the incremental compilation of rustc itself, but improves the performance of successive builds, since the cleanup to prevent false positives in several situations that occur before the build and the rebuilds triggered by the cleanup are no longer performed.

CARGO_INCREMENTAL=0 was needed at some point in the past, but may no longer be needed with the cleanup in 0.1.5.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-enhancement Category: A new feature or an improvement for an existing one
Projects
None yet
Development

No branches or pull requests

3 participants