Commit Briefs

Thomas Adam

sync dist file list








Thomas Adam

fix pack progress object counter for loose objects

Move pack progres object accounting to a single place. This makes it easier to account for the case were only loose objects are packed. A wrong amount of objects was reported before when packing loose ones.






Thomas Adam

got patch: prefer new name if not /dev/null and not a git-style diff

This fixes a common issue when for e.g. generating patches with $ diff -u foo.orig foo where 'got patch' failed because 'foo.orig' has an 'unexpected status'. prodded by naddy, ok stsp


Thomas Adam

const-ify string table


Thomas Adam

move got_patch file status checking in worktree.c

check_file_status used got_worktree_status to check if the file was in an allowed state, but it's wrong since the callback is not invoked on unchanged files. While here also fix a relate bug: unlink(newpath) is in the wrong spot and ends up removing files even when it shouldn't, so move it early in the got_worktree_schedule_* error handling. Finally, update the appropriate test case. It was passing before because got_worktree_schedule_add returned GOT_ERR_FILE_STATUS, not because check_file_status failed. ok stsp@



Thomas Adam

move got_errors[] table into a single compilation unit (error.c)

ok stsp


Thomas Adam

rm unused vars


Thomas Adam

const-ify tables

ok thomas_adam millert


Thomas Adam

style


Thomas Adam

augment patch progress callback with hunks info; recover from errors

Augment got_patch_progress_cb by providing the hunks that were applied with offset (or that failed) and the recoverable error encountered during the operation (bad status, missing file, ...) got_patch now proceeds when a file fails to be patched and exits with GOT_ERR_PATCH_FAILED if no other errors are encountered. While here, also add a test for the 'hunk applied with offset' case and shrink test_patch_dont_apply and illegal_status by taking advantage that 'got patch' doesn't stop at the first error. (And add some other cases to illegal_status too.) discussed with and ok stsp@


Thomas Adam

got patch: create missing directories when adding files

ok stsp@


Thomas Adam

got patch: keep permissions after patching a file

ok stsp@


Thomas Adam

introduce got_patch_progress_cb

This introduce a proper got_patch specific progress callback that is invoked after processing a patch. It also drops the hackish printf in the modified case and takes `nop' out of the struct got_patch. ok stsp


Thomas Adam

print additional progress information while packing

ok op@