Commits


fix logging during gotwebd shutdown During `rcctl stop gotwebd' the sockets process gets a SIGTERM and dies, and this makes the parent process assume it exited abnormally. Instead, catch SIGINT and SIGTERM and exit gracefully. Issue reported by xs on IRC. ok jamsek


gotwebd: fix colour of target lines in dark mode reported by xs on IRC, thanks!


Test log -b <path> traversing a merge commit. This tests for the bug fixed by c8255edc. ok stsp@


handle merge commits that are unrelated to requested changed path history Problem found and fix tested by James Cook.


portable: CI: update FreeBSD image Bump the FreeBSD image used on Cirrus-CI to FreeBSD-13-2


plug some fd leaks in the fdopen{,dir} error paths There's also a memory leak fixed. ok stsp@


style: no-op change in practice change so it matches the style used in the rest of the tree. ok stsp


remove stray abort() call; ok stsp


remove unneded wbuf->fd = -1 There's no need to set the fd to -1 on ibufs created with imsg_create(3), and it was probably never needed.


convert to use imsg_get_fd() While here also fix a fd leak in got-read-pack. We were dup'ing imsg.fd without closing imsg.fd later; instead just use imsg_get_fd() to extract the file descriptor. Tested by falsifian and Kyle Ackerman, thanks! 'go ahead' stsp@


gotwebd: try to improve copy-paste from BLOB pages This moves the space inside the line anchor and makes it non-selectable, so that when copy-pasting, only the content of line lines is actually copied. At the moment, this seems to behave slightly incorrectly in firefox which inserts a double line break due to the presence of unselectable elements inside the selection. Hopefully it will be fixed, chromium behaves fine. It also still works decently on text-browsers. ok stsp@


gotwebd: guard against missig folder and file parameter in BLOB and BLAME ok stsp


allow remotes without urls in git config in gotd This is b624328edd but for the code used by gotd. ok stsp@


allow remotes without urls in git config Also, add tests. This change lets got and related tools work when the git config file has "remote" sections without urls, like this one in one of my git-annex git repositories: [remote "h0-rsync"] annex-rsyncurl = (some url) annex-uuid = (some uuid) skipFetchAll = true Running tog and many got commands there would previously result in: $ tog got-read-gitconfig: gitconfig syntax error tog: gitconfig syntax error The change to got-read-gitconfig.c is by stsp@, with ok from op@ (and now me). Tests ok stsp@.


fix one error being ignored in got_privsep_recv_gitconfig_remotes


got.1: use typewriter-style quoting in got.conf author example Otherwise copy/pasting from the man page to got.conf produces syntax errors. Noticed by mlarkin@


portable: move got_comat header include


portable: compat: update imsg Update imsg from libutils via OpenBSD. Needed for some imsg->fd handling.


got-read-patch: use imsg_get_fd(), move FILE handling in main also improves the error message in case of no fd was passed. ok stsp@


avoid opening objects in the gotd session process for no reason The session process opened an object as part of a sanity check and simply closed it again. Opening an object involves decompression and combination of deltas. Add a new interface which checks whether an object ID exists without such overhead and call it from gotd.


gotwebd.8: improve EXAMPLES sections tweaks and ok stsp


gotwebd: retire max_repos setting Unlike max_repos_display which limits the number of items per page, max_repos is an hard-limit on the number of repos gotwebd would process. "kill it with fire" tracey@ about the idea ok stsp


gotwebd.conf.5: show defaults, improve EXAMPLES Show the default value for each setting where it is documented and so trim the EXAMPLES section down to bits that are actually understandable. While here, some minor tweaks like fixing the syntax in one example, s/IP4/IPv4 and s/FCGI TCP/FastCGI. ok and tweaks stsp@


gotwebd: add knob for the number of tags and commits in the summary page ok jamsek


gotwebd: remove PAGE handling The page querystring parameter is long gone and currently unused. It was replaced mith the "more" buttons in all the views, except INDEX that uses `index_page'. ok jamsek