Commits


portable: add FreeBSD support This adds the capability to compile got-portable on FreeBSD.


portable: initial Linux compilation This commit modifies the GoT main branch to be able to compile it under linux.


switch from SIMPLEQ to equivalent STAILQ macros The singly-linked tail queue macros were added to OpenBSD 6.9 and are more widely available on other systems. ok stsp


increase tag cache size; makes tog more responsive when many tags exist


convert tree entries from SIMPLEQ to an array


remove obj->path_packfile which is unused nowadays; saves a few free() calls


stop storing decompressed delta data in struct got_delta; fetch it on demand


fix build on OpenBSD/sparc64 (gcc)


don't leak objects which can't be cached


add cache debug output for too large elements


don't cache objects larger than 1MB


fix build with -DGOT_OBJ_CACHE_DEBUG


rename got_error_prefix_errno() to got_error_from_errno()


got_error_from_errno -> got_error_prefix_errno also add got_error_prefix_errno2 and got_error_prefix_errno3 which should hopefully all be merged into a single function with variadic args (but can't alloc mem)


more support for tag objects; new code is not yet reachable


allow got_object_idset_for_each() to return an error


remove object_idcache; use object_idset instead


no need to zero object cache entries during allocation


make id cache eviction more efficient


actually initialize cache struct in got_object_cache_init()


tree cache size can be reduced without harmful effects


reduce cache sizes; less memcmp calls during 'got log PATH'


back out mini-commits; no significant performance difference


make got-read-pack pre-seed the main process mini commit cache


rename got_commit_object_mini to got_mini_commit_object