bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bash-4.3 available for FTP


From: Lionel Cons
Subject: Re: Bash-4.3 available for FTP
Date: Thu, 27 Feb 2014 22:05:45 +0100

Thank you for the cd -@ / O_XATTR support!!

Lionel

On 27 February 2014 14:12, Chet Ramey <chet.ramey@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    chet@case.edu    http://cnswww.cns.cwru.edu/~chet/
>



-- 
Lionel



reply via email to

[Prev in Thread] Current Thread [Next in Thread]