[PATCH 2 of 2 V2] tests: don't hardcode path to bash interpreter

Martin Geisler martin at geisler.net
Wed Mar 26 06:19:02 CDT 2014


Olle Lundberg <olle.lundberg at gmail.com> writes:

> # HG changeset patch
> # User Olle Lundberg <geek at nerd.sh>
> # Date 1395785272 -3600
> #      Tue Mar 25 23:07:52 2014 +0100
> # Node ID c0c158e277f7b7a33c51d0ee163c42345c70d84d
> # Parent  6e8b538637302e06a3510d15e36c30757f8501a2
> tests: don't hardcode path to bash interpreter
>
> Use the env binary to figure out the correct bash to use.
> Certain systems ships with an ancient version of bash, but the
> user might have installed a newer one that is earlier in $PATH.
>
> For example the current version of Mac OS X ships version 3.2.51
> of bash, which does not understand new fancy builtins such as
> readarray. A user might install a newer version of bash, use that
> as their shell and add that path before bin.

Okay, but couldn't one object that the scripts we distribute shouldn't
use new fancy features?

Infact, it seems like it would be better if we used #!/bin/sh instead
and wrote the scripts so they work on a wide vararity of machines.

I haven't really looked at the shell scripts, so I don't know if we
already use non-standard features or if it would be difficult to rewrite
them to a simpler form of shell script.

-- 
Martin Geisler
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 818 bytes
Desc: not available
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20140326/85bb5e50/attachment.pgp>


More information about the Mercurial-devel mailing list