Commits


remove trailing whitespace; patch by Josiah Frentsos


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


map raw object files into memory while packing if possible


raw object blocksize and read buffer were unused; remove them


cache raw objects in order to speed up gotadmin pack


use RB_TREE instead of STAILQ to manage packindex bloom filters; much faster


match the unsigned char type used by the zlib interface ok stsp


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 $


use size_t for loop indices to avoid signedness warnings; from emaste@freebsd