-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog-v0.12
314 lines (215 loc) · 10.6 KB
/
ChangeLog-v0.12
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
0.12.6.4:
Tiny fixes all over the place especially the global environment dir;
Renamed del_env shell function to env_del;
Use sub-directories for service options/environment files;
Improved sv-shutdown to better handle time(out), create nologin file and log
shutdown action to syslog(2);
Optimizes service dependency look up (rs);
0.12.6.3:
Fixed restart service command--broken in 0.12.5--by initializing a variable;
0.12.6.2:
Removed all the code redundancy in tmpfiles;
Fixed init-stage {reboot,shutdown} action when using s6;
Added safety system {halt,reboot} into s6 init-stage;
Fixed command line options to sv-shutdown when called as SysV utility;
0.12.6.1:
Tiny fix for s6 (v2) init-stage; and tiny init-stage clean up; tiny fix when rs
binary is called as rc.
0.12.6:
Added some bits to warn users to update the dependency cache when a service was
modified;
Make `rc' alias work again especially with `single' runlevel;
Make `rc' compatible runlevel work again with `softlevel={single|nonetwork}'
kernel command line argument on Linux;
Synced sv-shutdown to v0.12.5 (was out of date);
Support SysVinit compatible {halt,poweroff,reboot,shutdown} alias with:
- reboot default to reboot;
- poweroff default to poweroff;
- halt default to halt;
- shutdown default to single runlevel (/etc/nologin is not created);
as the default behaviour of SysVinit utilities;
Added sv-shutdown(8) manual page.
0.12.5:
Fixed setting up configuration script for svlogd(8) because it does not accept
the script as command line arguments (like daemontools* ro s6);
Added ability to update dependency list instead of rebuilding each time when a
new service is added;
Added support for scan service command or using `rs scan SERVICES' instead;
0.12.4.1:
Fix setting up PATH by using SV_LIBDIR and not SV_SVCDIR, so that, not path
beginning with SV_SVCDIR will be expanded in PATH environment variable.
Added svc_sig() shell function utility to send SIGNAL to daemon services
instead of re-writing the same piece of code *ad nauseam*;
SERVICE ADDIDION:
SUPERVISION/SERVICES: npcd, snmptrapd, spawn-fcgi.{lighttpd,nginx};
0.12.4:
Added ability to start daemons with runscript services when fghack(8) fails
to keep daemons in the foreground (see supervision(5));
SERVICE ADDIDION:
RUNSCRIPT/SERVICES: nginx, nrpe;
SUPERVISION/SERVICES: rrdcached;
0.12.3:
Added support to SVC_ST{ATRED,OPPED}_COMMANDS in addition to SVC_COMMANDS
for more control; use . instead of source for shell compatibility.
0.12.2.6:
Added support per service wait up/down delay setup;
Minor fixes:
- do not start the init-system related services when depending on localfs;
- use other LOG_PRE_{CMD,OPTS} for log directory instead of PRE_{CMD,OPTS};
- fix SV_LIBDIR setup in sv-config (0.12.2.4 move to sbin sub-directory);
SERVICE ADDITION:
SUPERVISION/SERVICES: php-fpm, postgresql;
0.12.2.5:
Added a tiny utility for waiting files for efficiency; properly wait
supervisor setup when booting; minor fixes to {dhcp,wpa_supplicant}
services.
0.12.2.4:
Fix a segmentation fault due a double free(3) call in svc_stage();
Added support to SystemV `service SERVICE COMMAND' (see supervision(5));
Separate binary files to /{,s}bin in $SV_LIBDIR (see supervision(5)) for
easy administration.
0.12.2.3:
Bug fix of v0.12.2.2: last `rs SERVICE start' fix broke service startup
handling because of using fork(3) to start new services (which was causing
shared memory to be changed).
0.12.2.2:
Build a deptree to avoid segfault due to a cyclical dependency when
using `rs SERVICE start';
Fix cyclical dependency in dhcp service;
0.12.2.1
Fix zap service command.
0.12.2:
Miscellaneous bug fixes (mainly false positive service start failure for
supervision services);
Support restart LSB command support for supervision services
(/etc/sv/SERVICE/run restart or rs SERVICE restart would work as expected);
Support reload LSB command definition for runscript and supervision
services (previously only a supervision backend reload command was used);
Support device_info helper again on Linux platform to reduce code duplication;
SERVICE ADDITION:
SUPERVISION: apache2, mysql, libvirtd, virtlo{ck,g}d
RUNSCRIPT: libvirt-guests, vmware
0.12.1.2:
Moved file locking to child process for efficiency; removed caching dependencies
files; and tiny miscellaneous fixes (nonetwork service instances.)
0.12.1.1:
Miscellaneous fixes:
Do not save a cachefile for stage-3 as this would result in restarting
everything before shutdown!
SERVICE ADDITION:
SUPERVISION/SERVICES: dhcpd (splited from dhcp);
0.12.1:
Merged set/clean up shell functions for supervision and runscript services;
meaning that pre() is now named start_pre(), post() is now named stop_post();
log_pre() is renamed log_start_pre() and log_post() is now renamed log_stop_post().
And thus supervision services support a start_post() and stop_pre() shell
functions! So splitting services like udevadm to complement udev is now
superfluous and unnecessary. This noticeable change was necessary to ease
service creation and maintainability. So, the old supervision-functions API
was bumped to a new major number; the old pre() and post()... shell functions
are no longer supported.
0.12.0.1:
Miscellaneous fixes:
Moved CGroup bits to cgroup-functions and thus fix cgroup-release-agent path
for hardened kernels; and moved and duplicated device_info() shell function
to sv/{device-mapper,lvm,zfs} (broken with an OS_NAME conditional.)
Added early console font and keymap setup; and use a more sv/rdonlyfs.
SERVICE ADDITION:
SUPERVISION/SERVICES: dhcrelay;
0.12.0:
Added support to sysvinit compatible runlevels which is almost a stage
translation to {sysinit,boot,default,shutdown,reboot} and then...
{nonetwork,single} which required a few new stuff. See rs(8) for more
information.
0.12.0_rc4:
Optimized shutdown (stage-3) by removing yet other redundancies; now,
shutdown phase is as fast as boot up.
Added some usefull content to rs(8) manual page.
Miscellaneous fixes:
Optimize memory usage and alignment to avoid memory corruption with
{m,c,re}alloc(3) family syscalls in some use cases.
0.12.0_rc3:
Second major change (since 0.12.0_rc) is the removale of defining virtual
service by making symlinks. --This is oly used for service instances now.
Now, virtual service is done by defining SVC_PROVIDE for robustness.
Simplified greatly deptree generation by eliminating shell handling which
remove unnecessary complexity (300 lines removed) and improve performance
(4 shell executions). It's late for this... but it's greatly welcomed.
Sanitized shutdown phase (which had too many redundancy... some old code
was dormant in {rs,init-stage} which were entirely removed).
With the previous simplification, speed improved by 30% because parallel
start/stop became more optimal. And shutdown phase time is on par with
boot up with shutdown sanity clean up.
Miscellaneous fixes:
Dynamicaly allocate a deptree list, so that, init-sage stop will work as
usual (with new services scheduled in the right place);
0.12.0_rc2:
Schedule service start/stop for init-stage for {use,need} dependencies only
(performance improvements--{after,before} would be scheduled if present in
the init-stage). So, now, udevadm has to be manually added to stage-1 to get
a functionnal udev. --The time of lasy {after,before} scheduling is over.
Finshed SVC_OPTIONS refactorization by moving getty related bits to sv/getty
... and then renamed getty to getty-tty1 to avoid having no service entry in
SV_SVCDIR.
Miscellaneous fixes:
multiple `rs SERVICE add' was bogus;
0.12.0_rc:
Added another udev (udevadm runscript) service to populate dev in case udev is
used as a device manager; Added a safety OOM net in case of broken and cyclic
dependency definitions (stability fix); Fixed runtime environment setup (broken
with SVC_OPTIONS refactorization, so, unless SV_TERM was defined in the
configuration file, getty was getting only vt100 TERM environment variable.)
0.12.0_beta6:
Splited runscript service configuration files from sv/ to sv.conf.d/;
minor clean up and optimizations; important for broken 0.12.0_beta5
(init-stage was still using the old configuration file in sv/.opt/sv.conf).
0.12.0_beta5:
Moved main configuration file to SYSCONFDIR; added a safety for init-stage in
case daemontools(-encore) is used; important fix for broken 0.12.0_beta4.
0.12.0_beta4:
Install main manual page to section 5 to respect standard FHS;
Setup supervision environment only for supervision services;
Minors performance Improvements; minor fixes ({add,del} service
commands mainly); minor service fixes.
SERVICE ADDITION:
RUNSCRIPT/SERVICES: zfs-share;
SUPERVISION/SERVICES: cups-borwsed, zed;
0.12.0_beta3:
Merged {RS,SV}_SVCDIR (service directory) together for efficiency and clarity;
And thus, /sbin/rs lost the stage type command line argument (-r|--rs,-v|--sv).
There is no longer a /etc/rs.d or a (useless) /etc/service directories. Now,
look at sv/.stage-[0-3] directories for active services.
0.12.0_bata2:
Added missing configuration for runscript service (miscfs,clock,hostname);
Added alsasound runscript service;
miscellaneous minor fixes for dmcrypt.
0.12.0_beta:
Added since 0.12.0_alpha2:
Remove too many service start/stop redundency to improve performance (TODO);
tiny runscript services and init-stage tweaks to get the proper behavior.
0.12.0_alpha2:
Added since 0.12.0_alpha:
Fixed a nasty buffer overflow; and added better logging/debugging facility.
0.12.0_alpha:
Changed version numbering in favor of major.minor.revision;
Removed support for static /service/ (too difficult support);
(Removed ./RUN command support for supervision services);
Added init-system and services for init-system:
RUNSCRIPT/SERVICES: checkfs, clock, console, dmesg, hostname, kmod, dmcrypt,
kmod-static-nodes, localfs, mtab, networkfs, procfs, rootfs, swaps, swapfiles,
tmpfiles.{dev,setup}, lvm, raid, ipset, iptables, sysctl, device-mapper, zfs,
sysctl, pool;
SUPERVISION/SERVICES: xdm;
RENAMED SERVICES: squashdir to unionfs, tmpdir to tmpdirs, zram to zramfs;
SERVICE BEHAVIOR: install getty services using a virtual name instead to ease
service dependencies if need be; so, set the getty name or binary path in the
configuration file (default is agetty).
Version bumped sv-shutdown to be able to force reboot/shutdown in early boot
(for checkfs failure for example);
Version bumped /sbin/rs to better handle dependencies scheduling with a simple
scheduling algorithm which schedule services according to dependency; and take
care of dependencies handling instead of the internal shell environment;
Version bumped {fstab,mout}info to use almost the same code and to support '*'
cach all mountpoints;
Added a proper configure script for easy setup.
Added misc code and services to handle system initialization.