Commit Briefs
portable: fix-up sha1.h include
-portable doesn't need this directly.
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@
portable: include sha1.h portably
Don't directly include sha1.h as this isn't always in the same location across systems.
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@
portable: freebsd: portably include sha1
The SHA implementation is found portably across systems, so don't include sha1.h directly.
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@
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@
portable: include support for MacOS
This adds support for MacOS (Monteray onward, although should work on older MacOSes). The BSD wrapper for poll/ppoll has been lifted from the work the folks over at OpenSSH have done -- thanks!
tweak error reporting due to invalid numbers
Use the same idiom as in the strtonum(3) manpage which produces a more readable error message. OK kn, stsp
tog: clear search highlighting when reloading view
Clear the search highlighting when replacing the content of a diff view ('<', '>', '[', ']', 'a', 'w') or a blame view ('b', 'p', 'B'). Previously the position would remain highlighted even if the text there had changed. ok stsp@ or a blame view
switch tog ref view's sort order command key to "o" instead of "s"
The letter "o" does not overlap with existing options of 'got ref' and is also used by mutt(1) for this purpose.
implement 'got diff -c' for diffing commits with optional filtering by path
Need for filtering by path sugggested by kn@ ok naddy@
portable: tog: add back _XOPEN_SOURCE_EXTENDED
As with OpenBSD, FreeBSD requires that _XOPEN_SOURCE_EXTENDED is defined before including <ncurses.h>, otherwise things break. On other systems (Linux), _XOPEN_SOURCE_EXTENDED is already defined, so leaving that declared unconditionally throws an error. Keep the definition, but only include it on !Linux systems. Issue reported by Christian "naddy" Weisgerber
tog: make blame view work
Fix the thread comparison with tog's blame view.