CHANGES for 0.90

rate-limit redundant pack cleanup progress output

fix cleanup progress reporting output

show the path of a lock file when locking it fails before: gotadmin: lockfile timeout after: gotadmin: lockfile timeout

simplify gotwebd' server matching Currently, if there is not a match on the server name, it attempts to match the "subdomain" against the server names, and fall back to the first server defined. The server name is taken from the SERVER_NAME fastcgi' parameter, the subdomain extracted from HTTP_HOST. Keep only the SERVER_NAME matching, but still use the first server defined if there's no match. Fix the manpage documenting how matching works and drop the lie about SNI as gotwebd doesn't do TLS but just looks at what the upstream http server decided. ok stsp@

gotd: wait asynchronously for children termination Instead of the current kill() + waitpid(WNOHANG), manage the subprocesses in a separate queue and handle SIGCHLD. A timer is installed to ensure that misbehaving subprocesses are still killed. Fixes the current "child PID 0 terminated" logs due to races with waitpid(). Issue initially reported by Josiah Frentsos. ok + tweaks stsp@

add test coverage for tog displaying a symlink

Fix for cc1: warnings being treated as errors /home/got/src/got/tog/tog.c: In function 'draw_tree_entries': /home/got/src/got/tog/tog.c:7307: warning: comparisons like X<=3DY<=3DZ do = not have their mathematical meaning

add kill_repo_proc() similarly to the other kill_*_proc() ok stsp@

reword user-facing error message which mentions "fast-forward" For user-facing messages it is better to avoid technical jargon like this and instead spell out what the fast-forward situation implies: that one branch is already based on another. ok jamsek


missing semicolon... sigh I can't assume I can blindly add one simple line.

move gotd_child_proc to gotd.c make it opaque since it's unused outside of gotd.c. While here, drop the unused `nhelpers' field. ok/tweak stsp@

tweak wording in got.1 which suggested that use of rebase was mandatory

explain why the first 'got clone' example in got.1 will often fail

provide a 'got merge' example in the EXAMPLES section of got.1

prevent 'got merge' from creating commits on branches outside of "refs/heads/" ok op, james

make installation prefix info more visible in README

make 'got add' more forgiving about unversioned paths on the command line When users run 'got add *' the shell may pick up already versioned files and trigger errors about paths being in an unexpected status. Expand the check which previously only allowed files in added status to be double-added to cover the following status codes which are all safe to ignore: A M C m This should make bulk additions of files a bit easier in most cases. Problem reported by robert@ ok jamsek

expand test coverage of test_double_add a bit more

Implement fast-forward merges. Split part of got_worktree_merge_prepare into a new function, got_worktree_merge_write_refs, since that part doesn't make sense in the fast-forward case. ok stsp@

extend test_add_multiple to cover got add -R * behaviour

make 'got tree /' succeed in a work tree Previously, this command would trigger an error: got: /: bad path

update gotd_proc_names after session process unveil changes fixes "proc (null)" appearing in gotd logs

gotwebd.conf: unbreak max_repos_display 0 in 1a0c81fb61 I've added a range check too strict for max_repos_display, as zero is allowed and means "show all the repositories".