Skip to content

2.54

Compare
Choose a tag to compare
@magicant magicant released this 25 Feb 10:08
· 130 commits to trunk since this release

Yet another shell, version 2.54.

Full Changelog: 2.53...2.54

  • Added: Changing font style of command line predictions with $PS1P, etc.
  • Added: The '--le-trim-right' option.
  • Changed: When the POSIXly-correct mode is active, the shell now refuses to execute built-ins POSIX XCU 2.9.1 lists as utilities that cause unspecified results. To implement the new behavior, the previous "semi-special" built-ins are now categorized in either of the new categories "mandatory" and "elective". The "command" and "type" built-ins now report the new categories of such built-ins.
  • Changed: The shell now requires a corresponding external executable to exist in $PATH when running a built-in that works like a standard external utility even when the POSIXly-correct mode is inactive. Such built-ins are now categorized as "substitutive" built-ins.
  • Changed: The "array" built-in is now completely ignored in the POSIXly-correct mode. The built-in, formerly a regular built-in, is now categorized as an "extension" built-in.
  • Changed: The xtrace option is now ignored while expanding the $PS4 variable to prevent possible infinite recursion.
  • Fixed: The allexport option was wrongly ignored in many assignment contexts.
  • Fixed: The errexit and errreturn options now work for assignment error in a for loop.
  • Fixed: The ">" redirection with the noclobber option no longer hangs when the operand names a symbolic link to a non-existing file.
  • Fixed: The exported value of the $DIRSTACK variable was not being updated correctly in the "pushd" and "popd" built-ins.
  • Fixed: The effect of "!" no longer applies to the exit status of the "break", "continue", and "return" built-ins.
  • Fixed: An alias value ending with a blank followed by a line continuation no longer subjects the next token to alias substitution.
  • Updated the sample initialization script (yashrc):
    • Added: The "o" alias for WSL