aboutsummaryrefslogtreecommitdiff
path: root/NEWS
diff options
context:
space:
mode:
Diffstat (limited to 'NEWS')
-rw-r--r--NEWS202
1 files changed, 198 insertions, 4 deletions
diff --git a/NEWS b/NEWS
index 0c53fc9..265ca26 100644
--- a/NEWS
+++ b/NEWS
@@ -1,8 +1,202 @@
1GNU Pies NEWS -- history of user-visible changes. 2019-07-02 1GNU Pies NEWS -- history of user-visible changes. 2023-07-30
2See the end of file for copying conditions. 2See the end of file for copying conditions.
3 3
4Please send Pies bug reports to <bug-pies@gnu.org> or 4Please send Pies bug reports to <bug-pies@gnu.org>.
5<bug-pies@gnu.org.ua> 5
6Version 1.8.90 (git)
7
8* return-code statement accepts negations
9
10Negated status codes or signal numbers can appear in the argument
11list to the "return-code" command. The syntax is:
12
13 !0 any status code except 0
14 !EX_OK same as above
15 !SIGQUIT any signal except SIGQUIT
16 !SIG+10 any signal except 10
17
18For example, the following statement:
19
20 return-code (!0, !SIGHUP, !SIGQUIT) {
21 notify root;
22 }
23
24will notify root user if the program exits with any status, except 0
25or gets terminated with any signal, except SIGHUP and SIGQUIT.
26
27
28Version 1.8, 2022-08-13
29
30* New configuration keywords
31
32** sigterm SIG
33
34Available for use in "component" sections. This statement defines
35signal which pies should send to the running component instance in
36order to terminate it. Defaults to SIGTERM.
37
38* Fix the component shutdown sequence
39
40The shutdown sequence is determined taking into account dependencies
41between components, so that all dependent components are stopped
42before their prerequisite components.
43
44* Fallback log file
45
46Fallback log file is a place where pies writes out of band log messages,
47i.e. messages about not being able to open syslog socket or send logs
48to it. Regular log messages are diverted to this file if syslog was
49requested, but cannot be used because of a permanent error.
50
51* Bugfixes
52
53** Fix piesctl config reload
54
55** Fix configuration preprocessing.
56
57** Varios fixes in REST API server.
58
59Version 1.7, 2022-01-02
60
61* Changes in configuration preprocessing
62
63** Each included file is preprocessed separately.
64
65The built-in preprocessor is removed. The #include and #include_once
66statements are now regular configuration statements. Any files
67included as a result of #include or #include_once are preprocessed
68separately. This differs from prior versions, were all includes were
69expanded first, the obtained material passed to the m4 and the
70resulting output was then parsed.
71
72This means that:
73
741. The mess with two preprocessors (built-in and external) is now
75gone.
76
772. Macros defined in a source file don't pollute the namespace of
78another sources.
79
803. Error locations can be accurately determined.
81
824. Preprocessor can emit forceful diagnostics (see below) to properly
83identify erroneous or otherwise suspicious constructs.
84
85** The `pp-setup' file is gone.
86
87By default, the preprocessor is started as `m4 -s -P' with additional
88set of -I options and eventual -D or -U options if these are used in
89the command line of pies. Apart from this, no additional set up is
90performed.
91
92** The precedence of -I options is fixed
93
94The -I options are placed in the m4 command line before the options
95that configure the default search path.
96
97* New forceful diagnostics statements
98
99** #warning "TEXT"
100
101Emits warning.
102
103** #error "TEXT"
104
105Emits error message. Further parsing continues, but will end with
106failure.
107
108** #abend "TEXT"
109
110Emits error message and stops further processing immediately.
111
112If `#error' or `#abend' is encountered, the effect is the same
113as if syntax error has been detected. If it occurs at pies
114startup, the program will terminate abnormally. If it occurs as
115part of the reload sequence in a running instance of pies, the
116configuration file will be rejected and old configuration will remain
117in effect.
118
119Version 1.6, 2021-07-07
120
121* Selecting preprocessor from the command line.
122
123Two command line options are provided to select the preprocessor to
124use instead of the default m4. The --preprocessor=COMMAND option
125instructs pies to use COMMAND as preprocessor. The --no-preprocessor
126option disables the use of the external preprocessor.
127
128The new command line options are available both in pies and in the
129client program piesctl.
130
131* piesctl: fix order in which configuration files are examined
132
133As stated in the documentation, program-specific configuration
134file piesctl.conf takes precedence over pies.conf.
135
136* Fix reloading of the configuration files.
137
138* Fix compilation with --disable-sysvinit
139
140Version 1.5, 2020-12-14
141
142* Detect if pies is started from docker
143
144This makes the --no-init option unnecessary.
145
146* When running with PID 1, install SIGCHLD handler early
147
148This is to make sure the exited preprocessor command is cleaned up
149properly.
150
151* Fix cyclic dependency detection
152
153* New component flag: expandenv
154
155The "expandenv" flag instructs pies to parse the command line
156and to expand any references to environment variables within it
157as the Bourne shell would have done it. This allows for expanding
158the environment variables without the overhead of actually running
159the shell.
160
161This flag is incompatible with the "shell" flag. When both are used,
162the preference is given to "shell" and a warning message to that
163effect is issued.
164
165* Component standard stream redirection rewritten from scratch
166
167In particular, redirecting stdout/stderr to syslog no longer requires
168starting an auxiliar process.
169
170* The component.facility configuration statement is withdrawn
171
172To specify a particular facility, use the fully qualified
173facility.priority argument to the stdout or stderr statement, e.g.:
174
175 stderr syslog local1.err;
176
177* New configuration statement syslog.dev
178
179The statement configures the socket to communicate with the syslog
180daemon. Its argument is either the file name of the local socket
181or the IP[:PORT] specification, e.g.
182
183 syslog {
184 dev 172.31.255.252;
185 }
186
187* Global env section
188
189The "env" section appearing in global context modifies the environment
190for the main pies process. This modified environment will be
191inherited by all processes started by pies in the course of its normal
192operation.
193
194* New control endpoint /alive
195
196HTTP response to GET /alive/PROG reflects the current state of the
197component PROG: 200 if it is running, 503 if not, and 404 if there's
198no such component.
199
6 200
7Version 1.4, 2019-07-02 201Version 1.4, 2019-07-02
8 202
@@ -203,7 +397,7 @@ part of Mailfromd (http://mailfromd.software.gnu.org.ua).
203========================================================================= 397=========================================================================
204Copyright information: 398Copyright information:
205 399
206Copyright (C) 2009-2019 Sergey Poznyakoff 400Copyright (C) 2009-2023 Sergey Poznyakoff
207 401
208 Permission is granted to anyone to make or distribute verbatim copies 402 Permission is granted to anyone to make or distribute verbatim copies
209 of this document as received, in any medium, provided that the 403 of this document as received, in any medium, provided that the

Return to:

Send suggestions and report system problems to the System administrator.