CVSROOT:        /cvs
Module name:    ports
Changes by:     [email protected]    2025/04/23 09:43:26

Modified files:
        devel/got      : Makefile distinfo 
        devel/got/pkg  : PLIST-main PLIST-webd gotd.rc 
Added files:
        devel/got/pkg  : DESCR-sysd PLIST-sysd gotsysd.rc 
Removed files:
        devel/got/patches: patch-gotd_repo_write_c 
                           patch-gotd_session_read_c 
                           patch-gotd_session_write_c 
                           patch-lib_repository_c 
                           patch-libexec_got-fetch-pack_got-fetch-pack_c 

Log message:
update devel/got to 0.111

Add a new sub-package for gotsysd.

Add reload support to the gotd rc.d script. This will only work with
configuraton files at their default locations. If using other locations
the "gotctl reload" command must be run manually with -c and -s flags.

gotwebd now needs RUN_DEPENDS on devel/got,-main since it runs binaries
installed by the got package. The /var/www/bin/gotwebd directory is no
longer used and can be removed.

gotwebd now runs as the _gotwebd user by default, not "www". The user
"wwW" can still be set in /etc/gotwebd.conf if desired.

gotwebd no longer requires repositories to reside in the chroot.
The repos_path directive in /etc/gotwebd.conf now requires an absolute
path, rather than a chroot-relative path.
The default repository path, /var/www/got/public, remains unchanged.
To make gotwebd start up out of the box, create this directory during
installation of the gotwebd package, mode 750, with the default owner
being the _gotwebd user. This allows su -m _gotwebd -c "got init foo.git"
and similar commands to work. At run-time the effective mode is 550 since
gotwebd uses unveil(2) to impose read-only access to repositories on itself.

When serving repositories with both gotd and gotwebd, the recommended
ownership of repository directories is _gotd:_gotwebd with mode 750.
Unlike gotd, gotwebd lacks authentication at present. Private repositories
must be hidden via the respect_exportok mechanism in gotweb.conf(5). This
situation will be improved in a future release.

The detailed changelog follows:

- introduce gotsysd: configure gotd servers by committing to gotsys.git repo
- make gotd run 'gotsys check' on gotsys.conf commits before accepting them
- make gotd run 'gotsys apply' when the gotsys.git repo receives changes
- add a missing malloc failure check to gotd's repo_write process
- make got clone/fetch work against Git servers which do not speak English
- stop processing more messages upon error in gotd repo_write process
- close file descriptors passed to gotd_imsg_compose_event() on failure
- potential fix for use-after-free in lib/repository.c's match_packed_object()
- make gotd return an informative error when the connection limit is exceeded
- in gotctl info, display the time when a client connection was created
- add reload support to gotd, triggered via 'gotctl reload', not via SIGHUP!
- test S_ISREG in parse_ref_file() explicitly rather than via getline(3)
- release ref-file lock when fstat fails in parse_ref_file()
- do not treat unhandled signals as a fatal error in gotwebd
- fix an edge case of tog spinning when 'B' is pressed in log view
- stop using got_repo_map_path() in gotwebd to fix spurious realpath(3) errors
- avoid creation of pack_fds array when not needed, saving file descriptors
- gotwebd now runs as the _gotwebd user by default, rather than "www"
- gotwebd can now serve repositories outside the /var/www chroot directory
- the gotwebd.conf repos_path directive is no longer relative to the chroot
- get rid of the gotwebd-specific libexec helpers in /var/www/bin/gotwebd
- improve gotwebd behaviour when sending data to already disconnected clients
- plug some memory leaks in got-send-pack and got-fetch-pack
- fix got-fetch-http performance when server sends chunked HTTP responses

ok op@

Reply via email to