Just strip CARGO_MANIFEST_DIR from the paths, dont cache the cwd and call it a day. The testing i've done shows that it improves the cache hit rate somewhat but quite honestly I do not think that the task at hand is doable cleanly and safely for all usecases at this point.
Testing done: build cachepot with cachepot.
There still are a lot of absulute paths that end up in the build artifacts such as
1) paths in *.d files.
2) paths in artifacts from the cc builds
3) paths in things that are still built locally such as cdylib crates.
@drahnr, marking this ready for review.
Just strip
CARGO_MANIFEST_DIR
from the paths, dont cache thecwd
and call it a day. The testing i've done shows that it improves the cache hit rate somewhat but quite honestly I do not think that the task at hand is doable cleanly and safely for all usecases at this point.Testing done: build
cachepot
withcachepot
.There still are a lot of absulute paths that end up in the build artifacts such as 1) paths in *.d files. 2) paths in artifacts from the
cc
builds 3) paths in things that are still built locally such ascdylib
crates.