7.242. zsh

Updated zsh packages that fix several bugs and add various enhancements are now available for Red Hat Enterprise Linux 6.
The zsh shell is a command interpreter usable as an interactive login shell and as a shell script command processor. Zsh resembles the ksh shell (the Korn shell), but includes many enhancements. Zsh supports command-line editing, built-in spelling correction, programmable command completion, shell functions (with autoloading), a history mechanism, and more.

Bug Fixes

Parameter expansion has been enhanced to provide the ${NAME:OFFSET} and ${NAME:OFFSET:LENGTH} syntaxes for substrings and subarrays present in several other shells.
Numeric expansion with braces has been extended, which allows users to specify a step in the numeric expansion, for example {3..9..2}.
Prior to this update, when the "jobs -Z" built-in zsh command was invoked, some environment variables were overwritten. An upstream patch has been applied to preserve the environment variables when "jobs -Z" is run, thus fixing this bug.
Due to a parser error, the zsh shell previously interpreted variable assignments as other commands, and attempted to execute them when zsh was running in ksh compatibility mode. This update modifies the underlying code to interpret variable assignments as expected in the described situation.
Prior to this update, the speed of the pattern matching in the zsh shell decreased when multiple subsequent occurrences of the "*" wildcard symbol were used in a pattern. An upstream patch has been applied on zsh source code to optimize the implementation of pattern matching in zsh with redundant "*" symbols in the pattern. As a result, the speed of pattern matching in zsh is no longer affected by the count of subsequent "*" symbols.
An incorrect comment in the /etc/zshenv configuration file caused that the users erroneously expected that the file takes no effect if the zsh shell is started with the "-f" option. The comment in the /etc/zshenv file has been changed to describe the configuration file correctly.
When processing overly-long input data, the zsh shell terminated unexpectedly because of a stack-based buffer overflow. With this update, arrays of variable sizes are allocated on heap memory instead of stack memory, thus fixing the bug.
Prior to this update, the description of emulation mode in the zsh man page was incomplete. With this update, the documentation has been updated to provide users with more information about the command that starts emulation mode.
Users of zsh are advised to upgrade to these updated packages, which fix these bugs and add these enhancements.