Commit Briefs
factorize imsg_clear calls after imsg_flush failures
imsg_clear frees and closes resources allocated as part of enqueueing imsgs so it's a no-op after reads. discussed with and ok stsp@
reuse existing deltas when creating pack files
tested by thomas, naddy, and myself
ignore the return value of closefrom(2); patch by Anna a.k.a. CyberTailor
millert@ suggests that this check is not needed, and that ideally we should be using close-on-exec instead. I will look into this, but in the meantime this change will help -portable: https://bugs.gentoo.org/828003
provide separate send {} and fetch {} configuration blocks in got.conf
Feature requested by naddy. ok naddy, who also suggested some tweaks that will arrive shortly
add 'got send' command for sending changes to remote repositories
Known to work against git-daemon and github Git server implementations. Tests by abieber, naddy, jrick, and myself. Man page additions reviewed by Lucas.
don't scan pack index offsets for large values if pack file is < 2GB
This saves an iteration over the entire h->offsets array when opening a pack index which should not contain large offsets in the first place. ok millert@
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
raw object size should not include the length of the object's header
This way, the size of a raw object is the same regardless of whether the object was found in a loose object file or in a pack file.