nimble reevaluates every package in nimble dir
nimble reevaluates every package in nimble dir. if your global nimble dir is polluted, it makes a simple nimble build take multiple minutes to run.
Is this specific to solver:sat or it does take a similar amount of time when using solver:legacy?
Thanks
with solver:legacy it evaluates much less packages, but still more than required. for my package with single dependency and no transitive dependencies, it still for some reason evaluated 4 additional completely unrelated packages.
The issue is mostly that it is slow to evaluate the packages, but sat does need to go over them upfront. We are going to make it faster soon. In the meantime, you may benefit from using local which will be the new default soon.
is package cache supposed to be stored in tmp? issue would also not be present, if it used persistent cache location, so nimble didn't need to reevaluate everythign after every reboot, but i have no clue, if package cache is supposed to be invalidated regularly.
is package cache supposed to be stored in tmp?
Only for the legacy solver and in some edge cases. There is a pkgcache folder but thats orthogonal to the reason of why it takes that long. We cant cache sat just yet as the way nimble requires works today isnt deterministic with a cache in front. But we are aiming into that direction