TODO 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. TODO for ksh 93u+m
  2. See the issue tracker for up-to-date information:
  3. https://github.com/ksh93/ksh/issues
  4. ______
  5. Enhancements to do:
  6. * Add -T (-o functrace) option as in bash
  7. https://github.com/ksh93/ksh/issues/162
  8. * History pattern search menu (SHOPT_EDPREDICT) needs work
  9. https://github.com/ksh93/ksh/issues/233
  10. * Use real pipes instead of sockets
  11. https://github.com/ksh93/ksh/issues/327
  12. ______
  13. Known bugs in ksh 93u+m 1.0.0-beta.2 (HELP IS WANTED to fix these):
  14. * Memory leak when initialising associative array in subshell
  15. https://github.com/ksh93/ksh/issues/94
  16. * command substitution botches output of non-waited-for child processes
  17. https://github.com/ksh93/ksh/issues/124
  18. * Intermittent coprocess hang on Debian/Ubuntu and Solaris
  19. https://github.com/ksh93/ksh/issues/132
  20. * wrong typeset -p output after unsetting multidimensional array elements
  21. https://github.com/ksh93/ksh/issues/148
  22. * File descriptor is unexpectedly closed after exec in subshell
  23. https://github.com/ksh93/ksh/issues/161
  24. * printf %T date parsing: GNU-style "ago" date spec completely broken
  25. https://github.com/ksh93/ksh/issues/182
  26. * typeset -L/-R: string length breaks on multibyte characters
  27. https://github.com/ksh93/ksh/issues/189
  28. * Linux i386: variable expansion corruption in single-line function
  29. https://github.com/ksh93/ksh/issues/203
  30. * Segfault with very large extended glob patterns
  31. https://github.com/ksh93/ksh/issues/207
  32. * funcname.ksh crashes under standard malloc
  33. https://github.com/ksh93/ksh/issues/212
  34. * process substitution cannot be part of a larger argument
  35. https://github.com/ksh93/ksh/issues/215
  36. * Compound array regression on OpenBSD with standard malloc
  37. https://github.com/ksh93/ksh/issues/229
  38. * 'typeset -m'-related crash on OpenBSD compiled with standard malloc
  39. https://github.com/ksh93/ksh/issues/231
  40. * Freeze/crash on OpenBSD with -D_std_malloc involving typeset and command substitution
  41. https://github.com/ksh93/ksh/issues/264
  42. * Nested compound assignment misparsed in $(...) command substitution
  43. https://github.com/ksh93/ksh/issues/269
  44. * Crash on bin/shtests -px heredoc
  45. https://github.com/ksh93/ksh/issues/306
  46. * Multibyte characters get corrupted when KEYBD trap is set
  47. https://github.com/ksh93/ksh/issues/307
  48. * .sh.match index array result issues, crash after unset
  49. https://github.com/ksh93/ksh/issues/308
  50. * Builtins don't handle I/O errors
  51. https://github.com/ksh93/ksh/issues/313
  52. * block devices not seekable when open on fd 0, 1 or 2
  53. https://github.com/ksh93/ksh/issues/318
  54. * bug in printf when %b and %x$ are used in same format
  55. https://github.com/ksh93/ksh/issues/324
  56. * namespaces don't work properly when defined within functions
  57. https://github.com/ksh93/ksh/issues/325
  58. * Associative arrays of various types fail to be unset
  59. https://github.com/ksh93/ksh/issues/345
  60. * types survive exec of hashbangless script
  61. https://github.com/ksh93/ksh/issues/350
  62. * Backtick command substitutions can't nest double quotes
  63. https://github.com/ksh93/ksh/issues/352
  64. * Line continuation breakage within $(comsub)
  65. https://github.com/ksh93/ksh/issues/367
  66. ______
  67. Fix regression test failures:
  68. - There are some serious regression test failures on OpenBSD when ksh
  69. is compiled with AST vmalloc disabled, so the system standard malloc(3)
  70. is used. These probably represent real ksh93 bugs exposed by OpenBSD's
  71. security hardening mechanisms.
  72. - Several known memory leaks have their tests disabled in tests/leaks.sh
  73. and are marked TODO. These need tracking down and fixing.
  74. ______
  75. Fix currently known bugs affecting shell scripting. These are identified by
  76. their modernish IDs. For exact details, see code/comments in:
  77. https://github.com/modernish/modernish/tree/0.16/lib/modernish/cap/
  78. - BUG_BRACQUOT: shell quoting within bracket patterns has no effect. This
  79. bug means the '-' retains it special meaning of 'character range', and an
  80. initial ! (and, on some shells, ^) retains the meaning of negation, even
  81. in quoted strings within bracket patterns, including quoted variables.
  82. - BUG_IFSGLOBS: In glob pattern matching (as in case or parameter
  83. substitution with # and %), if IFS starts with ? or * and the "$*"
  84. parameter expansion inserts any IFS separator characters, those characters
  85. are erroneously interpreted as wildcards when quoted "$*" is used as the
  86. glob pattern.