Changelog
mksh (35.2-3) unstable; urgency=low
* Apply upstream changeset 10048D15ABE2EA76C75:
- Bring back automatic -o posix setting if the shell is invoked
as “sh” or “-sh” (unless compiled with MKSH_SMALL), add
regression test
- If -o posix is set, do not keep file descriptors created via
I/O redirection, as Korn Shells do, private; add regression
test; Debian Closes: #499139; reported by Markus Schaber and
Agustin Martin Domingo
* Change mksh-internal version number to document aberration from
pristine source
* Add DM-Upload-Allowed control field to prepare for future updates
* Add workaround to “posix-mode-2” regression test to cope for GNU
getopt idiocy to not stop argument parsing upon encountering the
first non-flag argument: “ln -s mksh -sh” tries to parse -s and -h
mksh (35.2-2) unstable; urgency=low
* Workaround for false positives on IA64, Closes: #492377
(by circumventing the regex matcher for code not actually used)
* The mksh-static binary on non-dietlibc arches was not statically linked
* MKSH_STATIC implies MKSH_NO_PWNAM, remove duplicate definition
* Add build dependency on en_US.UTF-8 locale data for the regression tests
* Fix lintian -vIi warning debian-copyright-line-too-long by wrapping
mksh (35.2-1) unstable; urgency=low
* Update to BSD-advertising-clause-free new upstream release; changelog:
- Simplify and refactor the ulimit builtin, partially from oksh
- Some style cleanup; use appropriate integer types
- Fix a bug in table (e.g. kill -l, tab completion) display: the width
of non-ASCII characters is now honoured in the utf8-hack mode
- Improve handling of invalid UTF-8 in certain areas, and multibyte
(UTF-8 / CESU-8) in general
- When using “typeset -Z«n»” on an integer variable with a base other
than ten, zero-pad the value instead of the base – pdksh, oksh, zsh,
and AT&T ksh93 are wrong here; GNU bash doesn’t even have typeset
- Improve parsing of “set +o” output where done (dot.mkshrc, check.t)
- Improve regression tests
- Support for base-1 numbers: in non-utf8-hack mode, ‘1#x’ means the
same as the ASCII code for ‘x’ (e.g. 78hex), where ‘x’ is any single
octet (byte); in utf8-hack mode, ‘x’ is either a valid and minimali-
stically encoded UTF-8 multibyte character in the range 0000‥FFFD,
or a single octet with no trailing octets (bytes), which will then be
converted as if it were an ASCII value, or, if bit7 is set, be mapped
into the PUA range of EF80‥EFFF assigned by CSUR for this purpose;
this mapping is, in both cases, bidirectional; the planned base-0
number support is not possible with the code, so use base-1 (with
utf8-hack disabled, or & 0xFF) instead (while it is recommended to
parse only single octets, there is a regression test showing correct
and safe multibyte parsing, which however is error-prone to implement
and thusly not recommended) – “genial” replaced@TNG, “this sounds
fun” ggergely, agreed bsiegert@ and others
- Pull in more current versions of supplied files; use Unicode 5.0
- Clean up unused definitions in build system; document MKSH_CLS_STRING
- Remove advertising clause from copyright file; while we’d be pleased
to be mentioned if something contains our code, tg@ will no longer
enforce the requirement to advertise with that specific formula, and
we’d prefer if people remember the OpenHAL vs ath5k incident and that
they cannot simply change licencing of existing code; patches sent to
the MirOS Project for inclusion shall be accepted if they’re agreed
to match this licence
- Simplify dot.mkshrc sample file: licence is merged into the main
copyright file; AT&T ksh93 compatibility was improved
- Fix a display problem regarding fullwidth characters (e.g. CJK)
- Set the “C” locale in Build.sh for tool execution; otherwise, cer-
tain OEs behave strange; thanks to Adam “replaced” Hoka for spotting
- Use en_US.utf8 as UTF-8 locale for the testsuite for now
- If setlocale(LC_CTYPE, "") is not available, look at the environment
variables ourselves – brings UTF-8 support to poor OSes
- Remove some now-dead code; speed up configuration process; shrink
- Default to no setlocale(3) due to stubbed or missing locale support
on GNU/Cygwin, OpenBSD, OSF/1 in Build.sh; a few more that are quite
unlikely to have a UTF-8 locale: BSD/OS, Interix, Minix, PW32,
Ultrix, AT&T UWIN; default to always UTF-8 on Plan 9
- Fix for testsuite unexpected failure if running as root in one case
- Initialise all shell integer variables (OPTIND, PPID, RANDOM,
SECONDS, TMOUT) to base 10
- Reintroduce from mksh pre-R24 shell integer variable PGRP set to
the PID of the process group leader via getpgrp(2)
- New shell integer variable USER_ID set to the geteuid(2) and used
by dot.mkshrc to speed up logins, saves a spawn of id(1), mentioned
by and realisation planned with Andreas "gecko2" Gockel
- Fix dot.mkshrc tilde replacement in both $PS1 and the pushd/popd/dirs
implementation when the home directory is empty, the root directory,
or ends with a slash (disable replacement in that case)
- Support dietlibc, force it into providing a BSDish caddr_t
- Do not use LDFLAGS and LIBS while compiling with -c
- Add realpath(3) builtin, to further speed up logins and chdirs
- Optimise the code somewhat by making use of possible assumptions
- Set the “C” locale in test.sh as well to quell warnings
- Split the regression tests that use locale between en_US.utf8 and
en_US.UTF-8, since not all OSes support either one, and make only
HP-UX and GNU use the latter
- Fix kill, mknod(8) builtin usage msg, from Igor Sobrado via oksh
- Use proper ptrdiff_t casts for pointer arithmetics, inspired by an
oksh commit from Federico Schwindt
- Remove check category “pdksh” from check.t and test script
- Improve Darwin, OSF/1, HP aCC, SUNpro version reporting
- Support GNU bash “&>” extension, even better than they do, suggested
by Lukas “smultron” Upton from MidnightBSD
- Basic support for LLVM+clang in the build system with experimental
“ccc” compiler driver; llvm-gcc worked as-is before already
- Better support for contributed arc4random.c file
- Do not spin if unlink(2) fails on $HISTFILE, from Decklin Foster
- Dump the perl(1) $^O variable in test.sh to logs
- Pull in latest changes from oksh
- Allow white space between a here string indicator and the string,
accidentally discovered by twkm (#ksh, freenode)
- Allow fd specifications outside the 0‥9 range for I/O redirections,
and bounds check them to be lower than the FDBASE definition,
currently still 10 if MKSH_SMALL, 24 otherwise (unportable)
- Improve the regression test suite: for one test, we had a bizarre
constraint telling it won’t work on UWIN, which was based upon false
assumptions, but Tru64 would fail it since its cat(1) unexpectedly
outputs some error messages (fix by closing stderr for cat); another
test would unexpectedly print no error message on Solaris (fix by
making the error message optional in the perlre(1) used)
- Switch back to en_US.UTF-8 for glibc, Debian can do both, Mandriva
fails on en_US.utf8 (XXX no libc5 auto-detection to disable it)
- IRIX also has no UTF-8 locale at all, confirmed by Elias Pipping
- Fix regression test suite for MKSH_SMALL
- Bring in latest changes from oksh (OpenBSD ksh, not DeliLinux crap)
- Fix abuse and unsafe use of str_save() and str_nsave()
- Optimise the implementations of str_save() and str_nsave()
- If MKSH_AFREE_DEBUG is defined, guard against afree()ing a pointer
which has not been allocated from the given pool, from Todd C. Miller
- Fix attempt to free a pointer to stack (function-local) storage when
redefining a function containing a call to the “time” built-in,
discovered by Elias Pipping, patch by Jared Yanovich, help from
Todd C. Miller
- Protect a little against people not running “./test.sh -v” but
calling it with, for instance, GNU bash (as homsn did…)
- Honour $PERL environment variable in test.sh, improve scanning for
Perl, do not use potentially undefined $^O, print Perl version
- Add <sys/types.h> as <ulimit.h> requirement (dietlibc)
- Work around bug in BSD/OS 3.1 /bin/ksh (PD KSH v5.2.8 96/08/19)
- Add regression tests from OpenBSD’s <bsd.regress.mk> suite
- Use better CPPFLAGS for AIX, Minix 3 (from pdksh)
- Expose the “s ≠ NULL” str_[n]save_() API and use it where the string
can never be NULL (local stack storage), from gcc-4.2 warnings
- Clean up pointer-to-integer-cast warnings in the mirtoconf process
* New debian-policy version: 3.8.0.1
- DEB_BUILD_OPTIONS: add -Wall to default CFLAGS, fix “noopt” handling,
add “nostrip” handling, ignore “parallel=«n»” as we cannot specify a
maximum value to Build.sh
- Convenience copies: switch from a contributed arc4random.c file to
using the new libbsd Debian package, 10x Hector, Guillem et Aurelien!
* debian/control: sync Description field with upstream suggestion
* Rename menu entry from "MirBSD ksh" to "MirBSD Korn Shell" for clarity
* Add a mksh-static binary, for initrd, initramfs, installer, rescue
* Integrate translation updates, ありがとう; Closes: #483506
* Integrate translation updates, tack; Closes: #491950
-- Ubuntu Archive Auto-Sync <email address hidden> Wed, 05 Nov 2008 10:41:26 +0000