This is a terse description of the new features added to bash-4.3 since the release of bash-4.2. As always, the manual page (doc/bash.1) is the place to look for complete descriptions. 1. New Features in Bash a. The `helptopic' completion action now maps to all the help topics, not just the shell builtins. b. The `help' builtin no longer does prefix substring matching first, so `help read' does not match `readonly', but will do it if exact string matching fails. c. The shell can be compiled to not display a message about processes that terminate due to SIGTERM. d. Non-interactive shells now react to the setting of checkwinsize and set LINES and COLUMNS after a foreground job exits. e. There is a new shell option, `globasciiranges', which, when set to on, forces globbing range comparisons to use character ordering as if they were run in the C locale. f. There is a new shell option, `direxpand', which makes filename completion expand variables in directory names in the way bash-4.1 did. g. In Posix mode, the `command' builtin does not change whether or not a builtin it shadows is treated as an assignment builtin. h. The `return' and `exit' builtins accept negative exit status arguments. i. The word completion code checks whether or not a filename containing a shell variable expands to a directory name and appends `/' to the word as appropriate. The same code expands shell variables in command names when performing command completion. j. In Posix mode, it is now an error to attempt to define a shell function with the same name as a Posix special builtin. k. When compiled for strict Posix conformance, history expansion is disabled by default. l. The history expansion character (!) does not cause history expansion when followed by the closing quote in a double-quoted string. m. `complete' and its siblings compgen/compopt now takes a new `-o noquote' option to inhibit quoting of the completions. n. Setting HISTSIZE to a value less than zero causes the history list to be unlimited (setting it 0 zero disables the history list). o. Setting HISTFILESIZE to a value less than zero causes the history file size to be unlimited (setting it to 0 causes the history file to be truncated to zero size). p. The `read' builtin now skips NUL bytes in the input. q. There is a new `bind -X' option to print all key sequences bound to Unix commands. r. When in Posix mode, `read' is interruptible by a trapped signal. After running the trap handler, read returns 128+signal and throws away any partially-read input. s. The command completion code skips whitespace and assignment statements before looking for the command name word to be completed. t. The build process has a new mechanism for constructing separate help files that better reflects the current set of compilation options. u. The -nt and -ot options to test now work with files with nanosecond timestamp resolution. v. The shell saves the command history in any shell for which history is enabled and HISTFILE is set, not just interactive shells. w. The shell has `nameref' variables and new -n(/+n) options to declare and unset to use them, and a `test -R' option to test for them. x. The shell now allows assigning, referencing, and unsetting elements of indexed arrays using negative subscripts (a[-1]=2, echo ${a[-1]}) which count back from the last element of the array. y. The {x}