Commit Briefs

96c344dd87 Thomas Adam

portable: release 0.116 (tags/0.116)


581cb4e892 Thomas Adam

bump version number


0f17716a31 Thomas Adam

CHANGES for 0.116


43976c9bc0 Thomas Adam

sync dist file list





97c63ac4bc Thomas Adam

add missing casts to ctype function arguments in gotsys parse.y

spotted by op@


46fa6498d5 Thomas Adam

add support for notifications to gotsysd and gotsys.conf

gotsys.conf now supports email and HTTP/JSON notifications ok op@


2668ec1c3f Thomas Adam

fix gotsysd behaviour when the anonymous user is removed from gotsys.conf

The gotsys-useradd process would run into a bogus error regarding an invalid user name "anonymous" instead of locking the anonymous user account as expected. Add test coverage.



1455159161 Thomas Adam

rename test "large loose objects" to "large files"

We might have more large file test cases eventually. And the existing test involves packing the loose objects. So the former name was not ideal.


bcbad685e6 Thomas Adam

fix off-by-one during deltification in maximum stretch size calculation

Fix an off-by-one which causes invalid deltas to be written when common file sections exceed the maximum size which can be represented in a base-copy delta operation. This bug causes an invalid pack file to be written which neither gotadmin nor git will index successfully. Add a test which triggers the problem: got-index-pack: delta application result size mismatch: \ actual: 65536 expected: 16777216: bad delta ok op@


873d09e09f Thomas Adam

show expected and actual sizes when delta application fails

ok op@


ef7196ff92 Thomas Adam

avoid clobbering earlier errors in got_delta_apply and got_delta_apply_in_mem

ok op@


593303ab69 Thomas Adam

fix more missing resets of file position to zero after truncating files

ok op@


2b02ed351e Thomas Adam

reset file position when reusing per-repository temporary files

When reusing a temporary file, do not forget to reset its file position to zero. Otherwise, opening multiple raw objects in a row can fail during delta application with an unexpected file size reported by stat(2). Problem reported by Aaron Lin Problem reproduced and fix verified with a repository provided by Aaron. I have unsuccessfully tried to write a regression test for this. ok op@



46ed2a07cb Thomas Adam

fix gotd reload when /etc/gotd-secrets.conf is used

When sending the configuration to the newly reloaded gotd process we must send the path to the secrets file if it is being used. Otherwise, the new process will die with "unexpected amount of data received in imsg" errors. Test coverage will be added later as part of some new gotsysd tests which I have in progress.


5400b2df83 Thomas Adam

fix 'gotctl reload -s secrets' failing once gotd has failed to reload once

Reset reload secrets state on reload failure, such that the next reload attempt will not be rejected with an 'unexpected imsg' error.


d8c5a49979 Thomas Adam

forbid the '$' and '#' symbols in gotsys.conf reference names

These symbols are also part of configuration file syntax and should therefore be avoided.


c686c19fa4 Thomas Adam

update gotwebd favicons to show the smiley fish only




076101f2df Thomas Adam

introduce gotsys_ref_name_is_valid()

We need to enforce additional restrictions on reference names specified in gotsys.conf in order to prevent escaping to arbitrary gotd.conf syntax. Add test coverage.