[BACK]Return to DESCR CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / shells / mksh

File: [cvs.NetBSD.org] / pkgsrc / shells / mksh / DESCR (download)

Revision 1.4, Mon Apr 13 19:48:34 2009 UTC (5 years, 3 months ago) by ahoka
Branch: MAIN
CVS Tags: pkgsrc-2014Q2-base, pkgsrc-2014Q2, pkgsrc-2014Q1-base, pkgsrc-2014Q1, pkgsrc-2013Q4-base, pkgsrc-2013Q4, pkgsrc-2013Q3-base, pkgsrc-2013Q3, pkgsrc-2013Q2-base, pkgsrc-2013Q2, pkgsrc-2013Q1-base, pkgsrc-2013Q1, pkgsrc-2012Q4-base, pkgsrc-2012Q4, pkgsrc-2012Q3-base, pkgsrc-2012Q3, pkgsrc-2012Q2-base, pkgsrc-2012Q2, pkgsrc-2012Q1-base, pkgsrc-2012Q1, pkgsrc-2011Q4-base, pkgsrc-2011Q4, pkgsrc-2011Q3-base, pkgsrc-2011Q3, pkgsrc-2011Q2-base, pkgsrc-2011Q2, pkgsrc-2011Q1-base, pkgsrc-2011Q1, pkgsrc-2010Q4-base, pkgsrc-2010Q4, pkgsrc-2010Q3-base, pkgsrc-2010Q3, pkgsrc-2010Q2-base, pkgsrc-2010Q2, pkgsrc-2010Q1-base, pkgsrc-2010Q1, pkgsrc-2009Q4-base, pkgsrc-2009Q4, pkgsrc-2009Q3-base, pkgsrc-2009Q3, pkgsrc-2009Q2-base, pkgsrc-2009Q2, HEAD
Changes since 1.3: +10 -5 lines

mksh R37c provides these follow-up fixes:

.[tg] Improve præprocessor detection/work in Build.sh
.[tg] Decouple MKSH_CONSERVATIVE_FDS from MKSH_SMALL
.[tg] Enable MKSH_CONSERVATIVE_FDS by default on Minix 3
.[tg] Work around the (in-)famous ACK "const" bug
.[tg] Optimise structure alignment and padding; Closes: #522778
.[tg] Retain LOCPATH (for glibc locale) in check.pl
.[tg] Document, simplify and clean up the code better
.[tg] Use mirbsd.org eMail addresses consistently

mksh R37b comes with the following fixes on top:

.[tg] Clean up build system and dot.mkshrc some more
.[tg] Add getrusage(2) implementation using times(3) if none found
.[tg] Add jobless mode (for Minix 3, Plan 9, .)
.[tg] Detect the Amsterdam Compiler Kit in the build system
.[tg] If no RLIM_INFINITY don.t try to do ulimit
.[tg] Work around gcc4 strict warnings vs. broken system headers
.[tg] Work around systems with mmap(2) but no munmap(2)
.[tg] Fix (disallow) bind key macro recursion (instead of beeping and going into an endless loop), allow multi-line bind key macros (mostly from Alexander Hall), remove dead code (the beeping) and optimise
.[tg] Add (commented out, undesired, standards compliance breaking) compatibility code to MidnightBSD 0.1 /bin/sh for ctriv
.[tg] Clarify the mksh(1) manual page even more
.[tg] Port to Minix 3 + GCC

mksh R37 has major standards compliance improvements:

.[tg] Rename -o utf8-hack to -o utf8-mode
.[tg] Fix spacing mode error (pasto) in the mdoc(7) format manpage
.[tg] Implement $((#.)) unsigned arithmetic calculation, needed for arc4random_uniform(3)-in-korn-shell implementation
.[tg] Really preserve LD_LIBRARY_PATH in check.pl
.[tg] New Build.sh option .-combine. for building mksh(1) at once with .-fwhole-program --combine. (gcc4, llvm-gcc4) if available
.[tg] Always set COLUMNS and LINES trying as hard as we can, using TIOCGWINSZ even if used without FTALKING, and with the sane 80x24 default if the ioctl(2) fails
.[tg] Handle _POSIX_VDISABLE being undefined (e.g. Linux/klibc)
.[tg] <sys/file.h> is only required for flock(2)
.[tg] Fix multi-column output routine for the corner case if the screen is less wide than one output column; 10x Gábor Gergely
.[tg] Fix ${foo/@(%)/\\x} in UTF-8 mode (utf_widthadj for control characters U+0080.U+009F is slightly broken; this fix shifts the brokenness into the command line editing mode only)
.[tg] Introduce mksh_ari_t and mksh_uari_t internal types to limit arithmetics to 32 bit on all systems; currently depending on the already-used standard int32_t and uint32_t types. Future expansion to 64 bit possible. Document that shell integer variables use this type.
.[tg] The variables PGRP, PPID, RANDOM and USER_ID are now unsigned
.[tg] Fix two off-by-ones breaking PS1 ending with a newline; bug reported by Matthias Diener
.[tg] Just pass through C1 control characters for now
.[tg] Code and internal interfaces cleanup
.[tg] Regression test fixes for Cygwin env(1) being unsorted
.[tg] Replace the memory allocator by something equally simple and homegrown but optimised for use with mksh and free checking
.[tg] Import a couple of minor fixes (e.g. spelling) from oksh
.[tg] Fix problems with "set -e" for real; from oksh, Closes: #518359
.[tg] In "set -o posix" mode, have limited echo(1) to improve standards compliance; the exact feature set is open for discussion, e.g. with pkgsrc® people; for now, only -n as first arg
.[tg] Make test builtin operator precedence consistent; from oksh
.[tg] Revamp and fold and enhance the regression tests
.[tg] Document somewhat surprising behaviour in mksh(1) better; here: [ x -eq y ]; for gps23 from #ksh
.[tg] Reduce memory consumption by allocator simplification
.[tg] Fix bugs spotted by DEC ucode cc (ULTRIX) and gcc 1.42 (BSD/OS)
.[laffer1] Make mksh the default /bin/sh in MidnightBSD

mksh is the MirBSD enhanced version of the Public Domain Korn shell (pdksh),
a Bourne-compatible shell which is largely si. milar to the original AT&T
Korn shell; mksh is the only pdksh derivate currently being actively developed.
It includes bug fixes and feature improvements, in order to produce a modern,
robust shell good for interactive and especially script use.

The code has throughoutly been cleaned up and simplified, bugs fixed, standards
compliance added, and several enhancements (for extended compatibility to other
modern shells, as well as a couple of its own) have been placed. mksh has UTF-8
support (e.g. in the emacs editing mode).