Commits


portable: regress: add test stage to all runs Whenever a CI change is made, also run the test suites. This is enabled for just Ubuntu and FreeBSD for now.


portable: regress: improve sed handling When massaging sed command strings, to handle the differences between "-i ''" not meaning the same thing on non-BSD systems, this previously used a bashism to determine the positional arguments. Instead, defer to using a loop which doesn't rely on bashisms.


portable: regress: remove backticks from string Remove erroneously-placed backticks when describing a lack of GNU coreutils.


portable: regress: make OS-detection sh-compatible Don't rely on $OSTYPE being available, which it isn't in strict POSIX mode. Ubuntu's sh is often alised to dash, and hence this fails. Instead, default to using the output from 'uname'.


portable: ci: add ubuntu Add Ubuntu as a dedicated CI environment. By default, sh is aliase to dash which often provides interesting challenges for portability, so making this work here is a good thing as mistakes will be spotted earlier.


portable: regress: harden coreutils check When running tests on non-Linux systems, it was just assumed that GNU coreutils had been installed. This meant that the wrapper commands for date/ln on those systems always had gdate and gln installed. Rather than assume that, check to see if the GNU coreutils versions as present, and if not echo a warning.


portable: regress: set PLATFORM when running direct PLATFORM is populated when running via `./configure && make` but this isn't guaranteed if an individual test is run directly, such as `regress/cmdline/tag.sh`. In such cases, PLATFORM will be empty, but we still want to use it. Since we test for non-linux values, only set PLATFORM if we're running on Linu so that the correct commands are used.


portable: remove stale comments Remove comments which are no longer required.


tog: implement +/- keymaps to resize the focussed split Increase/decrease the currently active split. New dimensions persist for the tog session, irrespective of subsequent closures and new child views. suggested by and ok stsp@


tog: implement global 'S' key map to switch split mode If in a vertical (horizontal) split, switch to horizontal (vertical), and make new split mode persist. ok op@


use got_privsep_flush_imsg instead of reinventing it ok stsp@


get rid of unneeded recv_imsg_error calls got_privsep_recv_imsg users don't need to bother to look whether the imsg type is GOT_IMSG_ERROR because got_privsep_recv_imsg already takes care of that and turns GOT_IMSG_ERROR into `struct got_error's automatically. ok stsp@


rework got_privesp_recv_tree to use got_privsep_recv_imsg ok stsp@


portable: delta_cache: remove includes Remove those includes which are searched for portably.


fix buf_alloca error handling Left-over from how OpenRCS/OpenCVS do error handling. OK stsp@


regress: use bs=1M for dd, not bs=1m; fixes -portable test failure on ubuntu GNU dd only accepts upper-case letters for the size units.


delta_cache.c needs to include <stdint.h>; unbreaks -portable build on ubuntu


add signer_id option to got.conf(5) Setting this option will cause 'got tag' to sign all created tags using the SSH key, unless overridden by the -s flag. ok stsp@


portable: regress: rework date command for Ubuntu Don't rely on '-r' for date as it's not consistent across linuxses. Instead, expand the variables required and use '-d'. OK thomas@


portable: regress: fix fetch compilation Add missing files for testing fetch.


portable: maintscripts: reverse cherrypicks When cherry-picking commits from main, do so in reverse order so they match more linearly with main.


mention Austin Appleby's public domain code for completeness


mention additional copyright holders in got(1)


add two more authors how I missed during my sweep of commit history


Xr gotweb(8) from got(1)