2021-05-10 16:40:44 +00:00
|
|
|
TODO for ksh 93u+m
|
2020-05-13 13:17:37 +00:00
|
|
|
|
2021-01-26 17:15:23 +00:00
|
|
|
See the issue tracker:
|
|
|
|
https://github.com/ksh93/ksh/issues
|
|
|
|
|
2021-05-10 16:40:44 +00:00
|
|
|
Known bugs in ksh 93u+m 1.0.0-beta.1 (help is wanted to fix these):
|
|
|
|
|
|
|
|
* 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
|
|
|
|
|
|
|
|
* Intermittent coprocess hang on Debian/Ubuntu and Solaris
|
|
|
|
https://github.com/ksh93/ksh/issues/132
|
|
|
|
|
|
|
|
* Wrong typeset -p output after unsetting multidimensional array elements
|
|
|
|
https://github.com/ksh93/ksh/issues/148
|
|
|
|
|
|
|
|
* File descriptor is unexpectedly closed after exec in subshell
|
|
|
|
https://github.com/ksh93/ksh/issues/161
|
|
|
|
|
|
|
|
* printf %T date parsing: GNU-style "ago" date spec completely broken
|
|
|
|
https://github.com/ksh93/ksh/issues/182
|
|
|
|
|
|
|
|
* typeset -L/-R: string length breaks on multibyte characters
|
|
|
|
https://github.com/ksh93/ksh/issues/189
|
|
|
|
|
|
|
|
* Linux i386: variable expansion corruption in single-line function
|
|
|
|
https://github.com/ksh93/ksh/issues/203
|
|
|
|
|
|
|
|
* Segfault with very large extended glob patterns
|
|
|
|
https://github.com/ksh93/ksh/issues/207
|
|
|
|
|
|
|
|
* funcname.ksh crashes under standard malloc
|
|
|
|
https://github.com/ksh93/ksh/issues/212
|
|
|
|
|
|
|
|
* process substitution cannot be part of a larger argument
|
|
|
|
https://github.com/ksh93/ksh/issues/215
|
|
|
|
|
|
|
|
* Compound array regression on OpenBSD with standard malloc
|
|
|
|
https://github.com/ksh93/ksh/issues/229
|
|
|
|
|
|
|
|
* 'typeset -m'-related crash on OpenBSD compiled with standard malloc
|
|
|
|
https://github.com/ksh93/ksh/issues/231
|
|
|
|
|
|
|
|
* Freeze/crash on OpenBSD with -D_std_malloc involving typeset and command
|
|
|
|
substitution
|
|
|
|
https://github.com/ksh93/ksh/issues/264
|
|
|
|
|
|
|
|
* Nested compound assignment misparsed in $(...) command substitution
|
|
|
|
https://github.com/ksh93/ksh/issues/269
|
|
|
|
|
|
|
|
Enhancements to do:
|
|
|
|
|
|
|
|
* Implement to-be-POSIX 'local' builtin
|
|
|
|
https://github.com/ksh93/ksh/issues/123
|
|
|
|
|
|
|
|
* Add -T (-o functrace) option as in bash
|
|
|
|
https://github.com/ksh93/ksh/issues/162
|
|
|
|
|
|
|
|
* Unicode code points in $'...' strings should vary according to the locale
|
|
|
|
https://github.com/ksh93/ksh/issues/193
|
|
|
|
|
|
|
|
* Re-allow building dynamic libraries
|
|
|
|
https://github.com/ksh93/ksh/issues/302
|
|
|
|
|
2020-06-06 14:45:37 +00:00
|
|
|
______
|
|
|
|
Fix regression test failures:
|
|
|
|
|
Fixes to compile on Solaris variants, NetBSD, and NixOS
Solaris, Illumos distributions, and NetBSD need LDFLAGS set to link
explicitly to libm, otherwise, due to as-yet unknown reasons, the
src/lib/libdll/features/dll fails to write a valid header file and
compilation fails due to unknown identifiers such as Dllscan_t.
This commit adds the flag on those systems.
NixOS is a Linux distro that uses very different paths from the
usual Unix conventions (though it's POSIX compliant), and the
regression tests still needed a lot of tweaks to be compatible.
src/cmd/INIT/package.sh, bin/package:
- On SunOS (Solaris and illumos distros) and NetBSD, add '-lm' to
LDFLAGS before compiling.
src/cmd/INIT/mamprobe.sh, bin/mamprobe,
src/cmd/INIT/execrate.sh, bin/execrate:
- Instead of only in /bin, /usr/bin, /sbin and /usr/sbin, search
utilities in the path given by the OS 'getconf PATH', and use the
user's original $PATH as a fallback.
src/cmd/ksh93/tests/*.sh:
- Miscellaneous portability fixes, mainly elimination of unportable
hardcoded paths to commands.
- basic.sh: Remove test for 'time' keyword millisecond precision.
It was racy and could fail depending on system and system load.
2020-08-03 07:57:00 +00:00
|
|
|
- There are many regression test failures on NetBSD.
|
2020-06-06 14:45:37 +00:00
|
|
|
|
2021-02-20 23:19:50 +00:00
|
|
|
- There are some serious regression test failures on OpenBSD when ksh
|
|
|
|
is compiled with AST vmalloc disabled, so the system standard malloc(3)
|
|
|
|
is used. These probably represent real ksh93 bugs exposed by OpenBSD's
|
|
|
|
security hardening mechanisms.
|
|
|
|
|
2021-05-10 16:40:44 +00:00
|
|
|
- Several known memory leaks have their tests disabled in tests/leaks.sh
|
|
|
|
and are marked TODO. These need tracking down and fixing.
|
|
|
|
|
2020-05-13 14:16:24 +00:00
|
|
|
______
|
2020-05-13 13:17:37 +00:00
|
|
|
Fix currently known bugs affecting shell scripting. These are identified by
|
|
|
|
their modernish IDs. For exact details, see code/comments in:
|
|
|
|
https://github.com/modernish/modernish/tree/0.16/lib/modernish/cap/
|
|
|
|
|
|
|
|
- BUG_BRACQUOT: shell quoting within bracket patterns has no effect. This
|
|
|
|
bug means the '-' retains it special meaning of 'character range', and an
|
|
|
|
initial ! (and, on some shells, ^) retains the meaning of negation, even
|
|
|
|
in quoted strings within bracket patterns, including quoted variables.
|
|
|
|
|
|
|
|
- BUG_IFSGLOBS: In glob pattern matching (as in case or parameter
|
|
|
|
substitution with # and %), if IFS starts with ? or * and the "$*"
|
|
|
|
parameter expansion inserts any IFS separator characters, those characters
|
|
|
|
are erroneously interpreted as wildcards when quoted "$*" is used as the
|
|
|
|
glob pattern.
|