On Mon, Oct 28, 2013 at 12:22:16PM -0700, Jonathan Nieder wrote:
> The git build system supports a NO_PERL switch to avoid installing
> perl bindings or other features (like "git add --patch") that rely on
> perl on runtime, but even with NO_PERL it has not been possible for a
> long time to run tests without perl. Helpers such as
>
> nul_to_q () {
> "$PERL_PATH" -pe 'y/\000/Q/'
> }
>
> use perl as a better tr or sed and are regularly used in tests without
> worrying to add a PERL prerequisite.
>
> Perl is portable enough that it seems fine to keep relying on it for
> this kind of thing in tests (and more readable than the alternative of
> trying to find POSIXy equivalents). Update the test documentation to
> clarify this.
>
> Reported-by: Johannes Sixt <[email protected]>
> Signed-off-by: Jonathan Nieder <[email protected]>
> ---
Yeah, I think this accurately the conclusions we've come to informally
during review on the list (for a long time we did not even use
$PERL_PATH for such "vanilla" cases, but some people have a broken perl
in their PATH).
Your patch looks good, and I think Ben's patch does not need a PERL
prerequisite. However, it is supposed to use $PERL_PATH, which it does
not.
Speaking of which, is there any reason to use the ugly "$PERL_PATH"
everywhere, and not simply do:
perl () {
"$PERL_PATH" "$@"
}
in test-lib.sh?
-Peff
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html