Incremental compilation appears to sporadically flush caches when this isn't necessary
yorickpeterse opened this issue · comments
Please describe the bug
Commit 137304d introduced support for incremental compilation of LLVM modules/object files.
While working on porting my personal website's static site generator over to one written in Inko (https://github.com/yorickpeterse/yorickpeterse.com/blob/inko-generator/), I noticed that somewhat randomly caches are flushed based on the LLVM timings changing: sometimes it takes 180 milliseconds, other times 420-ish milliseconds, even without any code changes.
My guess is that we're not processing certain files in a consistent order, perhaps due to this project using dependencies in ./dep
and the sort order not being consistent.
Please list the exact steps necessary to reproduce the bug
git clone https://github.com/yorickpeterse/yorickpeterse.com.git
cd yorickpeterse.com
git checkout -b inko-generator origin/inko-generator
inko build --timings
Operating system
Arch Linux
Inko version
main
Rust version
1.74.1
I can't reproduce this reliably on my desktop computer. It could be specific to the hardware on my laptop, so I'll need to take a look into that.
I'm not able to reproduce this on my laptop either. It might've been something sporadic, or perhaps the result of other work I was performing on Inko. As such, I'll close this issue.