Commit Briefs

Thomas Adam

portable: extend got_compat2 include guard

Extend the include guard to the whole file.


Thomas Adam

portable: configure: split out dependencies

Rather than assume all dependencies are required for all programs, split them out. This will make packaging easier, as well as splitting the code to use subprojects. Note that due to the use of config.h semantics, in most cases the got_compat.h header file is now at the top of the .c file it is included in, so that it can handle the system header inclusion properly.


Thomas Adam

portable: Makefile: add -Wno-pointer-sign

Ignore warnings about pointer-signedness. This may well get fixed upstream, but won't hurt to be left here, regardless.


Thomas Adam

portable: configure: use config.h

So that the command-line flags to CC don't get drowned out with copious -D flags, move this detection to config.h instead. Note that to reduce the code churn, the existing include/got_compat.h header file has been renamed, and the generated file replaces it, but with the contents of the original header file included. Eventually, we might want to move some od the logic in include/got_compat2.h into AH_VERBATIM() blocks, but for now, this is a good compromise.


Thomas Adam

bump version number


Thomas Adam

CHANGES for 0.85


Thomas Adam

sync distfile list



Thomas Adam

fix gotd sometimes reading reused deltas from wrong pack file

The reuse-pack is pinned but may change its cache slot while objects are being deltified. Refresh the pointer to the pinned reuse-pack before writing out the pack file, ensuring that reused deltas will in fact be read from the reuse-pack and not some other pack. Otherwise gotd may send a broken pack file, or hit an ERR_RANGE condition if the pack file which now occupies the pinned-pack's old cache slot is shorter. Which can trigger attempts to read beyond end-of-file which show up in the logs like this: gotd[37311]: repo_read /var/git/got.git: sending packfile: value out of range gotd[43877]: uid 1002: value out of range gotd[43877]: uid 1002: disconnecting


Thomas Adam

add xfail test for histedit folding of delete followed by add

If a file is deleted, then in modified form added again, folding should restore the file with its new contents. ok stsp


Thomas Adam

portable: regress: add back GOT_TEST_PACK

The definition for GOT_TEST_PACK went walkies during a previous merge conflict. Add this back.


Thomas Adam

portable: regress: remove sed wrapper

Now that the use of sed(1) in tests has been replaced with ed(1), the sed wrapper can be retired. There are existing tests which use sed, but they're modifying a stream, rather than using -i, so there's no portability concerns.


Thomas Adam

regress: replace "sed -i" with ed(1) for portable in-place editing

"sed -i" is fundamentally unportable. GNU and OpenBSD sed(1) treat the extension for the backup file as an optional argument and use "sed -i" for no backup file. FreeBSD sed(1) treats the extension as an obligatory argument and uses "sed -i ''" for no backup file. There is no single syntax that works for both. ok stsp op


Thomas Adam

portable: regress: drop setting LC_TIME

common.sh sets LC_ALL=C which makes this change unnecessary now. Patch from Christian "naddy" Weisgerber.


Thomas Adam

portable: regress: minor cosmetic cleanup

Drop the forcing of "command" when calling sed(1).


Thomas Adam

portable: regress: improve date wrapper

When looking for a suitable date wrapper, don't use the platform name, and rather use date(1)'s own parsing to choose BSD date, or gdate (GNU). Additionally, only declare the date() wrapper once. From Christian "naddy" Weisgerber


Thomas Adam

regress/commit.sh: tweak editor.sh for test_commit_prepared_logmsg

no need for sed (which doesn't change anything anyway), a no-op editor script is enough; the test ensures that the prepared log message is used. ok naddy@ stsp@


Thomas Adam

regress: override locale settings

ok stsp


Thomas Adam

don't pass -d to yacc

Patch from Josiah Frentsos, thanks!



Thomas Adam

gotd: Fix more double process names

Patch by Josiah Frentsos, thanks!


Thomas Adam

template: sync usage() with man page

`-o' was missing. Patch from Josiah Frentsos, thank you!


Thomas Adam

portable: set next version


Thomas Adam

portable: CI/README: update for coreutils

Mention that GNU coreutils is no longer required on *BSDs to run the test suite.


Thomas Adam

portable: regress: drop GNU date on *BSDs

Check if date(1) supports -r and fallback to gdate if that fails, via a shell-wrapper. From Christian "naddy" Weisgerber.