Commit Briefs

Thomas Adam

tog: lock mutex if leaving view_loop() on a script read error

ok stsp@


Thomas Adam

tog: tweak blame tog_view deallocation fix from 2ca2f982

Both view_close() and close_blame_view() are called from view_loop() irrespective of error, so only call these from cmd_blame() to ensure the tog_view structure is not leaked when open_blame_view() errors. ok stsp@


Thomas Adam

tog: blame regress and new test framework wait instruction

Basic blame view test required adding the WAIT_FOR_UI instruction to delay screen dumps till the ui has been completely rendered. This will also apply to future test cases such as limited log views and further blame test cases. ok stsp@


Thomas Adam

tog: rename regress test script envvar

As per stsp's idea: use a more descriptive name, and use the TOG_TEST_SCRIPT envvar both in tog.c and the test scripts. ok stsp@


Thomas Adam

tog: basic diff view test and fix hardcoded script path

ok stsp@


Thomas Adam

sync dist file list







Thomas Adam

remove dependency of gitwrapper, gotctl, and gotsh on object_parse.c

Move some functions from object_parse.c into hash.c. These functions either require hash.c code anyway or contain object ID implementation internals. Add a new file object_qid.c, for got_object_id_queue and got_object_qid. This new file must be linked to virtually every program.


Thomas Adam

remove dependency of gitwrapper on gotd/auth.c

Move gotd_auth_parseuid() from auth.c to parse.y as gotd_parseuid(), and remove auth.c from the list of source files required by gitwrapper.


Thomas Adam

remove dependency of gitwrapper on gotd/listen.c

Move gotd_find_uid_connection_limit() from listen.c into parse.y and remove listen.c from the list of source files required by gitwrapper.


Thomas Adam

significantly reduce the amount of code linked into gitwrapper

By moving got_serve_parse_command() from lib/serve.c into lib/dial.c as got_dial_parse_command(), we can significantly reduce the amount of symbols gitwrapper depends on indirectly. As a downside, gotsh now needs to link to dial.c. But it only uses the same parsing routine, and any other routines in dial.c would likely cause pledge violations in gotsh if used. No functional change.



Thomas Adam

portable: regress: enable tog tests

This enables running of the tog regress tests. Note that this is enabled before regress-cmdline, as regress-cmdline takes a while.


Thomas Adam

portable: linux: add libmd (ta/libmd-fixes)

On some systems libmd isn't explicitly implied, so detect this via pkg-config at configure time. Problem reported by @stsp



Thomas Adam

tog: plug tog_view structure leak on open_*_view() error

ok stsp@


Thomas Adam

remove outdated information from README


Thomas Adam

release tog_io regress mock term resources in main()

ok stsp@


Thomas Adam

update regress test info in README


Thomas Adam

make tog regress run with pledge active

ok jamsek


Thomas Adam

when aborting rebase/histedit/merge, unlink files added by merged changes

Otherwise we leave unversioned files behind in the work tree which may interfere with new attempts to rebase or merge the changes again. Problem found by + ok naddy@