[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

mksh_39.3-1~bpo50+1_i386.changes is NEW



(new) mksh_39.3-1~bpo50+1.diff.gz optional shells
(new) mksh_39.3-1~bpo50+1.dsc optional shells
(new) mksh_39.3-1~bpo50+1_i386.deb optional shells
MirBSD Korn Shell
 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; 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.
 mksh has UTF-8 support (in substring operations and the Emacs editing
 mode) and, while R39c corresponds to OpenBSD 4.6-current ksh (without
 GNU bash-like PS1 and fancy character classes), adheres to SUSv4 and
 is much more robust.
 The code has 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) are available.
 This shell is Debian Policy 10.4 compliant and may be used as /bin/sh
 on Debian systems.
 .
 The mksh-static binary is a version of mksh, linked against dietlibc
 (if dietlibc exists for that Debian architecture), and optimised for
 small code size, for example for use on initrd or initramfs images,
 installation or rescue systems.
 .
 A sample ~/.mkshrc is included in /usr/share/doc/mksh/examples and
 provided as /etc/skel/.mkshrc conffile.
(new) mksh_39.3.orig.tar.gz optional shells
Changes: mksh (39.3-1~bpo50+1) lenny-backports; urgency=low
 .
  * Rebuild for lenny-backports.
 .
mksh (39.3-1) unstable; urgency=low
 .
  * New upstream version R39c; shortened ChangeLog since R39:
    - [tg] Build system, code, docs and testsuite cleanup, also style(9)
    - [tg] Parse and evaluate ${parameter op word} correctly
    - [tg] Fix possible SIGSEGV in interactive mode bind builtin due to
      mis-optimisation of gcc combined with a bogus prototype;
      discovered by Grml.org's Frank Terbeck (ft), thanks!
    - [tg] Clean up some more strict *roff or compiler warnings: dashes,
      undefined macros; casting errors (constness, signedness, type
      width/class) and catch possibly unaligned pointer dereferences
      early; remove code/rodata redundancies, plug memory leaks
    - [smultron] Tweak the manual page: point out the word “colour”
    - [tg] Optimise dot.mkshrc DJB’s CDB hash implementations; add Bob
      Jenkins’ one-at-a-time hash (standard and leading-bit
      initialised); fix signedness in expressions; let the hashes use
      stdin if "$*" is empty, like Lb64{en,de}code; use
      “[[ -o utf8-mode ]]” ipv “[[ $- = *U* ]]”
    - [tg] Build.sh portability fixes: missing prerequisite headers;
      ensure $CC is never called without $CFLAGS; fix test.sh, et al.
    - [tg] Optimise internal variable representation; use one-at-a-time
      hash; cache hash values for faster resizing at zero memory cost;
      clean up hash table (keytab) code; switch hash table collision
      resolution algorithm to Python’s; prepare for later changes
    - [tg] Fix type errors in the source code (int → bool, size_t,
      mksh_uari_t)
    - [tg] Fix “${foo:bar:$baz}” not working (missing substitute() call)
    - [tg] Implement “typeset ±a” as nop
    - [tg] Support ksh93-like “${!foo[@]}” listing the keys (indicēs) of
      all set array elements
    - [tg] Support bash/ksh93-like “array=([key]=value …)” and
      (additionally) “set ±A array -- [key]=value …” to directly
      specify indicēs to use
    - [tg] Document the optional, unsupported, printf(1) builtin in TFM
    - [tg] Replace realpath(3) dependency and internally used
      get_phys_path() pdksh code with own implementation; always offer
      the realpath builtin
    - [tg] Implement nameref='typeset -n' (bounded variables) like AT&T
      ksh93 but with mksh-style nested/dynamic scoping and on-use
      resolving; they cannot currently be stored in an array though
    - [tg] Add “chdir” builtin doing the same as “cd” special builtin
    - [tg, David Korn] Document more differences between mksh (and
      pdksh) and AT&T ksh (or, more specific, ksh88, ksh93) in the
      manual page
    - [tg] Support “'a'” as an alternative to “1#a”, like ksh93 does
    - [tg] Add ksh’s “test -o ?foo”: true if “foo” is a valid shell
      option, where “foo” can be “xtrace” or “-x” or “+x” (these three
      are equivalent)
    - [tg] Support “$'…'” backslash-expanding single-quoted strings, as
      requested by David Korn, with almost the same syntax and semantics
    - [tg] Unify backslash expansion code (C style vs. print builtin)
    - [tg] Support “function stop () {” bashism
    - [tg] For several items in the source code that require order to be
      kept, provide from multiply-included header files; sort correctly
    - [tg] Get rid of unneeded FMONITOR (-m) for shells without job
      control; sync list of flags, comments and manpage with reality
    - [tg] If MKSH_SMALL, reduce size by removing editor functionality
    - [tg] Support VT100 emulator style {Ctrl,Alt}-CurLeft/Right keycode
      sequences with new vt100-hack emacs bind function (LP: #355883)
    - [cnuke, tg] Remove more, like GNU bash extensions, from MKSH_SMALL
    - [tg] Remove more functionality, such as Emacs command line editing
      mode bind key macros, and other extensions, from MKSH_SMALL to
      help floppies
    - [tg] Make forking and subshells less expensive wrt. random state
    - [tg] Build and source code fixes for / caught by SUNWcc, HP aCC,
      pcc, DEC ucode cc (MIPS), GCC, LLVM clang
    - [tg] Make undef/def MKSH_NOVI into 0/1 MKSH_S_NOVI build flag
    - [tg] Get rid of "U getenv" in nm output, we already import environ
    - [tg] Simplify $RANDOM handling: reads are now either arc4random(3)
      (if available: set +o arc4random is no longer possible) or an LCG;
      writes are arc4random_pushb(3) if available for explicit writes,
      arc4random_addrandom(3) otherwise, or another one-at-a-time hash
      feeding the LCG; furthermore, RANDOM is now always exported to and
      imported from (implicit read: no push to kernel done) the
      environment vector on startup and spawning
    - [tg] Document mksh does not exactly use OPTU-8/OPTU-16 in the
      manpage, as well as when characters, octets, or screen columns
      are used
    - [tg] Fix exit 127 on "mksh /tmp/horsies" ipv of 1 on ENOENT,
      #548744
    - [Clint Adams] Fix typos in the testsuite
    - [tg, Clint Adams] Begin a shared testsuite for mksh and posh
    - [tg] Make 「((foo) || bar)」 and 「((foo) | (bar))」 work
    - [tg] Fix lazy evaluation of assignments by ternary operator,
      #445651
    - [tg] Work around Cygwin bugs (quirks) hindering the testsuite
    - [tg] In FSH mode, “echo [-n] 'foo\x40bar'” shall not be expanded
    - [tg] Let set -- $(false); echo $? return 0 (POSIXly correct) in
      FSH mode, 1 (needed for getopt(1) support) otherwise
    - [tg] Changes of variables inside Bourne style POSIX functions
      indeed affect the current execution environment (of the function
      caller)
    - [tg] Fix getopts behaviour (sync with AT&T ksh93 not ksh88)
    - [tg] “eval $(false)” shall return 0 (Debian Closes: #550717)
    - [tg] Ensure that /* apo'strophes in comments */ work
    - [tg] Overhaul and simplify handling of (special) variables
    - [tg] Further reduce memory (code/data) and import footprint
    - [tg] Use functions without PATH_MAX limit on GNU/Hurd
    - [tg] Fix tab completing pathnames containing ‘:’, ‘=’, ‘$’ or ‘`’
    - [tg] Support ‘-T <tty>’ even if MKSH_SMALL and fix it
    - [tg] Remove "which" alias "whence -p" to allow "which -a" in
      dot.mkshrc and add more examples, some commented out
    - [tg] Fix print_columns() issue with displaying items where
      characters had differing number of octets and columns, and the
      off-by-one which had hidden this problem with 2-octet 1-column
      and 3-octet 2-column chars
    - [tg] Beautify the manpage in both AT&T nroff and GNU groff
    - [tg] Fix null-expansion of “${x%?}” if $x is unset
    - [tg] Make some globbing (${x%?}) operate on characters instead of
      octets; update manual page to reflect that others still do and
      remove wording that let people think we’d ever support POSuX
      character classes
    - [tg] New ${%foo} returning width of $foo in screen columns, or -1
      if $foo contains an ASCII/latin1/Unicode C0/C1 control character
    - [tg] Fix subtle possible portability problem wrt. CHILD_MAX
    - [tg] Honour ±U on command line of an interactive shell
    - [tg] Fix dead stores and other bugs pointed out by the Clang
      static analyser; put assertions in places it has false positives
    - [tg] Plug uninitialised memory access and possible out-of-bounds
      read of a buffer caught by Valgrind; change one memcpy(3) to
      memmove(3) where srcbuf and dstbuf overlap; place (-DDEBUG)
      workaround for false positive
    - [tg] Rework __attribute__ compiler capability check
    - [tg] Apply errno save/restore related fix from (sync with) oksh
    - [tg] Build.sh: output message when switching from
      autoconfiguration to building / output generation (requested by
      Matt “lewellyn” Lewandowsky); use “conftest.c” ipv “scn.c” (to
      please ccache); ...
    - [tg] Allow “unset foo[*]” (keep attributes) and “typeset foo[*]”
      (for forward-compatibility; R39b it’s the same as “typeset foo”)
    - [tg] When persistent history is enabled (but not MKSH_SMALL) and
      used, intertwine the shells concurrently accessing $HISTFILE
      better ⇒ sync on empty or duplicate line as well (requested by
      Maximilian “mxey” Gaß)
    - [tg] Split off “set ±o posix” and “set ±o sh” again, to be
      somewhat more compatible to various old or vendor versions of
      pdksh and mksh:
      + MKSH_BINSHREDUCED sets FSH but not FPOSIX
      + MKSH_MIDNIGHTBSD01ASH_COMPAT depends on FSH but not FPOSIX
      + The echo built-in behaves the same for FPOSIX and FSH
      + File descriptors > 2 are not closed for both FPOSIX and FSH
      + Both “set -o posix” and “set -o sh” call “set +o braceexpand”
      + In contrast to R39 and below, the errorlevel of
        “set -- $(getopt ab:c "$@")” is now the same in ksh and
        FPOSIX mode (0) and only FSH will use the errorlevel of getopt
        (used to be the other way round)
    - [tg] Document some more shortcomings in the mksh(1) manual page
    - Contributed printf.c fixes:
      + [tg] Make printf(1) builtin use “$'…'” mode, like ksh93
      + [tg] Fix const-cleanliness
  * Remove patches now integrated in upstream or no longer needed
  * Bump Standards-Version, no relevant change
  * Apply patches inside the top-level directory
  * debian/source/format: Enforce "1.0" manually, for now
  * debian/README.source: New, by zack's suggestion, to document some
    particulars of the source package and why I'm not using 3.0 yet
  * debian/README.Debian, debian/mksh.docs: New, document dash bug
  * debian/control: I'm sure we don't need to B-D on locales-all [m68k]
  * debian/control: tweak package short description to well-known text
    and sync long description with upstream's
  * debian/copyright: Update, sync with upstream
  * Rename build/ into builddir/ to avoid phony target vs pathname
    conflict in Makefile (debian/rules)
  * debian/rules: Ensure we use the C locale during build (especially
    for patch application collation order)
  * debian/mksh.examples, debian/rules: Split out dh_installexamples args
  * debian/rules: Update for R39c, printf.c.1.14 particulars
  * debian/rules: When building, try with -combine first but retry if it
    fails, like my OpenSuSE Buildservice packages do (cf. LP: #375604)
  * debian/control: Remove DMUA, I'm a DD now
  * debian/diffs/backport-fixes.diff: New, fixes not yet in R39c
 .
mksh (39.1-4) unstable; urgency=low
 .
  * Update danish translation, Tak tazz
  * debian/diffs/backport-echo-noescapes.diff: new, backport fix
    for "echo [-n] 'foo\x40bar'" expanding even in sh mode
  * debian/diffs/*: refresh and bump version number
  * debian/control: Update and correct package description
 .
mksh (39.1-3) unstable; urgency=low
 .
  * Add support for using pax instead of cpio for extraction
  * Backport fix for return code bug (Closes: #548744)
 .
mksh (39.1-2) unstable; urgency=low
 .
  * debian/rules: build mksh-small without floating point support
    also, because it’s ⓐ huge and ⓑ buggy in dietlibc
  * debian/diffs/backport-function-parens.diff: new, support the
    "function stop () {" bashism sometimes popular in sh scripts
  * debian/diffs/zz-version.diff: fix an oversight and use the
    actual 39.1-* version number instead of 38.9.yyyymmdd-* from
    when this patch was first being created in an experimental
    version; refresh diff against original files; use -U1 instead
    of -up for sh.h diff to not get fuzz at the RCS ID
 .
mksh (39.1-1) unstable; urgency=low
 .
  * New upstream version R39 (despite #540512, I got fed up waiting for
    Guillem/Gerrit to contact me), Closes: #541617; complete ChangeLog:
    - [tg] Shut up a bogus gcc warning during configuration process
    - [tg] Spell AT&T consistently in the source code
    - [tg] Tweak mksh(1) manual page, from wbx@ and «lewellyn:#ksh»
    - [tg] dot.mkshrc: fix $@ vs. $* mix-up
    - [tg] dot.mkshrc: add DJB cdb hash function
    - [tg] Sync with oksh: fix Vi editing mode word erase handling, again
    - [tg] Skip whitespace between POSIX style shell function name and
      its definition parenthesēs during detection if an alias of the same
      name already exists to be more robust (Debian Closes: #535970)
    - [tg] Build system improvements for ACK and nwcc, both on Debian sid
    - [tg] Fix spelling error in changelog discovered by Lintian
    - [tg] Aligh “set -o nounset” / “set -u” behaviour with future POSIX
      standard, as discussed with GNU bash maintainers, David Korn from
      AT&T ksh93, and The Open Group; prompted by use in Debian;
      Closes: #539538
    - [tg] add an unsupported way to make printf(1) a builtin
    - [tg] Build system and regression test code and comment improvements:
      better and more comments matching reality better; more reliability
      w.r.t. passed CPPFLAGS; more of the MKSH_SMALL changes may be
      overridden, all of them are now enumerated on the webpage; fixed
      some breakage; portability
    - [tg] MKSH_NOPWNAM and MKSH_SMALL will now both disable the ~fac/
      (homedir) expansion code wholly if defined, not just getpwnam(3)
      calls
    - [tg] shells without job control no longer define the standard
      “stop” and “suspend” aliases (they are pointless anyway);
      regression tests know
    - [tg] use system RCS ID macros on MirBSD if decent enough
    - [tg] shut up bogus gcc 4.5/trunk warnings caused by
      over-optimisation
    - [tg] restore ANSI C compilability broken in R38 (speed up, even)
    - [tg] use memcpy(3) ipv strlcpy(3) if possible and safe and secure
  * Integrate czech translation update, Dêkuji; Closes: #534788
  * Switch to debhelper 5, by suggestion of Patrick “aptituz” Schönfeld
  * Add (commented out) framework for building with klibc, pending
    bugfixes and enhancements I submitted to the Debian BTS; can be
    customised for with/without MKSH_SMALL and dynamic/static linkage
  * debian/copyright: remove setmode.c remark, it is never used:
    mksh-full has it provided by libbsd; mksh-diet, mksh-small, and
    mksh-klibc have the mknod builtin disabled and do not need it;
    strlcpy.c is provided by libbsd, dietlibc and klibc, so neither
    mksh-full nor mksh-diet (nor mksh-klibc) need it, only mksh-small
    in the glibc version (on platforms where dietlibc is unavailable)
  * debian/rules: Append -e to sub-make command line, to force it to
    use the correct build environment (mostly CFLAGS)
  * Apply policy compliance (-o posix if run as sh) to mksh-small
  * Disable duplication of -Wall on the compiler command line
  * debian/rules: improve comments
  * mksh-klibc: debian/rules can now build an MKSH_SMALL flavour
  * Let mksh have all builtins dash has; Closes: #532343
    ‣ New diffs/add-builtin-chdir.diff: add “chdir” builtin (= “cd”)
    ‣ New diffs/add-builtin-printf.diff: add “printf” builtin (manpage)
    ‣ debian/copyright, debian/rules: new source file printf.c (code),
      install and use it; make sure klibc has strtod(3) disabled
    ‣ New diffs/add-builtin_common.diff: common part of the diff
  * New diffs/zz-version.diff: use Debian specific ksh version number
  * debian/rules: reorder some assignments to make it better readable
    and add and improve comments
  * debian/watch: add RCS ID and comments
  * debian/mksh.menu: don’t create an entry for Diet mksh any more
  * debian/mksh.menu, debian/mksh*.xpm: add icons, long description
  * Update spanish translation; from asarch via IRC, ¡gracias!
  * Fix a spelling error and repetitiveness in the German translation
  * Use portuguese debconf translation for the missing parts of the
    brasilian-portuguese translations and mark them fuzzy
  * Translate the missing dutch parts myself (as good as I can)
  * Convert all debconf translation files to UTF-8
  * Remove VCS-CVS field override; the Lintian maintainers have
    agreed to adjust it so that anoncvs-over-ssh is not criticised
  * Switch to Debian Policy 3.8.3, no relevant changes
 .
mksh (38.3-1) unstable; urgency=low
 .
  * New upstream version R38c; complete ChangeLog:
    - [tg] Fix regression tests on OSes insisting on a shebang (Cygwin)
    - [Sean Boudreau] QNX 6.4.2 ed(1) is said to have the bugs fixed
    - [tg] Build.sh bugfixes: -DMKSH_BINSHREDUCED can also be given
      without -DMKSH_SMALL; allow HAVE_REALPATH=x and HAVE_REVOKE=x in
      the environment to re-enable these even if -DMKSH_SMALL disables
      them by default, like mknod already did
    - [tg] -DMKSH_ASSUME_UTF8=0 skips the environment checks, like
      -DMKSH_ASSUME_UTF8=1, but disables the utf8-mode
    - [tg] Apply some more KNF – style(9) – to the source; clean it up
      and further optimise for small size
    - [OpenBSD] Fix segfaults caused by missing check for end of input
      in the tokeniser on “let --” and other input
    - [OpenBSD] Make Vi editing mode ^W behave like Emacs mode’s
    - [tg] If no killpg(3) is available, use kill(2) and hope it works
    - [tg] -DMKSH_NO_LIMITS skips trying to build the ulimit code
  * debian/rules: use DEB_BUILD_ARCH, not DEB_HOST_ARCH, to determine
    if dietlibc should be excluded on certain architectures where it
    is known to fail
 .
mksh (38.2-1) unstable; urgency=low
 .
  * debian/rules: fix typo in buildd admin instructions for openpty()
  * New upstream version R38b; complete ChangeLog:
    - [André Wösten] Add __NO_EXT_QNX to avoid picking up the wrong
      waitfor() from <libutil.h> in (while porting to) QNX 6.4
    - [tg] Plug memory corruption issue introduced in R38
    - [tg] Amend dot.mkshrc with a base64 en-/decoder in shell
    - [tg] Import a manpage fix via OpenBSD from Alan R. S. Bueno
 .
mksh (38.1-1) unstable; urgency=low
 .
  * debian/control: depend on locales-all on m68k because its
    locales and glibc packages are not up to date / installable
  * debian/rules: ignore localedef failure (uncritical to build)
  * New upstream version R38; complete ChangeLog:
    - [tg] Improve regression test output debugging
    - [tg] Fix <libutil.h> prerequisites on MidnightBSD in mirtoconf
    - [tg] Mention that RedHat BZ#496791 cannot currently be fixed in
      the manpage by discouraging use of apostrophes in comments in
      comsubs; add appropriate (expected-fail) regression tests
    - [tg] Sync with OpenBSD ksh (mostly a no-op)
    - [James Butler] Add search-history-up and search-history-down
      keybindings (tcsh-like) to the Emacs command line editing mode
    - [tg] Bind new search-history-{up,down} to ANSI PgUp and PgDn keys
    - [tg] Document ANSI default keybindings (↑↓←→ Home End Del
      PgUp PgDn) in the mksh(1) manual page as well
    - [tg] Optimise internal UTF-8 handling code for size and reusability
    - [tg] Incompatible change: ${foo:1:2} and ${#foo} now operate on
      characters, not on bytes. Characters are octets (set +U) or
      (utf8-mode) MirOS OPTU-8 multibyte characters (set -U)
    - [tg] Improve regression tests relating to ${foo:1:2} and ${#foo} and
      let wc=1#x and utf8-mode
    - [tg] Use per-file copyright notices, move global text to manpage
    - [tg] Expose new MKSH_MIDNIGHTBSD01ASH_COMPAT ifdef; change it to only
      trigger if FPOSIX (or MKSH_BINSHREDUCED and /bin/sh)
    - [tg] Remove already-dead “#if 0” style debugging code
    - [tg] Change some code into a more portable fashion, optimise
    - [tg] Allow [[ $foo ]] (ksh93 extension) mentioned by pgas
    - [tg] Clean up mksh and the contributed arc4random.c for some
      conversion, enum and other warnings for gcc-snapshot trunk r147610
    - [tg] Ensure no function uses more than 768 bytes of stack either
    - [tg, wbx] Add extension to make “!string” lines work like in GNU bash
  * debian/rules, debian/copyright: adjust to upstream changes,
    provide separate copyright file for Debian
  * Remove package-uses-deprecated-debhelper-compat-version
    lintian override to show up in statistics, we want to
    retain the old debhelper version to facilitate backports
 .
mksh (37.3-2) unstable; urgency=low
 .
  * Provide a way to not use dietlibc for /bin/mksh-static
    on certain architectures; use it for s390 (Closes: #523088)
  * debian/control: run ispell over it
 .
mksh (37.3-1) unstable; urgency=low
 .
  * New upstream version R37c; complete ChangeLog:
    - [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
  * debian/rules: try to at least execute the built binaries in !nocheck
    cases, to prevent totally unusable packages from being published;
    Closes: #522779
  * Use LOCPATH and a temporarily generated UTF-8 locale for the regres-
    sion test suite (from Steve “vorlon” Langasek); depend on localedef
    Closes: #522777
  * debian/control: add comment where the dietlibc list comes from
  * Sync package description, etc. with R37c release and upstream
  * debian/control: mention VCS-CVS syntax and place of upstream source
 .
mksh (37.2-1) unstable; urgency=low
 .
  * New upstream version R37b; complete ChangeLog:
    - [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
  * New upstream version R37; complete ChangeLog:
    - [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
  * debian/rules: add support for applying patches to the source code
  * debian/rules: build with new ‘-combine’ option for better optimisation
  * Fix debconf checks if dash is uninstalled; Closes: #518355
  * Use 「--package mksh」 consistently with dpkg-divert
  * debian/control: update package description
  * Upgrade Standards-Version to 3.8.1
    - debian/rules: support nocheck in DEB_BUILD_OPTIONS
    - debian/control: add RCS Id as comment field
  * debian/source.lintian-overrides: add (things not deemed fixable)
    - package-uses-deprecated-debhelper-compat-version (who cares)
    - vcs-field-uses-not-recommended-uri-format (source is available
      via AnonCVS, but pserver must die!)
  * debian/control: prepend :ext: anoncvs protocol to VCS-CVS field
 .
mksh (36.2-1) unstable; urgency=low
 .
  * Reword package description, avoid things not of interest to
    a Debian user; Closes: #505882
  * Switch from patching copyright to merely prepending information
  * Remove all patches, as they have been integrated upstream; add
    ‘-DMKSH_BINSHREDUCED’ to CPPFLAGS to enable the functionality
  * New upstream version; complete ChangeLog:
    - [tg] Add check for naming the output file “scn” instead of “a.out”
      or “a.exe” when compiling scn.c, for Haiku, from Adam “replaced” Hoka
    - [tg] Rewrite utf_backch macro and x_bs2 function into a combined
      x_bs3 function for the Emacs editing mode, to optimise them and get
      rid of the use of __typeof__ (suggested by Anders “ragge” Magnusson
      after the problem was spot by replaced) and one of the uses of the
      statements-as-expressions feature
    - [ahoka] Add mirtoconf check for nice(3), missing on Haiku
    - [tg] Remove all uses of the statements-as-expressions feature by
      rewriting the source code accordingly and optimising some parts
    - [tg] Recognise nwcc (Nils Weller’s C compiler) in Build.sh
    - [tg] If <strings.h> exists, pull it in for strcasecmp(3)
    - [tg] Welcome QNX/Neutrino; work around broken /bin/ed
    - [tg] Simplify, shorten, speed up PS1 in dot.mkshrc
    - [tg] Remove some dead code courtesy of scan-build native runs
    - [tg] Add some casts to prevent LLVM+Clang warnings
    - [tg] Work around llvm-gcc-4.2.1 -Wformat pickyness
    - [tg] Add new Build.sh option ‘-llvm’ (clang, llvm-gcc)
    - [tg] Speed up mirtoconf if ‘-DMKSH_ASSUME_UTF8’ is set
    - [tg] Add the workaround for Debian #492377 into the main mirtoconf
      function (hiding gcc errors during the configure phase) because
      Gentoo has similar scanner issues; reported by Hanno Böck
    - [tg] If an MKSH_SMALL has arc4random(3), skip the rand(3)/srand(3)
      fall-back altogether to shrink size, also removed need for time(3)
    - [tg] Fix alias expansion recursion check if the word to be expanded
      is immediately followed by end of input, add test case; spotted by
      Michael Hlavinka in pdksh and mksh; RedHat #474115
    - [tg] Fix string/wdstring confusion preventing bashiop (&>foo) to
      work inside a function, add regression test, limit to 99 fds
    - [tg] change regression tests to ‘set -U’ or ‘set +U̲ instead of
      ‘set -o utf8-hack’, as well as query using ‘$-’ ipv ‘$(set +o)’
      (easier and more reliable)
    - [tg] Add comment to regression tests which can fail on slow machines
      or Cygwin environments due to timing issues
    - [tg] Remove a lot of superfluous casts, improve type cleanliness
    - [tg] Insert a couple of /* CONSTCOND */ for lint
  * New source package and build structure:
    - distfile is now packaged *inside* the orig tarball instead of repak-
      kaged, similar to PostgreSQL
    - debian/rules “patch” target takes care of it, as per Policy Manual
    - debian-specific things (debian/ directory and all patches) are kept
      in a publically accessible CVS repository
    - VCS-CVS and VCS-Browser fields have been added to debian/control
    - source is extracted to ./mksh and built, using relative paths to the
      source code, in ./build/full and ./build/small; both are .cvsignore’d
    - most files now carry an RCS ID
    - paths in mksh.install, mksh.manpages, rules have been adjusted
  * word-wrap debian/control lines to 80c
  * add build dependency on cpio (for distfile extraction)
  * for non-pbuilder testsuite runs (needed on gnubber), rename the ./manual
    file tested for to ./attended to clarify its purpose
  * debian/rules: share code instead of duplicating it
  * debian/rules: fix testsuite use of $? and $x (gmake wants $$? and $$x)
  * debian/rules: use sensible stamp files and new paths, coming along with
    the new “patch” target
  * remove the ‘-Q’ option from Build.sh invocation, which is gone


Override entries for your package:

Announcing to backports-changes@lists.backports.org


Your package contains new components which requires manual editing of
the override file.  It is ok otherwise, so please be patient.  New
packages are usually added to the override file about once a week.

You may have gotten the distribution wrong.  You'll get warnings above
if files already exist in other distributions.

Reply to: