Subject: | /bin/bash is not available everywhere (0.08) |
On FreeBSD systems the test suite fails:
...
# Failed test 'Get right output from stdout'
# at t/01_run.t line 129.
# got: undef
# expected: 'TEST normal print
# '
# Failed test 'Get right output from stderr'
# at t/01_run.t line 130.
# got: 'open3: exec of /usr/home/eserte/.cpan/build/2017100215/Mojo-IOLoop-ReadWriteProcess-0.08-4/t/data/process_check.sh failed at lib/Mojo/IOLoop/ReadWriteProcess.pm line 86.
# '
# expected: 'TEST error print
# '
# Failed test 'process is still waiting for our input'
# at t/01_run.t line 131.
# got: '0'
# expected: '1'
t/01_run.t .......
All 3 subtests passed
...
Problem is that process_check.sh is using /bin/bash. On many non-linux systems bash is not available by default, and if it's installed, it's often not available under /bin/bash (e.g. on *BSD systems it's /usr/local/bin/bash). Probably it's better to use plain old /bin/sh instead, or maybe even better, stick to perl, which is guaranteed to exist also on non-POSIX platforms.