Commit Briefs
portable: add back sys/queue.h
Now that the handling of including sys/queue.h is better, there's no need to remove those lines from the source. Copy the location of those original sys/queue.h lines from upstream at the same line number, so as to avoid any conflicts in the future.
parse tree entries into an array instead of a pathlist
Avoids some extra malloc/free in a performance-critical path. ok op@
inline struct got_object_id in struct got_object_qid
Saves us from doing a malloc/free call for every item on the list. ok op@
fix loose object file header parser for zero-length headers
ok millert tracey
portable: tree/queue header fixes
sys/{tree,queue}.h are looked up via configure, and therefore are included via that mechanism.
Revert "cache raw objects in order to speed up gotadmin pack"
This reverts commit c565dfd37a157bab9556aceac96ff27d64525fc9.
portable: update to handle bloom, etc
Update portable to support changes for bloom, etc.
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.
use less memory allocations when formatting log messages
Rewrite got_object_commit_get_logmsg() such that only one memory allocation is made when creating a pretty version of a log message. ok naddy@
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
add a user data pointer to struct got_object_qid
This will be required by a future 'gotadmin pack' command.
tolerate tag objects which lack tagger timestamp information
Fixes interop with repos such as git://github.com/steveicarus/iverilog.git Found by + 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 $
Stop including <sys/syslimits.h> directly.
POSIX says the limits defined there are available from <limits.h>, which almost all affected source files already included anyway. ok millert stsp
in got_object_commit_get_logmsg(), handle log messages which lack '\n'
found by tracey's scan-build