HTTP requests are the bottleneck of the resolve time.
Hashes are stable enough we can cache them when found.
Plan is:
- Provide a small cache
- plain files, sqlite3 or b-tree à la db5?
- if 34835825f73 is cached, do we use it for 34835825 too?
- $HOME/.cache/resolve-hash could be an ideal location
- Code integration
- create a new class CacheHashSearch
- define it as the first entry of get_search_classes()
- check after a search the source of resolution, if it's not from CacheHashSearch, cache it