Commit Briefs

Thomas Adam

fix gotd notification test failures due to missing shell quoting

The expected output generated by test scripts was wrong on days with a single-digit date. Found by Omar's regress builder. ok op@


Thomas Adam

regress: use seq instead of jot

This is just for -portable since jot is not always available. ok stsp@



Thomas Adam

remove trailing whitespaces


Thomas Adam

got.1: escape Eq since it's a GNU roff macro

`.Op Fl Eq' gets rendered as [-] with groff because Eq it's a macro. Escape it to get it rendered correctly. Discussed with bentley. Reported by casaca on the IRC channel, thanks!


Thomas Adam

initial documentation for the got-notify-http json payload

committing on behalf of op@, ok by me


Thomas Adam

portable: netbsd: add stdarg for enter_chroot

stdarg.h is required on NetBSD for variadic definitions.



Thomas Adam

portable: gotd: update for session_{read,write}.c

gotd's session.c file has been split in two, so update the sources to accommodate this change.




Thomas Adam

add test_tag_changed() for got-notify-http

at the moment it is indistinguishable from the created tag.


Thomas Adam

got-notify-http: handle new tags


Thomas Adam

remove trailing whitespaces



Thomas Adam

http_notification.sh: add a testcase

add test_branch_created(). at the moment this is not different from a "normal" commit notification but it'll change in the future and it's handy to have it for an upcoming branch removed notification.


Thomas Adam

got-notify-http: add a type:commit field in the json

will help to differentiate these notification objects from the others.


Thomas Adam

small man page fix, spotted by op@


Thomas Adam

make 'got status' display interrupted rebase, histedit, and merge operations

When an operation is interrupted add a trailing message to status output which displays the operation and branches involved. This information will be useful when diagnosing problem reports and it helps new users with contextualizing multi-operation work tree state. ok op@


Thomas Adam

man nits; found with mandoc -Tlint


Thomas Adam

forgot to unveil the log message file passed to got commit -F

found by op's regress builder



Thomas Adam

got-notify-http: refactor jsonify()

To support the other types of notifications, we can't just peek at the first byte and decide wether it's a short or long format. Refactor the parsing so that there's one main entrypoint, jsonify(), that calls jsonify_comment() or jsonify_comment_short() depending on the format of the line. Other "line types" will be added as a follow-up to support the other notification types.


Thomas Adam

fold some long lines


Thomas Adam

got-notify-http: change the layout of the json

Split the author/committer in sub-fields, rename author -> committer in the short format parser and cache the author for the long format in case it's the same user as the committer. Put a copy of the first line of the commit message in the "short_message" field. There's some redundancy now, but it's to make consuming easier. ok stsp@