Commits


add got_packidx_get_packfile_path() for library-internal use


when reading a pack index byte-swap fields at compile-time where possible suggested by mpi@ ages ago


make close(2) failure checks consistent; check 'close() == -1' everywhere ok millert, naddy


add fd field to got_repository, modify got_packidx_open to use fds These changes are intended to make got more compatible with FreeBSD's Capsicum. ok stsp


fix matching the object ID of the first object in a pack index An object ID which appears first in a pack index was wrongly ignored by got_packidx_match_id_str_prefix(). The result was a spurious "object not found" error when this object ID was passed on the command line. Reported by jrick on freenode who was lucky enough to this edge case!


use the POSIX standard endian functions and explicitly include <endian.h> ok stsp


do not rely on <zlib.h> to pull in <unistd.h> ok stsp


remove got_packidx_get_object_idx_sha1(); it is not actually needed


write large objects to disk when resolving deltas; raise in-mem delta threshold


extract large objects to a temporary file in got-index-pack


add mmap support to got-index-pack


do not buffer more data than necessary in got_inflate_to_mem_fd()


avoid re-reading the entirety of an object's data to calculate the CRC


rewritten got-index-pack; sorry about the monster commit


add optional 'consumed' output parameter to got_inflate_to_mem_fd()


remove unneeded memory allocations from ref delta parser which were leaking


add support for first-parent history traversal to got-read-pack


add copyright year for files already touched in 2020


fix reading ref deltas with GOT_PACK_NO_MMAP builds


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


cache delta data buffers in an LRU cache


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


when an object id string is bad, include the bad string in the error message


fix reading pack files larger than 2GB; ok tb@; problem found by mpi@


properly handle read errors in got_packidx_init_hdr (found by jj@ scan-build)