diff --git a/ANNOUNCE b/ANNOUNCE index 1810ee5b2bf9..9671fa9e35aa 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -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 ### @@ -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, diff --git a/NEWS b/NEWS index 6e8e164c194a..f9b6e463c023 100644 --- a/NEWS +++ b/NEWS @@ -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 diff --git a/TODO b/TODO index 574304240891..45c6a9cee076 100644 --- a/TODO +++ b/TODO @@ -1,4 +1,4 @@ -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 @@ -6,9 +6,6 @@ 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 @@ -48,7 +45,7 @@ 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 @@ -56,3 +53,7 @@ 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 diff --git a/src/cmd/ksh93/include/version.h b/src/cmd/ksh93/include/version.h index 04645e4f61c4..b516bff6d8f1 100644 --- a/src/cmd/ksh93/include/version.h +++ b/src/cmd/ksh93/include/version.h @@ -17,7 +17,7 @@ #include #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