Skip to content

Commit

Permalink
Release 1.0.10
Browse files Browse the repository at this point in the history
Here is the tenth ksh 93u+m/1.0 bugfix release -- exactly two years
after 93u+m/1.0.0 and twelve years after 93u+. Unfortunately, we're
not done fixing bugs yet, but progress continues steadily.

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.

- 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 psosible
  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.
  • Loading branch information
McDutchie committed Aug 1, 2024
1 parent 6e810b2 commit f0999ab
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 16 deletions.
40 changes: 30 additions & 10 deletions ANNOUNCE
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
Announcing: KornShell 93u+m/1.0.9
Announcing: KornShell 93u+m/1.0.10
https://github.com/ksh93/ksh

Here is the ninth ksh 93u+m/1.0 bugfix release. This release contains many
fixes of old and not-so-old bugs (including a couple of regressions in the
printf built-in introduced in 93u+m/1.0.5), adds Android/Termux as a
supported platform, and reintroduces the ability to build a dynamically
linked ksh (with libast, libdll, libcmd, and libshell available for other
applications to use) on most supported platforms.
Here is the tenth ksh 93u+m/1.0 bugfix release -- exactly two years after
93u+m/1.0.0 and twelve years after 93u+. Unfortunately, we're not done
fixing bugs yet, but progress continues steadily.

Further below is an overview of the main changes. For greater detail, see
the NEWS file in the distribution. For complete detail, see the git(1)
commit log, which has full documentation of every significant change.
This release fixes a serious 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. There are other bug fixes as well; see below.

For greater detail, see the NEWS file in the distribution. For complete
detail, see the git(1) commit log, which has full documentation of every
significant change.

### HOW TO GET IT ###

Expand Down Expand Up @@ -72,6 +74,24 @@ Feel free to use Discussions to introduce yourself to the community.
You can also join the mailing list/Google group at:
https://groups.google.com/g/korn-shell

### 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.
- 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 psosible 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.

### MAIN CHANGES between ksh 93u+m/1.0.8 and 93u+m/1.0.9 ###

- Android/Termux is now a supported platform. Build dependencies: binutils,
Expand Down
4 changes: 4 additions & 0 deletions NEWS
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@ This documents significant changes in the 1.0 branch of ksh 93u+m.
For full details, see the git log at: https://github.com/ksh93/ksh/tree/1.0
Uppercase BUG_* IDs are shell bug IDs as used by the Modernish shell library.

2024-08-01:

- Release 1.0.10 -- exactly two years after 1.0.0 and twelve years after 93u+.

2024-07-31:

- Fixed a bug where printf %T, after having printed the time in UTC once
Expand Down
11 changes: 6 additions & 5 deletions TODO
Original file line number Diff line number Diff line change
@@ -1,14 +1,11 @@
The following bugs and issues are known for ksh 93u+m 1.0.9:
The following bugs and issues are known for ksh 93u+m 1.0.10:

Memory leak when initialising associative array in subshell
https://github.com/ksh93/ksh/issues/94

command substitution botches output of non-waited-for child processes
https://github.com/ksh93/ksh/issues/124

typeset -L/-R: string length breaks on multibyte characters
https://github.com/ksh93/ksh/issues/189

Segfault with very large extended glob patterns
https://github.com/ksh93/ksh/issues/207

Expand Down Expand Up @@ -48,11 +45,15 @@ https://github.com/ksh93/ksh/issues/672
bogus typeset -p output for compounds with disciplines
https://github.com/ksh93/ksh/issues/729

test a = a b: undetected error bug
test a = a b: undetected error
https://github.com/ksh93/ksh/issues/739

Occasional "write error" when writing to pipe
https://github.com/ksh93/ksh/issues/741

sleep 10 | read hangs interactive shell after ^Z
https://github.com/ksh93/ksh/issues/750

Shell arithmetic is broken for integer values beyond the system's maximum
float precision
https://github.com/ksh93/ksh/issues/771
2 changes: 1 addition & 1 deletion src/cmd/ksh93/include/version.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
#include <releaseflags.h>

#define SH_RELEASE_FORK "93u+m" /* only change if you develop a new ksh93 fork */
#define SH_RELEASE_SVER "1.0.10-beta" /* semantic version number: https://semver.org */
#define SH_RELEASE_SVER "1.0.10" /* semantic version number: https://semver.org */
#define SH_RELEASE_DATE "2024-08-01" /* must be in this format for $((.sh.version)) */
#define SH_RELEASE_CPYR "(c) 2020-2024 Contributors to ksh " SH_RELEASE_FORK

Expand Down

0 comments on commit f0999ab

Please sign in to comment.