Caching
Why does Cargo rebuild everything?
Quick answer
Your cache key changes on every run, or target/ is not cached at all.
The detail that matters
Key on Cargo.lock, not on source files. Add sccache so even a cold target/ reuses compiled artefacts across branches.
Your next build could be twice as fast, at half the price
Start free. Migrating away is the same one line, and we publish that diff too.
Related
Why is cache restore slow?GitHub throttles cache bandwidth, so a multi-gigabyte cache can take minutes to restore.How do I write a good cache key?Hash exactly the files that determine the cached content — usually the lockfile — and nothing else.What are restore-keys?Ordered prefixes tried when the exact cache key misses, so a partial match can still be restored.Why does my cache miss every run?The key includes something that changes every run — commonly github.sha or a timestamp.