diff options
Diffstat (limited to 'NEWS')
-rw-r--r-- | NEWS | 46 |
1 files changed, 43 insertions, 3 deletions
@@ -1,10 +1,10 @@ -GNU Pies NEWS -- history of user-visible changes. 2019-05-31 +GNU Pies NEWS -- history of user-visible changes. 2019-06-03 See the end of file for copying conditions. Please send Pies bug reports to <bug-pies@gnu.org> or <bug-pies@gnu.org.ua> -Version 1.3.90 (git) +Version 1.3.91 (git) * New option --no-init @@ -38,7 +38,41 @@ contains redirections, pipes, etc. E.g. * Improved cyclic dependency diagnostics -* Fix a bug in 'env' statement +* New 'env' statement + +The 'env' statement has been re-implemented as a compound statement. +It can contain the following sub-statements: + +** clear yes +Clears the environment + +** keep NAME +Keeps the variable NAME when clearing the environment. Implies +"clear yes". NAME can be a globbing pattern, in which case all +variables matching the pattern are retained. + +** set "NAME=VALUE" +Sets the environment variable for the component. VALUE is subject +to variable expansion. + +** unset NAME +Unsets the variable. NAME can be a globbing pattern, in which case all +variables matching the pattern are unset. + +Example: + + env { + clear yes + keep PATH + keep MANPATH + keep "LC_*" + set "MANPATH=$MANPATH${MANPATH:+:}/usr/local/man" + } + +* Legacy 'env' statement. + +Support for the old one-line syntax of "env" is retained for +backward compatibility. Previous versions applied unnecessary word splitting if given a single argument. This is now fixed, so that e.g. the following @@ -47,6 +81,12 @@ X to have the value "foo bar": env "X=foo bar" +* New environment variable available in commands started from return-code + +Programs started via "exec" statement in the "return-code" block +obtain the PID of the master pies process in environment variable +PIES_MASTER_PID. + Version 1.3, 2016-10-01 |