Commits


gotwebd: add a some buffering This adds some buffering to fcgi_gen_binary_response so that we don't end up sending too many (very) small fastcgi records. While here also make fcgi_send_response non-void and make its errors "sticky". ok tracey@


gotwebd: switch some HTML IDs to classes HTML IDs are meant to be unique across the page. While here fix two small errors in the generated HTML (one missing closing div and one extra.) ok tracey@


gotwebd: wrap __packed around __attribute__ Needed for -portability reasons. OK op@


portable: provide sockaddr-linux implementation Someof the socket code has been factored out of gotwebd and put centrally so that platform-specific targets can be created, without the need of heavily modifying the central socket code to contain numerous ifdefs.


remove the last remaining use of sin_len from gotwebd I don't think this assignment to sin_len is needed at all, because sin_len is already being set via got_sockaddr_inet[6]_init() during the configuration stage. Tested successfully on both fcgi socket types (unix / tcp).


tog: drop regex for line types to colour the diff view ok stsp@


avoid allocating too many errors in cmd_info got_error_path uses get_custom_err to get a statically allocated error allocated on a buffer that's used a ring. This is nice and simple, but the drawback is that thees custom errors shouldn't be used "for too long" because they might get overwritten later. cmd_info is one offender: change it to store a "simple" error and later re-use it to construct the per-path error. OK and tweaks stsp@


add some TODO items for gotwebd


tweak tag_test_create to detect the issue fixed in previous commit


fix "got tag" not tagging the work tree's current branch by default found by jrick


tog: keymaps to jump to next/prev file/hunk in the diff Add () and {} key maps to navigate to the previous and next file or hunk in the diff. This required changing Got's diff API to collect line type metadata in addition to the line offsets already produced as prompted by stsp. ok stsp@


sync files from diff.git 9343b92549173e00690f24756a633423770f56d7


make gotwebd start up without a config file ok tracey


revert previous commit to sync with diff.git changes; it broke the build ../lib/blame.c:344:11: error: implicit declaration of function 'diff_atom_hash_update'


sync files from diff.git f400825bc668466d9fc593470514d6e69ddfc5ff


sync files from diff.git cd9ef01a441e0ecfd499bf907c15a2878f7e0ee2


locate_hunk: set mangled earlier for clarity suggested by stsp@; no functional change.


patch regress: unify some tests


allow for ignore whitespaces when matching the hunk


gotwebd: avoid large allocation per fcgi record while here also wrap fcgi_send_response to make sure we don't end up trying to send a fcgi record bigger than allowed. ok tracey@


sync files from diff.git 3a15e1807a369c0a7827363eca22c9f1a8598d9c Rather than realloc in fixed-sized blocks, use the 1.5 * allocated scheme when growing the array. This produces fewer allocations and up to 3x speedup on large diffs. ok stsp@


tog: add n{G,g} key map to jump to line n like less(1) Available to all views; for example, 99g will navigate to line 99 in the file if in a blame view or the 99th commit if in a log view. Includes improvements suggested by naddy and stsp. ok naddy@


remove a tog blame TODO item which has been implemented


remove 'author' TODO items; these have been implemented


add two more TODO items