Commit Briefs

d9787ed86e Omar Polo

make got_commit_graph_iter_next use caller-provided storage for the id

and adjust the callers. discussed with and ok stsp@


e15c42decf Omar Polo

plug leak in the commit graph iterator

We fail to release the memory for the nodes. To fix it however, we some consumer of the commit graph iterator need to be corrected: the returned pointer is safe to be used only up until the next iter_next call; save a copy it if it's needed afterwards too. ok stsp@


5e91dae4dd Stefan Sperling

remove trailing whitespace; patch by Josiah Frentsos


4b752015b5 Stefan Sperling

switch 'tog diff' and 'tog blame' to Myers diff for speed

Make the choice of diff algorithm configurable by diff API users. The got and gotweb programs keep using Patience diffs which are prettier than Myers. But tog should be as fast as possible since it is being used interactively. If performance of Patience diff gets improved later we can consider switching tog back over to it. ok tracey jamsek


e6e73e5504 Tracey Emery

move remaining got_opentemp's out of blame. ok op@


1b484788fe Tracey Emery

move got_opentempfd out of blame_open ok stsp@ jrick@


eb81bc23c7 Tracey Emery

move got_opentempfd out of open_blob. ok stsp@


d7b5a0e827 Stefan Sperling

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@


392891ce58 Stefan Sperling

pass an already open commit object to the blame callback

ok op@


a44927cc05 Stefan Sperling

stop relying on commit cache for good performance of got_object_id_by_path()

Instead of internally opening and closing the same commit object over and over again, require callers to pass an open commit object in. Avoids an inherent dependency on the commit object cache for reasonable performance. ok op@


47a9074875 Christian Weisgerber

remove unused variables to fix LLVM 13 warnings; ok stsp


dbdddfee14 Christian Weisgerber

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


56b63ca4ab Stefan Sperling

make fclose(3) failure checks consistent; check 'fclose() == EOF' everywhere

ok millert, naddy


5e9266f9d6 Christian Weisgerber

fix a typo that triggered "munmap: Invalid argument" in got blame on FreeBSD

ok stsp



b4737997c2 Stefan Sperling

handle binary files in blame's custom file diff atomizer



89dc8b78ad Stefan Sperling

remove stdbool.h where it's not needed





fe621944e8 Stefan Sperling

merge new diff implementation from the git.gameoftrees.org diff.git repository

This new diff implementation was started by Neels Hofmeyr during the u2k20 hackathon and now replaces diffreg.c code lifted from the OpenBSD base system. The integration of this code into Got was done by me. Got now uses the patience diff algorithm by default. The diff.git repository will remain the primary repository for the diff code, which already compiles and runs on other operating systems such as Linux. Any fixes and improvements for files inherited from the diff.git repository should be written against that repository and synced to got.git afterwards.


62d463cac1 Christian Weisgerber

indentation fixes


3168e5da21 Stefan Sperling

zap trailing tabs


2c2d5c5f4c Stefan Sperling

show paths in blame.c GOT_ERR_OBJ_TYPE error messages