@@ -3,7 +3,7 @@ Change Log
33
44All relevant changes are documented in this file.
55
6- [ 4.16] [ ] - Unreleased
6+ [ 4.16] [ UNRELEASED ] - Unreleased
77---------------------
88
99### Changes
@@ -18,13 +18,37 @@ All relevant changes are documented in this file.
1818 systemd ` RemainAfterExit=yes ` , by Aaron Andersen
1919- Clear service conditions on ` initctl reload NAME ` to ensure dependent
2020 services are properly updated
21+ - Run service ` stop: ` and ` reload: ` scripts as non-blocking processes,
22+ preventing Finit from stalling on long-running helper scripts
23+ - Guard shutdown with timer watchdog to detect and debug shutdown hangs
24+ - Add ` ~ ` condition prefix to propagate reload from a dependency to the
25+ dependent service. E.g., ` <!~pid/netd> ` means not only a regular
26+ condition, but when ` netd ` reloads, restart this service too. Similar
27+ to systemd's directive ` PropagatesReloadTo= ` , but declared on the
28+ consumer side. Issue #416
2129
2230### Fixes
2331- Fix #464 : invalid user: group examples in cgroups.md
2432- Fix #466 : elogind path for Debian-based distros, by Jackie Liu
2533- Fix #467 : TTY services stuck in restart state after non-zero exit.
2634 Throttling logic introduced in v4.15 had duplicate checks causing
2735 infinite timer loop, and TTYs lacked default restart timeout
36+ - Fix #475 : clear pid condition on service collection to fix stale
37+ deps. When a service crashes (SIGKILL), the RUNNING → HALTED path
38+ bypasses STOPPING where ` cond_clear() ` is normally called, leaving
39+ dependents stuck
40+ - Fix #476 : dependents not restarted after SIGHUP reload of service in
41+ dependency chain. Add ` service_step_all() ` at end of reload cycle to
42+ guarantee convergence after conditions are reasserted. See also the
43+ new ` ~ ` condition prefix (above) to propagate reload to dependents
44+ - Fix reload of SIGHUP-capable services incorrectly disrupting their
45+ dependents. E.g., ` initctl reload syslogd ` would stop dbus, dnsmasq,
46+ etc. even though syslogd handles SIGHUP gracefully and its PID persists
47+ - Only remove managed pidfiles in service cleanup. For SysV services
48+ with ` pid:!/path ` , the pidfile belongs to the service itself and Finit
49+ should not delete it
50+ - Silence spurious cgroup warnings for short-lived processes where the
51+ kernel reaps the child before cgroup assignment completes
2852- Fix handling of already-mounted cgroups in ` cgroup_init() ` , can occur
2953 after switch_root or in container environments
3054- Improve cgroups documentation clarity, grammar, and examples
@@ -1941,6 +1965,7 @@ Major bug fix release.
19411965* Initial release
19421966
19431967[ UNRELEASED ] : https://github.com/finit-project/finit/compare/4.15...HEAD
1968+ [ 4.16 ] : https://github.com/finit-project/finit/compare/4.15...4.16
19441969[ 4.15 ] : https://github.com/finit-project/finit/compare/4.14...4.15
19451970[ 4.14 ] : https://github.com/finit-project/finit/compare/4.13...4.14
19461971[ 4.13 ] : https://github.com/troglobit/finit/compare/4.12...4.13
0 commit comments