Release Notes: New ports were made for QNX, nwcc, and (an incomplete one) for Haiku. A native LLVM build was added (with either llvm-gcc or clang). autoconf-time compiler errors are hidden from build scanners. MKSH_SMALL builds were shrunk even more. __typeof__ is not used. Statements can be used as expressions. An alias expansion bug was fixed. bashiop use inside a function was fixed. strings.h is pulled if it exists. Some format string warnings, dead code, and casts were cleaned up. Lint hints were added. The dot.mkshrc and regression test suite were optimized.


Release Notes: This release fixes several small bugs in sh compatibility, UTF-8 handling, Emacs mode, and the build system. It includes some additions to the man page as well as portability fixes for Openstep, Interix, and Hurd and a new port to MSYS.


Release Notes: This release fixes several obscure ways the shell could crash the tty, freeze, or refuse to start. The tab completion user experience was improved to allow ^Cing out of cat. The setenv function was added to the default ~/.mkshrc file. The documentation better explains that echo is not portable and which startup files are read. Manpage legibility was improved. The new “global” special built-in command was added, doing the same as “typeset” (“local”) except making every touched parameter local to the function even if it existed before. Compiler/linker errors are caught earlier. Some compiler warnings were fixed.


Release Notes: cat and sleep were added as builtins. The Android, FreeMiNT, and Haiku platforms are now supported. Many interactive improvements were made. The behavior was aligned with POSIX/SUSv4 (parameter expansions, etc). Link time optimization and LLVM Dragonegg are supported. Overly complicated code was replaced with simpler, smaller, faster, and more correct code. Unicode support was synchronized with version 6.0.0 of the standard. A lot of bash/ksh93/zsh extensions are supported: $"…", ${PIPESTATUS[*]}, case ;& and ;|, x+=y, x+=(y z), etc. A new recursive parser fixes command substitution. Functions inherit “set -x”. The "read" builtin can read (up to) n bytes into an array of words or char, with a timeout. "Here document" handling was improved.


Release Notes: This release fixes a possible segmentation fault in the built-in "bind" command in interactive mode. The parsing and evaluation of "${parameter op word}" is now correct. The code, documentation, and test suite were cleaned up, and several changes were made in the build system, fixing (among other problems) the building of the manpage and compilation on AIX.


Release Notes: The LOCPATH environment variable is now recognized by the regression test suite (for unprivileged builds), the file descriptor use is now more conservative on Minix 3, enabling it to bootstrap itself there, a "wontfix" bug in ACK (on Minix 3) has been worked around, enabling /usr/bin/cc to be used for compilation, structure alignment and padding has changed, and SIGBUS and the occasional segmentation faults on some architectures (IA64, possibly S/390, maybe more) have been fixed.