portable: release 0.93

bump version number

CHANGES for 0.93

fix expected output; with previous change fetch -l no longer lists HEAD twice

make gotsh handle poll timeouts when checking for gotd closing the pack pipe This will hopefully fix issues seen on servers where gotsh exits early for no good reason.

actually detect modified files when checking out with -E When checking out over a pre-existing directory tree with -E, got would store the checkout timestamp in the fileindex and so not detect local edits until those files are touch(1)ed again. Instead, detect that a file already exists during checkout and don't update its {c,m}time, leaving them to zero (the epoch), so a subsequent `got status' will look at its contents. While here, change the status char for such file from ? to E, which is what the manpage actually documents. Issue reported by naddy@ ok stsp@

make 'got send' detect connections that are unexpectedly closed by the server ok op@

sync files from diff.git b5a9c15f4d68c06ec3bf839529b3ed2def0a6af6 Fixes 'No newline at end of file' message appearing in unexpected places. Problem noticed by op@

fix test_send_config test directory name

gotwebd: move the buffering from the fastcgi layer to the template Reduces the indirection in fcgi.c, starts to make the struct template opaque, simplifies the template usage. All with a net negative :-) reads fine to stsp@ (thanks!)

gotwebd: don't loose track of the file in commit listing When browsing the history of a file, the more button should generate a link containing the file= parameter, otherwise we switch back to the 'global' history. Spotted by stsp@

TODO: gotwebd should reply with 404 on some kind of errors

regress/template: use template_free() rather than free(3)

template: join subsequent tp_puts() calls This greatly reduces the number of tp_puts() calls: gotwebd' pages.tmpl goes from 444 to 190. Otherwise, this doesn't produce other observable changes.

gotweb: style improvements First round of polishing, css simplification and responsiveness for gotwebd. The new HTML is now actually usable on text-only browsers and the fonts are bigger on smaller screens; close to no changes for "normal" desktop usage. A few regressions were spotted by Lucas on IRC, thanks! No objections from stsp@

got_worktree_open: do not skip a locked worktree When trying to open a worktree from a list of metadata directories (.got, .cvg), error out when a worktree is found but is already locked. Skipping it and proceeding would result in a confusing "no git repository found" error from tog and gotadmin. ok stsp

copy remote repo info out of work tree data before closing the work tree Fixes a crash regression introduced when fetch/send were made to close the work tree earlier.

tog: add basic regress for log limit and log search This required minor changes to tog.c to teach tog the new test instructions and feed it search terms when driven by the harness. More is needed for these features but this provides some basic coverage for the & and / log keymaps. ok stsp

make 'got fetch' and 'got send' release the work tree lock earlier This avoids having work tree operations blocked while network transfers are in progress. ok op@

expose out-of-memory errors from zlib inflate() and deflate() calls Previously these were hidden behind a general "compression failed" error. ok kn

portable: set next version

portable: release 0.92

portable: gotd: fix dist file inclusion When running 'make dist', include the correct chroot-*.c file.

portable: configure: echo gotd/gitwrapper paths When --enable-gotd is present, and gotd empty path or gitwrapper's git libexec path is set, print those out with the other information at the end of the configure script. "N/A" is set where no value is present. Helpful for debugging.

portable: make gitwrapper --enable-gotd aware There's no point installing gitwrapper outside of enabling gotd, as this is only used by gotd.