Commits


avoid needless use of STAILQ_FOREACH_SAFE, we are not removing elements here


avoid the needless check for set membership in got-read-pack as well The list of ids traversed here won't contain IDs already present in the set.


avoid a needless check for set membership in got_pack_repaint_parent_commits() The list of ids traversed here won't contain IDs already present in the set.


reduce indentation in got_pack_repaint_parent_commits(); no functional change


reduce indentation in repaint_parent_commits(); no functional change


in repaint_parent_commits(), handle some errors properly


need to hop to the done: label upon error in a nested loop


remove unused parameter 'nqueued' from pin_pack_for_commit_painting()


fix number of queued ids passed from findtwixt() to got_pack_paint_commits()


remote unused parameter 'nids' from got_pack_find_pack_for_commit_painting()


handle missing parent commits while coloring commits in got-read-pack When a parent is not present in the pack file, handle this situation gracefully rather than erroring out. Fixes a regression introduced with recent got-read-pack coloring changes where commands such as 'got send' could fail with 'got-read-pack: object not found'.


fix a double-free introduced with changes to got-read-pack coloring


whitespace and unwrap a line; no functional changes


rework got-read-pack's commit coloring loop Port the parent commit coloring fix to got-read-pack, and ensure that it starts off with the same state as the main process. got-read-pack did not have access to the main process's ids array, and was thus working with a different initial state. With these changes the same commit traversal happens regardless of whether coloring is "offloaded" to got-read-pack or not (verified manually by placing debug printfs). ok jamsek


fix pack exclusion via an ancestor commit When a commit is first discovered as a commit which should be included in the pack, but is later found to be a parent of a commit which should be excluded from the pack, gotadmin pack correctly excluded the commit itself but failed to exclude this commit's parents. This bug is the reason why our test suite did not notice that gotd was not protecting references when clients did not send a pack file. In our test case, these parents are in the 'keep' set already and were never added to the 'skip' set. A useless pack was built which included those parents and nothing else. Add a test which triggers the bug via gotadmin pack. ok jamsek


style(9) only; no functional changes Reflow lines exceeding 80 columns; replace Allman with K&R braces; and line continuation whitespace. ok stsp@


fix gotd failing to protect references when the client sends an empty pack Found by martijn@ ok jamsek


expand test coverage of possible protect statement syntax in gotd.conf


portable: set next version


portable: release 0.108


fix a typo in CHANGES


bump version number


CHANGES for 0.108


sync dist file list


change references to git-repack to gotadmin cleanup and explain more details