Thank you for the cd -@ / O_XATTR support!! Lionel
On 27 February 2014 14:12, Chet Ramey <chet.ra...@case.edu> wrote: > Introduction > ============ > > The first public release of bash-4.3 is now available with the URLs > > ftp://ftp.cwru.edu/pub/bash/bash-4.3.tar.gz > ftp://ftp.gnu.org/pub/gnu/bash/bash-4.3.tar.gz > > and from the usual GNU mirror sites. > > This tar file includes the formatted documentation (postscript, dvi, html, > and nroffed versions of the manual pages). > > Diffs from bash-4.2 are not available. > > Please use `bashbug' to report bugs with this version. It is built > and installed at the same time as bash. > > Installation > ============ > > Please read the README file first. > > Installation instructions are provided in the INSTALL file. > > New Features > ============ > > This is the third revision to the fourth major release of bash. > > This release fixes many outstanding bugs in bash-4.2 and introduces several > new features. The most significant bug fix is the reworking of signal > handling to avoid running signal and trap handlers in a signal handler > context. This led to issues with glibc, which uses internal locks > extensively and handles longjmps from user code very poorly. > > The most notable new features are the `globasciiranges' shell option, which > forces the pattern matching code to treat [a-z] as if in the C locale; > nameref variables and the changes to allow assigning, referencing, and > unsetting them; improvements to the `direxpand' option introduced in bash-4.2 > patch 29; and allowing negative subscripts when assigning and referencing > indexed array elements. > > There is one incompatible change between bash-4.2 and bash-4.3. Bash now > performs quote removal on the replacement string in pattern substitution > (${param/pat/rep}), since the shell treats quotes as special. If you > have to quote single quotes to get them to be treated literally, the shell > should perform quote removal on them. > > Read the file NEWS in the bash-4.3 distribution for a complete description > of the new features. A copy of the relevant portions is included below. > > Changes have been made to the Readline library being released at the same > time as bash-4.3, readline-6.3, so that Bash can be linked against an > already-installed Readline library rather than the private version in > lib/readline. Only readline-6.2 and later versions are able to provide all > of the symbols that bash-4.3 requires; earlier versions of the Readline > library will not work correctly. > > A complete list of changes between bash-4.2 and bash-4.3 is available in > the file CHANGES; the complete list is too large to include in this > message. > > Readline > ======== > > Also available is a new release of the standalone Readline library, > version 6.3, with its own configuration scripts and Makefiles. > It can be retrieved with the URLs > > ftp://ftp.cwru.edu/pub/bash/readline-6.3.tar.gz > ftp://ftp.gnu.org/pub/gnu/readline/readline-6.3.tar.gz > > and from the usual GNU mirror sites. > > Diffs from readline-6.2 are not available. > > The formatted Readline documentation is included in the readline > distribution tar file. > > A separate announcement listing the changes in Readline is being > distributed. > > As always, thanks for your help. > > Chet > > +========== NEWS ==========+ > This is a terse description of the new features added to bash-4.3 since > the release of bash-4.2. As always, the manual page (doc/bash.1) is > the place to look for complete descriptions. > > 1. New Features in Bash > > a. The `helptopic' completion action now maps to all the help topics, not > just > the shell builtins. > > b. The `help' builtin no longer does prefix substring matching first, so > `help read' does not match `readonly', but will do it if exact string > matching fails. > > c. The shell can be compiled to not display a message about processes that > terminate due to SIGTERM. > > d. Non-interactive shells now react to the setting of checkwinsize and set > LINES and COLUMNS after a foreground job exits. > > e. There is a new shell option, `globasciiranges', which, when set to on, > forces globbing range comparisons to use character ordering as if they > were run in the C locale. > > f. There is a new shell option, `direxpand', which makes filename completion > expand variables in directory names in the way bash-4.1 did. > > g. In Posix mode, the `command' builtin does not change whether or not a > builtin it shadows is treated as an assignment builtin. > > h. The `return' and `exit' builtins accept negative exit status arguments. > > i. The word completion code checks whether or not a filename containing a > shell variable expands to a directory name and appends `/' to the word > as appropriate. The same code expands shell variables in command names > when performing command completion. > > j. In Posix mode, it is now an error to attempt to define a shell function > with the same name as a Posix special builtin. > > k. When compiled for strict Posix conformance, history expansion is disabled > by default. > > l. The history expansion character (!) does not cause history expansion when > followed by the closing quote in a double-quoted string. > > m. `complete' and its siblings compgen/compopt now takes a new `-o noquote' > option to inhibit quoting of the completions. > > n. Setting HISTSIZE to a value less than zero causes the history list to be > unlimited (setting it 0 zero disables the history list). > > o. Setting HISTFILESIZE to a value less than zero causes the history file > size > to be unlimited (setting it to 0 causes the history file to be truncated > to zero size). > > p. The `read' builtin now skips NUL bytes in the input. > > q. There is a new `bind -X' option to print all key sequences bound to Unix > commands. > > r. When in Posix mode, `read' is interruptible by a trapped signal. After > running the trap handler, read returns 128+signal and throws away any > partially-read input. > > s. The command completion code skips whitespace and assignment statements > before looking for the command name word to be completed. > > t. The build process has a new mechanism for constructing separate help files > that better reflects the current set of compilation options. > > u. The -nt and -ot options to test now work with files with nanosecond > timestamp resolution. > > v. The shell saves the command history in any shell for which history is > enabled and HISTFILE is set, not just interactive shells. > > w. The shell has `nameref' variables and new -n(/+n) options to declare and > unset to use them, and a `test -R' option to test for them. > > x. The shell now allows assigning, referencing, and unsetting elements of > indexed arrays using negative subscripts (a[-1]=2, echo ${a[-1]}) which > count back from the last element of the array. > > y. The {x}<word redirection feature now allows words like {array[ind]} and > can use variables with special meanings to the shell (e.g., > BASH_XTRACEFD). > > z. There is a new CHILD_MAX special shell variable; its value controls the > number of exited child statues the shell remembers. > > aa. There is a new configuration option (--enable-direxpand-default) that > causes the `direxpand' shell option to be enabled by default. > > bb. Bash does not do anything special to ensure that the file descriptor > assigned to X in {x}<foo remains open after the block containing it > completes. > > cc. The `wait' builtin has a new `-n' option to wait for the next child to > change status. > > dd. The `printf' %(...)T format specifier now uses the current time if no > argument is supplied. > > ee. There is a new variable, BASH_COMPAT, that controls the current shell > compatibility level. > > ff. The `popd' builtin now treats additional arguments as errors. > > gg. The brace expansion code now treats a failed sequence expansion as a > simple string and will continue to expand brace terms in the remainder > of the word. > > hh. Shells started to run process substitutions now run any trap set on EXIT. > > ii. The fc builtin now interprets -0 as the current command line. > > jj. Completing directory names containing shell variables now adds a trailing > slash if the expanded result is a directory. > > kk. `cd' has a new `-@' option to browse a file's extended attributes on > systems that support O_XATTR. > > ll. The test/[/[[ `-v variable' binary operator now understands array > references. > > 2. New Features in Readline > > a. Readline is now more responsive to SIGHUP and other fatal signals when > reading input from the terminal or performing word completion but no > longer attempts to run any not-allowable functions from a signal handler > context. > > b. There are new bindable commands to search the history for the string of > characters between the beginning of the line and the point > (history-substring-search-forward, history-substring-search-backward) > > c. Readline allows quoted strings as the values of variables when setting > them with `set'. As a side effect, trailing spaces and tabs are ignored > when setting a string variable's value. > > d. The history library creates a backup of the history file when writing it > and restores the backup on a write error. > > e. New application-settable variable: rl_filename_stat_hook: a function > called > with a filename before using it in a call to stat(2). Bash uses it to > expand shell variables so things like $HOME/Downloads have a slash > appended. > > f. New bindable function `print-last-kbd-macro', prints the most-recently- > defined keyboard macro in a reusable format. > > g. New user-settable variable `colored-stats', enables use of colored text > to denote file types when displaying possible completions (colored analog > of visible-stats). > > h. New user-settable variable `keyseq-timout', acts as an inter-character > timeout when reading input or incremental search strings. > > i. New application-callable function: rl_clear_history. Clears the history > list > and frees all readline-associated private data. > > j. New user-settable variable, show-mode-in-prompt, adds a characters to the > beginning of the prompt indicating the current editing mode. > > k. New application-settable variable: rl_input_available_hook; function to be > called when readline detects there is data available on its input file > descriptor. > > l. Readline calls an application-set event hook (rl_event_hook) after it gets > a signal while reading input (read returns -1/EINTR but readline does not > handle the signal immediately) to allow the application to handle or > otherwise note it. > > m. If the user-settable variable `history-size' is set to a value less than > 0, the history list size is unlimited. > > n. New application-settable variable: rl_signal_event_hook; function that is > called when readline is reading terminal input and read(2) is interrupted > by a signal. Currently not called for SIGHUP or SIGTERM. > > o. rl_change_environment: new application-settable variable that controls > whether or not Readline modifies the environment (currently readline > modifies only LINES and COLUMNS). > > -- > ``The lyf so short, the craft so long to lerne.'' - Chaucer > ``Ars longa, vita brevis'' - Hippocrates > Chet Ramey, ITS, CWRU c...@case.edu http://cnswww.cns.cwru.edu/~chet/ > -- Lionel