Commit Briefs

Omar Polo

gotwebd: don't special case BLOB, BLOBRAW and RSS

shuffle some code to handle all the page types in the switch. ok tracey@


Stefan Sperling

avoid gitwrapper printing a warning when /etc/gotd.conf does not exist

gotd still requires the config file, of course, but gitwrapper must treat is as optional and remain silent if the file cannot be found.


Omar Polo

gitwrapper: execl() directly without fork()ing

Since we're going to unconditionally execute gotsh or git-*-pack, don't bother fork()ing and having the main process to wait(2), just execle()! ok stsp@


Omar Polo

fmt



Stefan Sperling

require gotsh to exist if the repository is listed in gotd.conf

ok op@


Omar Polo

some formatting fixes for gitwrapper.1

- new sentence, new line - use Pa where needed - move ENVIRONMENT before FILES


Stefan Sperling

add gitwrapper(1)

ok op@, tracey@ earlier version


Stefan Sperling

fix an off-by-one in got_serve_parse_command() canonpath allocation

ok op@, tracey@




Stefan Sperling

bump version number


Stefan Sperling

CHANGES for 0.86 (tags/0.86)


Omar Polo

gotwebd: reply with non-200 HTTP status code on error

ok tracey@


Omar Polo

gotwebd: provide gotweb_render_page() entrypoint for all pages

simplify gotweb_process_request more, handling all the pages inside the big switch. There's only one entrypoint for rendering the templates gotweb_render_page() that takes the page' content as argument. The only real difference is that gotweb_render_index() now skips directory entries which fails to handle. ok tracey@



Stefan Sperling

handle files changing into directories during 'got update'

problem found by naddy@


Omar Polo

gotwebd: handle short reads and timeouts

If a short read happens, or if all the fastcgi record to read don't fit in the buffer, gotwebd fails to continue reading and hits the timeout. If this happens before gotweb_process_request is called, it will crash in gotweb_free_transport since c->t will be NULL. This register the event with EV_PERSIST so fcgi_request is called again when there's more to read and guards gotweb_free_transport. It also makes spaces for the records as soon as they're successfully parsed. With lots of help from stsp ok stsp@


Omar Polo

dial: fix quoting for git-shell

Escape the path to the repository when connecting via SSH. This is needed if the path contains spaces, quotes or other "funny" characters, but also by git-shell which requires the argument to be surrounded by single-quote characters. Issue with git-shell reported by James Cook, fix based on an initial diff by stsp@. ok stsp@


Stefan Sperling

make diffing files which changed into dirs and vice-versa possible

Problem marked with a TODO comment by me ages ago and rediscovered by naddy@ ok op@


Omar Polo

clone.sh: fix copy-paste error

`got log' is ran twice against $testroot/repo so log-repo and log-repo-clone are identical. Instead, run `got log' on the clone repo the second time. ok stsp@


Stefan Sperling

support histedit fold operations which delete a file and then add it again

problem found by naddy@ ok op@


Stefan Sperling

fix gotd sending too large pack files in some cases

Make gotsh pass all have-lines sent by clients onwards to gotd, reducing size of pack files generated by the repo_read process. Problem reported by naddy@ ok jamsek


Todd C. Miller

Close the message template file before calling edit_logmsg().

Fixes a race condition on NFS where the file's modify time may change while the file is being edited, causing the editor to complain. OK stsp


Stefan Sperling

bump version number