Commit Briefs
fix `got patch -R' when using diff3 merge
`got patch -R' fails spectacularly when applied on a diff that contains the info of the original blob for the diff3 merge machinery since it tries to apply the reverse of the patch to the old blob. change it to run the patch (_not_ reversed) on the old blob and then swap the arguments to got_diff3_merge which gives us the correct reverse merge of the diff. while here add a test case too. reported by naddy, discussed with and ok stsp@
do not require local author info during 'got rebase'
My commit to reset committer info during rebase was too strict in some use cases. Even when simply forwarding a branch the rebase operation could now fail if GOT_AUTHOR is not set. To fix this, fall back on existing commiter information if no author is configured. And try to obtain author info from Git config in case GOT_AUTHOR is not set. Problems reported by Mikhail.
portable: add repo version to main string
When compiling got-portable from source, outside of an official release tarball, it's often helpful to know which commit the binary was built from, especially for diagnostic purposes. This adds an extra hook to AC_INIT to derive whether -portable is being built in-tree or via a release tarball.
fix name clash in gotwebd
Rename GOT_PACK_NUM_TEMPFILES in gotwebd, since it clashes with a name already used in lib/repository.c. ok tracey
tog: reset view->offset when clearing log view state
Don't move the selection cursor due to a bogus offset after closing child views following use of 'B', C-l, and backspace log view key maps. ok stsp@
tog: use view->resize idiom to ensure log is populated
Replace view->mode == TOG_VIEW_LOG checks for requesting commits to populate the log view with calls to view->resize(). ok stsp@
tog: populate new child view log lines when switching split
When switching a child log view from a h- to a v-split, new log lines are empty. Rather than (mis)trace height and (not) call request_log_commits(), let resize_log_view() do the math and request commits if needed to draw new lines. ok op@
got_repo_pack_fds_close: don't close(0)
got_repo_pack_fds_close will try to close all of the GOT_PACK_NUM_TEMPFILES fds, even the ones that didn't manage to get a value from got_opentempfd(), which would result in a close(0) if we do not initialize to -1 here.
Correctly track if we sent more data since the last time we looked.
With the narrow scope of bytes_sent_cur it would always be zero, and we would always update progress. Found by llvm's scan-build (Dead store). OK stsp
portable: MacOS: export env from configure
Compiling -portable on MacOS directly would never have worked, as the environment was only being set when run under CI. Move these checks into configure.ac so that they propagate out to make, etc. Noticed by cjones on IRC.
portable: remove stray .orig files
These shouldn't have been commited, and probably predate when the .gitignore file was updated to filter out .orig files.
portable: gotwebd: add headers to EXTRA_DIST
Add the header files under gotwebd to EXTRA_DIST so that they're included in the distribution tarball.
portable: update READMEs with release info
Document how to release a new `-portable` version.
portable: explain how to sync/update -portable
Add a section to the README files explaining how -portable is maintained.