Differences between revisions 33 and 34
Revision 33 as of 2016-06-28 15:42:19
Size: 2814
Editor: geirha
Comment: Listing major.minor (year) instead of which alpha versions the features appeared
Revision 34 as of 2016-06-28 19:00:48
Size: 4418
Editor: geirha
Comment: Including table of release dates
Deletions are marked like this. Additions are marked like this.
Line 34: Line 34:
||read -N||4.1 (2009)||
||{var}> or {var}< etc. (FD variable assignment)||4.1 (2009)||
||syslog history (compile option)||4.1 (2009)||
||BASH_XTRACEFD||4.1 (2009)||
||read -N||4.1 (2010)||
||{var}> or {var}< etc. (FD variable assignment)||4.1 (2010)||
||syslog history (compile option)||4.1 (2010)||
||BASH_XTRACEFD||4.1 (2010)||
Line 70: Line 70:

=== List of bash releases and other notable events ===

|| ```Release``` || ```Date``` ||
||<30%> Shellshock patches are released for bash-2.05b through bash-4.3 || 2014-09-24 to 2014-10-05 ||
|| bash-4.3 || [[http://lists.gnu.org/archive/html/bug-bash/2014-02/msg00081.html|2014-02-27]] ||
|| bash-4.2 || [[http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00134.html|2011-02-14]] ||
|| bash-4.1 || [[http://lists.gnu.org/archive/html/bug-bash/2010-01/msg00000.html|2010-01-02]] ||
|| bash-4.0 || [[http://lists.gnu.org/archive/html/bug-bash/2009-02/msg00164.html|2009-02-23]] ||
|| bash-3.2 || [[http://lists.gnu.org/archive/html/bug-bash/2006-10/msg00057.html|2006-10-12]] ||
|| bash-3.1 || [[http://lists.gnu.org/archive/html/bug-bash/2005-12/msg00018.html|2005-12-09]] ||
|| bash-3.0 || [[http://lists.gnu.org/archive/html/bug-bash/2004-07/msg00255.html|2004-07-27]] ||
|| bash-2.05b || [[http://lists.gnu.org/archive/html/bug-bash/2002-07/msg00169.html|2002-07-17]] ||
|| bash-2.05a || [[http://lists.gnu.org/archive/html/bug-bash/2001-11/msg00086.html|2001-11-15]] ||
|| bash-2.05 || [[http://lists.gnu.org/archive/html/bug-bash/2001-04/msg00047.html|2001-04-09]] ||
||<colspan="2"> bug-bash list archive only goes back to 2000-09-14. Below dates are based on modification times from http://ftp.gnu.org/gnu/bash ||
|| bash-2.04 || 2000-03-21 ||
|| bash-2.03 || 1999-02-19 ||
|| bash-2.02 || 1998-04-18 ||
|| bash-2.01 || 1997-10-02 ||
|| bash-2.0 || 1996-12-31 ||
|| bash-1.14.7 || 1996-08-29 ||

Is there a list of which features were added to specific releases (versions) of Bash?

Here are some links to official Bash documentation:

  • NEWS: a file tersely listing the notable changes between the current and previous versions

  • CHANGES: a "complete" bash change history (back to 2.0 only)

  • COMPAT: compatibility issues between bash3 and previous versions

A more extensive list than the one below can be found at http://wiki.bash-hackers.org/scripting/bashchanges

Notable changes in the upcoming bash version

Feature

Added in version

loadable builtin deployment infrastructure

4.4-beta

mapfile -d

4.4-alpha

--help for builtins

4.4-alpha

${var@spec}

4.4-alpha

local -

4.4-alpha

$! and wait for process substitutions

4.4-alpha

Notable changes in released bash versions

Feature

Added in version

wait -n

4.3 (2014)

test -R

4.3 (2014)

declare/typeset -n and associated changes to ${!ref} and for..in

4.3 (2014)

array[-idx] (in assignments, read, unset, etc)

4.3 (2014)

\uXXXX and \UXXXXXXXX

4.2 (2011)

declare -g

4.2 (2011)

test -v

4.2 (2011)

printf %(fmt)T

4.2 (2011)

${array[-idx]} and ${var:start:-len}

4.2 (2011)

lastpipe (shopt)

4.2 (2011)

read -N

4.1 (2010)

{var}> or {var}< etc. (FD variable assignment)

4.1 (2010)

syslog history (compile option)

4.1 (2010)

BASH_XTRACEFD

4.1 (2010)

;& and ;;& fall-throughs for case

4.0 (2009)

associative arrays

4.0 (2009)

&>> and |&

4.0 (2009)

command_not_found_handle (function)

4.0 (2009)

coproc (keyword)

4.0 (2009)

globstar (shopt)

4.0 (2009)

mapfile/readarray (builtin)

4.0 (2009)

${var,[,]} and ${var^[^]}

4.0 (2009)

{009..012} (leading zeros in brace expansions)

4.0 (2009)

{x..y..incr}

4.0 (2009)

read -t 0

4.0 (2009)

read -i

4.0 (2009)

x+=string array+=(string)

3.1 (2005)

printf -v var

3.1 (2005)

nocasematch (shopt)

3.1 (2005)

{x..y}

3.0 (2004)

${!array[@]}

3.0 (2004)

[[ =~

3.0 (2004)

printf %q produces $'...'

2.05b (2002)

<<<

2.05b (2002)

i++

2.04 (2000)

for ((;;))

2.04 (2000)

/dev/fd/N, /dev/tcp/host/port, etc.

2.04 (2000)

read -t, -n, -d and -s

2.04 (2000)

a=(*.txt) file expansion

2.03 (1999)

extglob (shopt)

2.02 (1998)

[[

2.02 (1998)

printf (builtin)

2.02 (1998)

$(< filename)

2.02 (1998)

** (exponentiation)

2.02 (1998)

\xNNN

2.02 (1998)

(( ))

2.0 (1996)

List of bash releases and other notable events

Release

Date

Shellshock patches are released for bash-2.05b through bash-4.3

2014-09-24 to 2014-10-05

bash-4.3

2014-02-27

bash-4.2

2011-02-14

bash-4.1

2010-01-02

bash-4.0

2009-02-23

bash-3.2

2006-10-12

bash-3.1

2005-12-09

bash-3.0

2004-07-27

bash-2.05b

2002-07-17

bash-2.05a

2001-11-15

bash-2.05

2001-04-09

bug-bash list archive only goes back to 2000-09-14. Below dates are based on modification times from http://ftp.gnu.org/gnu/bash

bash-2.04

2000-03-21

bash-2.03

1999-02-19

bash-2.02

1998-04-18

bash-2.01

1997-10-02

bash-2.0

1996-12-31

bash-1.14.7

1996-08-29

BashFAQ/061 (last edited 2024-04-14 22:29:57 by emanuele6)