Fedora 18 Update: mksh-44-1.fc18
updates at fedoraproject.org
updates at fedoraproject.org
Sun Apr 7 00:30:19 UTC 2013
--------------------------------------------------------------------------------
Fedora Update Notification
FEDORA-2013-4067
2013-03-20 20:45:51
--------------------------------------------------------------------------------
Name : mksh
Product : Fedora 18
Version : 44
Release : 1.fc18
URL : http://www.mirbsd.de/mksh.htm
Summary : MirBSD enhanced version of the Korn Shell
Description :
mksh is the MirBSD enhanced version of the Public Domain Korn shell (pdksh),
a bourne-compatible shell which is largely similar to the original AT&T Korn
shell. It includes bug fixes and feature improvements in order to produce a
modern, robust shell good for interactive and especially script use, being a
bourne shell replacement, pdksh successor and an alternative to the C shell.
--------------------------------------------------------------------------------
Update Information:
R44 contains these bugfixes:
- [tg] "$@" always generates words; bug spotted by engla in IRC
- [tg] Optimise print_columns display to use the screen space better
Please upgrade to mksh R43 (or stick on R41c) because of…
- [tg] Do not permit $'…' and $"…" in anything that looks like a string, as old scripts, like ncurses’, depend on behaviour not guaranteed by POSIX regarding unescaped dollar signs there
- [dalias] Make detection of function prototypes more reliable
- [tg] Quote setenv arguments for eval properly in dot.mkshrc
- [tg] Validate parameter names for typeset, export, etc.
- [tg] Provide a classic BSD echo builtin for /bin/sh on MidnightBSD
- [tg] When generating Makefrag.inc put list of check_categories inside
- [tg] Actually test all echo(1) flavours and MidnightBSD /bin/sh hacks
mksh R42b and R41c fix regressions:
- [tg] Correctly initialise memory (Debian #700604)
- [tg] LP#1104543 fix was too strict (Debian #700526)
mksh R42 brings back the release\ {early,often} scheme:
- [tg] Make -DMKSH_DISABLE_EXPERIMENTAL a nop again
- [tg] Quell some LLVM+Clang warnings; overhaul scan-build assert(3)s
- [tg, RT] Bunch of portability and build system fixes
- [tg] Re-enable ${ precmd;} in dot.mkshrc and fix it to retain the errorlevel
- [RT] Port to Minix-vmd, QNX 4, Watcom C; begin porting to SunOS 4.1.1, Xenix, ISC (Interactive) Unix
- [tg] Prefer const-clean sys_errlist[] to strerror(3)
- [tg] Permit $"…" and $'…' everywhere except in the body of here documents that are not here strings
- [tg] Use full recursive parser for double-quoted here strings, and reuse code between here strings and here documents
- [tg] #ifdef DEBUG_LEAKS free all fds and memory on exit (LP#1106116)
- [tg] Don’t close stdout/stderr with redirections, dup /dev/null instead, always, both in dot.mkshrc and the testsuite, it does break!
- [tg] Handle ${ …;} like functions in that local and return DWIW; use it for the big chunk in $PS1 to avoid fork(2)ing (at cost of tempfiles; dot.mkshrc is a sample, adjust to your needs)
- [tg] Document invalid ${a/b/c} patterns in manpage (Debian #698678)
mksh R41b is a bugfix-only release off a stable branch:
- [tg] Fix gettimeofday(2) detection at build time (warning)
- [RT, tg] Build.sh: catch non-working dash printf builtin
- [chris2, dalias, tg] Remove musl libc workaround and use _GNU_SOURCE which they kindly aliased to _ALL_SOURCE, which is implemented now
- [tg] Fix getn and some cases of possible array bounds trespasses
- [chris2, dalias, tg] Use -fno-asynchronous-unwind-tables with GCC
- [tg] Fix a few warnings from libFirm/cparser (mostly -Wsign-compare)
- [tg] Correct mistake when doing hashtable lookup collision resolution
- [tg] Fix running the ERR and EXIT traps in situations with set -e and/or eval (also closes Debian #696823)
- [tg] Fix “command shift”, reported by «ormaaj:#!/bin/mksh»
- [Torsten Sillke] Unbreak linking on AIX (remove -qextchk)
- [tg] Fix regression wrt lists in functions and “set -e” (LP#1104543)
mksh R41 brings a number of bugfixes and new features:
- [tg] Drop “set ±o arc4random” (deprecated in R40)
- [tg] Drop old Build.sh -long-options (deprecated in R40)
- [tg] Change the internal hash algorithm from Bob Jenkins’ one-at-a-time to its NUL-counting, always-changing, better-avalanching MirOS variant NZAAT (with feedback from ciruZ; 75% fill level is reasonable; names tbd in Mirkev/MirJSON)
- [tg] Use $'…' for non-ASCII parameters for re-entry printing
- [tg] Use sane spelling of “read-only” consistently
- [tg] Improve tree -DDEBUG functions (internal/developer use)
- [tg] Reduce stack usage a bit; speed up hash tables at size cost
- [tg] MKSH_SMALL no longer implies -fno-inline
- [tg] Support optional seed in ${parameter@#seed} for security
- [tg] New Build.sh environment configurable: LDSTATIC (empty)
- [tg] Improve LTO effect by always adding our copies of distributed utility function sources when linking statically (i.e. LDSTATIC is not empty)
- [tg] Drop deprecated hack for lines beginning with an exclamation mark
- [tg] No longer interpret numbers beginning with a 0 digit as octal
- [tg] Attempt to use -fwrapv on more compilers
- [tg, RT] Better portability to 386BSD, Debian 0.91, ancient Unicēs
- [tg] No longer use mkstemp(3) or tempnam(3) functions, do our own
- [tg] Fix some bugs in the manual page and Build.sh
- [tg] Add MKSH_NO_CMDLINE_EDITING, MKSH_DISABLE_TTY_WARNING
- [RT] Port to Coherent UNIX
- [tg] Enable some options by default for some ports, for instance, since BeOS can never have a controlling tty, the option disabling that warning
- [tg] Some bugfixes, prompted by RT and Valgrind
- [RT] Disable sigsuspend(2) on Syllable Desktop
- [tg] Fix several issues with typeset -p (LP: #993847)
- [RT] Detect lcc and apply inline fix, e.g. for use with libc5
- [tg] If klibc, set -DMKSH_NO_LIMITS and check for sigsuspend fix
- [tg] Fix some issues found by Coverity and some found while fixing
- [tg] Build.sh options: -t target-filename (instead of mksh); -L to build a legacy mksh, current changes: different $KSH_VERSION “LEGACY KSH” instead of “MIRBSD KSH”; purely for running ksh88 and pdksh scripts; no command line editing; use traditional “set -- $(getopt …); echo $?” mode always; do not keep file descriptors private; parse leading-zero-digit numbers as octal; no mksh extension -T; use “long”, not “int32_t”, for arithmetics
- [tg] fix trimming with positional parameters (Debian #48453)
- [tg] ensure that case end tokens are not mixed up (Debian #220272)
- [tg] make alias definitions in mksh -c work (Debian #517009), hack
- [tg] Apply speed improvements and add MKSH_SMALL_BUT_FAST
- [tg] Fix CONSERVATIVE_FDS use-before-definition bug
- [tg] Correct two regressions when tab-completing (LP: #1025843) and fix bugs in the same code wrt. completion display and other expansions
- [tg] Make quoted output of “typeset -p” AT&T ksh93 compatible
- [tg] Implement ${foo at Q} like ${foo:Q} in make(1)
- [tg] Remove some unused code; more int → bool conversion
- [tg] Fix using here documents in COMSUB etc. (LP: #1030581)
- [tg] Fix ulimit builtin usage to match what limits we actually know
- [tg] Allow overriding /etc location, experts only (LP: #1039713)
- [tg] Update to Unicode 6.1.0
- [tg, Todd Miller] Avoid changing ps(1) output by accident
- [tg, ft, Christian Neukirchen] Detect zsh 2.5.02/NeXTstep for Build.sh
- [tg] Detect musl-gcc wrapper, define _BSD_SOURCE there, which is totally bogus, but musl, just like dietlibc, gets it wrong
- [tg] Improve compile-time assertions
- [tg] Repair select builtin without any choices given
- [tg] Add -DMKSH_GCC55009 hack to avoid some compile-time assertions and introduce arith-mandatory in check.t to substitute for missing that compile-time check; will change
- [tg] Rewrite lots of code to not rely on -fwrapv so much
- [tg] Build.sh: Fix flock(2) detection on GNU/Linux
- [Andrew Kudryashov] Manpage: fix default for HISTSIZE
- [tg] Add debugging aid (split-screen mechanism using GNU screen)
- [Andrew Kudryashov] Manpage, Website: point out correct mailing list
- [tg, Andrew Kudryashov] Fix ~/nonexistant tab completion
- [tg] Optimise sh -c “[^]\t\n"-$&-*;-?[\\`|]*” to exec, inspired by Jilles Tjoelker (-DMKSH_DISABLE_EXPERIMENTAL to ostracise)
- [tg] Fix $? inside eval (RedHat BZ#865121)
- [tg] Implement ksh93 feature ${ foo;} (using tempfiles this time; exclude with -DMKSH_DISABLE_EXPERIMENTAL in R41)
- [tg] Run SIGINT check more reliably in the cat builtin (LP#1058815)
- [tg] Handle ^C in here documents, COMSUB, arithmetics (LP#1069428)
- [tg] Make dot.mkshrc usable with “set -o nounset” / “set -u”
- [tg, Clint Adams] Clean up and optimise the error handling code
- [tg] Fix and add some checks in the testsuite
- [tg] Sort list of variables in the source code when possible
- [tg] Add $BASHPID (for ormaaj) and $EPOCHREALTIME
- [tg] Improve documentation, #ksh IRC channel homepage
- [tg, RT] Minix 2 also doesn’t have gettimeofday(2) ⇒ check for it
- [tg] Fix an input command line editing display redrawing issue
- [tg] Track the tty to keep $COLUMNS and $LINES up-to-date after a SIGWINCH even in scripts
mksh R40f fixes a critical bug as well as this:
- [tg, RT] Implement fcntl(2)-based advisory locking as an alternative iff flock(2) is not found (LP: #912691); keep trying in the face of EINTR
- [tg] Fix severe regression wrt. initialising tty(4) states
- [tg] Improve testsuite, build-time checks and debugging output
- [tg, RT, winstonw] Improve portability to BeOS (works), Cygwin (good), Dell UNIX (works somewhat, but not with gcc), LynxOS (works somewhat), NeXTstep (works but not OpenStep 4.2), USL C compiler, SCO OpenServer (good), SCO UnixWare (good), Plan 9 (still broken), Syllable Desktop (broken?)
- [tg] rlim_t is supposed to be unsigned
- [tg] Some code, warning and spelling cleanup
- [tg] New Build.sh environment configurable: AWK (= awk)
- [tg, DONG-DONG YANG] Add safety net in the Emacs line editing code
- [tg] No longer rely on env(1), id(1), printf(1) in the testsuite, and strcasecmp(3), strcasestr(3), strncasecmp(3) in the code
- [tg, stsc, RT] Reduce system requirements of check.pl further
mksh R40e is another must-have bugfix update:
- [tg, Jilles Tjoelker] skip readonly check in unevaluated ternary twig
- [tg, anonymous] fix all remaining ifs.sh testcases
- [tg] No longer try to build with GCC and C99 extensions
- [tg, Jilles Tjoelker] Do not expand aliases in COMSUB twice
- [tg] Honour UTF-8 multi-byte character boundaries when doing partial tab-completion insertions (LP: #909025) to fix RedHat BZ#745702
- [tg] Fix R40 (BZ#496791) regression with IOACT in TIF (LP: #907224)
- [tg, ft] Darn persistent history code worst offenders (LP: #906914)
- [tg] Fix some gc-sections, GCC and Clang/scan-build warnings/issues
- [tg, 28C3] dot.mkshrc hash functions: partially address LP: #909818
- [tg] Only compile divmod(0x80000000, -1) code in when not unneeded
- [tg, RT] Move mirtoconf checks and INCLUDES_ONLY parts of sh.h around to ensure prerequisites are always available
- [tg, RT, ir0nh34d] Pass mksh.exe to testsuite, if such thing is generated, and deal with Cygwin passing just “mksh” in argv[0] in such cases
- [tg] Imply -DMKSH_ASSUME_UTF8=0 on MSYS; optimise checks
- [tg, Jb_boin] Fix regression introduced in R35b by jaredy’s security patch where TTIME trashed a non-TCOM string argument (e.g. in TFOR)
- [tg] Better support for tcc; fix GCCism that accidentally crept in
- [tg] Deal with UTF-8 when reporting jobs’ commands
- [RT] Add SkyOS to known OS list
- [tg, RT] Support Minix in its variants Minix 3 and Ninix 3 better
- [tg] Drop some Android-specific unused code (lsmod builtin)
- [tg, RT, lewellyn] Support QNX and various versions of BSD/OS better
- [tg] More code cleanup and new developer-only debugging functions
- [tg, Andrew Kudryashov] Fix some tab completion related escaping bugs
- [tg, draenog] Honour COLUMNS and LINES from the environment in scripts
- [tg, winstonw] The sleep built-in utility now blocks more signals
- [tg] Warn when using another deprecated function that will be removed
--------------------------------------------------------------------------------
ChangeLog:
* Mon Mar 18 2013 Robert Scheck <robert at fedoraproject.org> 44-1
- Upgrade to 44 and work around bug in GCC 4.8 (#922974)
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 41-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Mon Dec 3 2012 Michal Hlavinka <mhlavink at redhat.com> - 41-1
- Upgrade to 41
--------------------------------------------------------------------------------
This update can be installed with the "yum" update program. Use
su -c 'yum update mksh' at the command line.
For more information, refer to "Managing Software with yum",
available at http://docs.fedoraproject.org/yum/.
All packages are signed with the Fedora Project GPG key. More details on the
GPG keys used by the Fedora Project can be found at
https://fedoraproject.org/keys
--------------------------------------------------------------------------------
More information about the package-announce
mailing list