Here's an updated version of the series posted here:
http://article.gmane.org/gmane.comp.version-control.git/176861
I'll discuss specific changes in each patch, but the summary is:
1. object-cache is now called metadata-cache.
2. The interface to "decorate" and "metadata-cache" is a little
cleaner, and it's harder to break it by changing the "width" field
at runtime. 3. Cache files have a header with a version for future-proofing.
4. Cache files on disk are automatically invalidated if grafts or
replace refs change.The patches are:
[1/6]: decorate: allow storing values instead of pointers
[2/6]: add metadata-cache infrastructure
[3/6]: commit: add commit_generation function
[4/6]: pretty: support %G to show the generation number of a commit
[5/6]: check commit generation cache validity against grafts
[6/6]: limit "contains" traversals based on commit generation
-Peff