bash-4.4 hangs with use of process substitution
cat <(ls)
is sufficient to hang the shell.
Tested on docker alpine:edge with bash-4.4.12-r0.
Bash also seems to report an incorrect version:
bash --version
GNU bash, version 4.4.0(1)-release (x86_64-alpine-linux-musl)
Could it be that the wrong bash version was packaged?
Steps to reproduce:
alpine-edge:~# apk update
fetch http://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
v3.6.0-4946-g7ea1dc07c1 [http://dl-cdn.alpinelinux.org/alpine/edge/main]
v3.6.0-4946-g7ea1dc07c1 [http://dl-cdn.alpinelinux.org/alpine/edge/community]
OK: 8983 distinct packages available
alpine-edge:~# apk add bash
(1/7) Upgrading busybox (1.27.0-r3 -> 1.27.2-r3)
Executing busybox-1.27.2-r3.post-upgrade
NOTE: /usr/sbin/udhcpd has been moved to the package 'busybox-extras'
(2/7) Installing pkgconf (1.3.10-r0)
(3/7) Installing ncurses-terminfo-base (6.0_p20170930-r0)
(4/7) Installing ncurses-terminfo (6.0_p20170930-r0)
(5/7) Installing ncurses-libs (6.0_p20170930-r0)
(6/7) Installing readline (7.0.003-r0)
(7/7) Installing bash (4.4.12-r0)
Executing bash-4.4.12-r0.post-install
Executing busybox-1.27.2-r3.trigger
OK: 13 MiB in 17 packages
alpine-edge:~# bash --version
GNU bash, version 4.4.0(1)-release (x86_64-alpine-linux-musl)
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
alpine-edge:~# bash
alpine-edge:~# cat <(ls)
...
hangs
(from redmine: issue id 8098, created on 2017-11-02, closed on 2017-11-06)