Commit Briefs
make use of a reflist object id map in 'got log'
Impoves performance of 'got log' on the FreeBSD Git repo which can easily contain more than 4000 references.
add tagged object IDs to reference list object ID map
Fixes display of "/tags/..." commit ID decorators in tog which was broken in previous commits.
Add a refs argument to got_repo_match_object_id(), replacing 'resolve_tags'
Make use of this where possible to avoid re-reading references from disk. ok naddy
make use of reflist object id maps in tog log and diff views
This is a partial fix for performance issues when browsing the FreeBSD Git repo, which can easily contain more than 4000 references. ok naddy
introduce got_custom_error array to support multiple errors in flight
This is still not thread-safe but at least avoids errors overwriting each other in single-threaded contexts.
avoid signed vs unsigned comparisons in fetch.c
ssizeof() macro idea courtesy of millert@ ok millert@
do not mix up repositories if tog's -r option is used inside a work tree
with input from and ok naddy
fix parsing of tag objects which lack a tag message
This problem could be triggered with the u-boot repository: $ git clone --bare https://gitlab.denx.de/u-boot/u-boot.git $ got log -r u-boot.git got-read-pack: bad object data got: bad object data $