./shells/ksh93, Actively developed fork of AT&T KornShell 93u+

[ Image CVSweb ] [ Image Homepage ] [ Image RSS ] [ Image Required by ] [ Image Add to tracker ]


Branch: CURRENT, Version: 1.0.10nb2, Package name: ksh93-1.0.10nb2, Maintainer: vins

The ksh 93u+m reboot incorporates many of the bugfixes found in the last
unstable AST beta version (93v-), backported to the most recent official
release (93u+), plus patches from OpenSUSE, Red Hat, and Solaris, as
well as many new fixes from the community.


Master sites:

Filesize: 1972.203 KB

Version history: (Expand)


CVS history: (Expand)


   2025-11-06 20:08:48 by Paolo Vincenzo Olivo | Files touched by this commit (1)
Log message:
shells/ksh93: kshrc: add copyright notice

File containes code from illumos.
   2025-11-04 19:21:47 by Paolo Vincenzo Olivo | Files touched by this commit (4)
Log message:
shells/ksh93: use simpler system-wide configuration
   2025-11-03 22:47:14 by Paolo Vincenzo Olivo | Files touched by this commit (5)
Log message:
shells/ksh93: include system-wide configuration file
   2024-11-04 18:01:48 by Nia Alarie | Files touched by this commit (3)
Log message:
ksh93: Honour PKGMANDIR
   2024-08-24 15:37:40 by Paolo Vincenzo Olivo | Files touched by this commit (1)
Log message:
shells/ksh93: fix broken build (PLIST issue)
   2024-08-22 19:49:20 by Paolo Vincenzo Olivo | Files touched by this commit (2) | Package updated
Log message:
shells/ksh93: update to 1.0.10

# Main changes between ksh 93u+m/1.0.9 and 93u+m/1.0.10:

Fixed a serious and longstanding bug in the arithmetic subsystem that
was triggered on non-Intel processors (such as ARM): any division of an
integer by a negative integer threw a spurious "divide by zero" error.
This bug has been in ksh since 2005.

Fixed a regression where a broken pipe signal (SIGPIPE), when occurring
in a pipe construct within a subshell, caused incorrect signal handling
in the parent/main shell, in some cases causing a script to abort.

Fixed a bug where printf %T, after having printed the time in UTC once
with the TZ variable set to "UTC", would always print the time in UTC
from then on, even if the TZ variable was changed to another time zone.

The history expansion character (! by default) is now not processed when
immediately following ${. This makes it possible to use expansion syntax
like ${!varname} and ${!prefix@} on the interactive command line with
the histexpand option on; these no longer trigger an "event not found"
error.

The shell is now capable of handling more than 32767 simultaneous
background jobs, subject to system limitations.
   2024-07-30 17:17:08 by Paolo Vincenzo Olivo | Files touched by this commit (5) | Package updated
Log message:
shells/ksh93: update to v1.0.9

Many PLIST changes since the main binary is now linked dinamically.

# upstream changes

* Android/Termux is now a supported platform. Build dependencies:
  binutils, clang, getconf. Runtime dependencies (optional):
  ncurses-utils, getconf.

* Reintroduced support for building a dynamically linked
  ksh(1)/shcomp(1), with libast, libdll, libcmd, and libshell available
  to other programs as dynamic libraries. bin/package install
  /your/basepath will install development headers. The dynamically
  linked version is built in a dyn subdirectory; there are no changes to
  the statically linked version. Dynamic linking is currently tested and
  supported on Linux, Android, macOS, all the BSDs, illumos, Solaris,
  QNX, and Haiku.

* On systems where the external printf(1) utility supports deprecated
  pre-POSIX syntax for formatters starting with -, ksh now adapts its
  built-in printf to match, for compatibility with system scripts.
  However, ksh's built-in printf options such as -v or --man are not
  affected.

* Fixed a regression in the printf built-in, introduced in 93u+m/1.0.5,
  where each instance of \0 or %Z in the format operand caused a string
  argument to be incorrectly skipped.

* Fixed a regression, introduced in 93u+m/1.0.5, in ordinal specifiers
  in printf %T date specifications. For example, printf '%(%F)T\n' '4th
  tuesday in march 2016' wrongly printed '2016-04-09' and now again
  correctly prints '2016-03-22'.

* Fixed a regression of return within traps, reintroduced in 93u+m/1.0.8
  after being fixed in 93u+m/1.0.0. The regression caused a return or
  exit with no arguments to assume the before-trap exit status instead
  of that of the last-run command. This broke the shipped autocd
  function.

* Fixed a longstanding bug in shell arithmetic: the representation of
  negative integers with a base other than 10 was incorrectly treated as
  unsigned long. For example, typeset -i16 n=-12; echo $n now correctly
  outputs -16#c and no longer ouputs 16#fffffffffffffff4.  Fixed a bug,
  introduced in ksh93q+ 2005-05-22, that stopped an append assignment
  from working together with a declaration command. For example,typeset
  var+=value or export var+=value now again work as expected.  Fixed a
  longstanding bug where the default terminal width for typeset -L, -R,
  or -Z, if not given, was miscalculated for multibyte or control
  characters.  Fixed: expansions of name references in loops were
  incorrectly treated as invariant so they yielded the wrong values.

* If a .get or .getn discipline function is set for a variable, it is no
  longer incorrectly triggered when performing an arithmetic assignment
  on that variable; only the .set discipline is now triggered (as
  documented).

* Many other bug fixes (see the NEWS file).
   2024-01-14 16:23:52 by Paolo Vincenzo Olivo | Files touched by this commit (2) | Package updated
Log message:
shells/ksh93: update to ksh 93u+m/1.0.8

# CHANGES (since 1.0.7)

  * Fixed a regression in the behaviour of exit in a trap action. The
    exit status used when no argument is given to exit is now once again
    the exit status of the last command executed before the trap action.

  * Fixed a race condition, introduced in 1.0.7, that occurred on some
    systems when running an external command with a standard output
    redirection from a command substitution.

  * Fixed an init-time crash on failure to trim the shell command
    history file due to a non-writeable parent directory; ksh now prints
    a warning instead.

  * The kill built-in command now correctly refuses to issue SIGSTOP to
    the shell's own process if the shell is a login shell.