# [PATCH] t9500: skip gitweb tests if perl version is too old

5 messages from 2007-06-22 to 2007-06-23. Participants: Sven Verdoolaege, Junio C Hamano.
Thread: https://gitlist.dev/t/8682

## Sven Verdoolaege, 2007-06-22 15:49

Subject: [PATCH] t9500: skip gitweb tests if perl version is too old
Message-ID: <20070622154908.GA7946MdfPADPa@greensroom.kotnet.org>
URL: https://gitlist.dev/e/20070622154908.GA7946MdfPADPa%40greensroom.kotnet.org

```
gitweb calls Encode::decode_utf8 with two arguments,
but old versions of perl only allow this function to be called
with one argument.  Even older versions of perl do not even
have an Encode module.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
---
 t/t9500-gitweb-standalone-no-errors.sh |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/t/t9500-gitweb-standalone-no-errors.sh b/t/t9500-gitweb-standalone-no-errors.sh
index 44ae503..d948724 100755
--- a/t/t9500-gitweb-standalone-no-errors.sh
+++ b/t/t9500-gitweb-standalone-no-errors.sh
@@ -60,6 +60,12 @@ gitweb_run () {
 
 . ./test-lib.sh
 
+perl -MEncode -e 'decode_utf8("", Encode::FB_CROAK)' >/dev/null 2>&1 || {
+    test_expect_success 'skipping gitweb tests, perl version is too old' :
+    test_done
+    exit
+}
+
 gitweb_init
 
 # ----------------------------------------------------------------------
-- 
1.5.2.2.249.g45fd

```

## Junio C Hamano, 2007-06-23 06:31

Subject: Re: [PATCH] t9500: skip gitweb tests if perl version is too old
Message-ID: <7vps3n89mb.fsf@assigned-by-dhcp.pobox.com>
URL: https://gitlist.dev/e/7vps3n89mb.fsf%40assigned-by-dhcp.pobox.com
In-Reply-To: <20070622154908.GA7946MdfPADPa@greensroom.kotnet.org>

```
Sven Verdoolaege <skimo@kotnet.org> writes:

> gitweb calls Encode::decode_utf8 with two arguments,
> but old versions of perl only allow this function to be called
> with one argument.  Even older versions of perl do not even
> have an Encode module.
>
> Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
> ---
>  t/t9500-gitweb-standalone-no-errors.sh |    6 ++++++
>  1 files changed, 6 insertions(+), 0 deletions(-)
>
> diff --git a/t/t9500-gitweb-standalone-no-errors.sh b/t/t9500-gitweb-standalone-no-errors.sh
> index 44ae503..d948724 100755
> --- a/t/t9500-gitweb-standalone-no-errors.sh
> +++ b/t/t9500-gitweb-standalone-no-errors.sh
> @@ -60,6 +60,12 @@ gitweb_run () {
>  
>  . ./test-lib.sh
>  
> +perl -MEncode -e 'decode_utf8("", Encode::FB_CROAK)' >/dev/null 2>&1 || {
> +    test_expect_success 'skipping gitweb tests, perl version is too old' :
> +    test_done
> +    exit
> +}
> +

Hmph.  Even something silly like:

	perl -MEncode -e 'decode_utf8("", Encode::FB_CLUCK)'

seem to succeed for me with 5.8.8.

Maybe you would want "perl -w" there instead?

```

## Sven Verdoolaege, 2007-06-23 08:57

Subject: Re: [PATCH] t9500: skip gitweb tests if perl version is too old
Message-ID: <20070623085751.GX955MdfPADPa@greensroom.kotnet.org>
URL: https://gitlist.dev/e/20070623085751.GX955MdfPADPa%40greensroom.kotnet.org
In-Reply-To: <7vps3n89mb.fsf@assigned-by-dhcp.pobox.com>

```
On Fri, Jun 22, 2007 at 11:31:40PM -0700, Junio C Hamano wrote:
> Sven Verdoolaege <skimo@kotnet.org> writes:
> > +perl -MEncode -e 'decode_utf8("", Encode::FB_CROAK)' >/dev/null 2>&1 || {
> > +    test_expect_success 'skipping gitweb tests, perl version is too old' :
> > +    test_done
> > +    exit
> > +}
> > +
> 
> Hmph.  Even something silly like:
> 
> 	perl -MEncode -e 'decode_utf8("", Encode::FB_CLUCK)'
> 
> seem to succeed for me with 5.8.8.
> 

Maybe I'm missing something, but it's supposed to succeed
for perl versions that are recent enough.


I get

bash-3.00$ perl -MEncode -e 'decode_utf8("", Encode::FB_CROAK)'
Too many arguments for Encode::decode_utf8 at -e line 1, at end of line
Execution of -e aborted due to compilation errors.
bash-3.00$ perl --version

This is perl, v5.8.0 built for i686-linux-thread-multi

Copyright 1987-2002, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using `man perl' or `perldoc perl'.  If you have access to the
Internet, point your browser at http://www.perl.com/, the Perl Home Page.

(See also http://article.gmane.org/gmane.comp.version-control.git/50354)

skimo

```

## Junio C Hamano, 2007-06-23 10:14

Subject: Re: [PATCH] t9500: skip gitweb tests if perl version is too old
Message-ID: <7vps3n3rm7.fsf@assigned-by-dhcp.pobox.com>
URL: https://gitlist.dev/e/7vps3n3rm7.fsf%40assigned-by-dhcp.pobox.com
In-Reply-To: <20070623085751.GX955MdfPADPa@greensroom.kotnet.org>

```
Sven Verdoolaege <skimo@kotnet.org> writes:

> On Fri, Jun 22, 2007 at 11:31:40PM -0700, Junio C Hamano wrote:
>> Sven Verdoolaege <skimo@kotnet.org> writes:
>> > +perl -MEncode -e 'decode_utf8("", Encode::FB_CROAK)' >/dev/null 2>&1 || {
>> > +    test_expect_success 'skipping gitweb tests, perl version is too old' :
>> > +    test_done
>> > +    exit
>> > +}
>> > +
>> 
>> Hmph.  Even something silly like:
>> 
>> 	perl -MEncode -e 'decode_utf8("", Encode::FB_CLUCK)'
>> 
>> seem to succeed for me with 5.8.8.
>> 
>
> Maybe I'm missing something, but it's supposed to succeed
> for perl versions that are recent enough.

Well, "Encode::FB_CLUCK" is a bogus symbol even in recent Perl.
IOW, the tested function does not seem to care if I give
whatever garbage as the second parameter.

But I guess you are only interested if the perl used to run
gitweb barfs with that two parameter, so the original check
would be the right way.

Will apply, but I am about to go to bed, so it will be
tomorrow.

Thanks.

```

## Sven Verdoolaege, 2007-06-23 10:51

Subject: Re: [PATCH] t9500: skip gitweb tests if perl version is too old
Message-ID: <20070623105118.GY955MdfPADPa@greensroom.kotnet.org>
URL: https://gitlist.dev/e/20070623105118.GY955MdfPADPa%40greensroom.kotnet.org
In-Reply-To: <7vps3n3rm7.fsf@assigned-by-dhcp.pobox.com>

```
On Sat, Jun 23, 2007 at 03:14:08AM -0700, Junio C Hamano wrote:
> Well, "Encode::FB_CLUCK" is a bogus symbol even in recent Perl.
> IOW, the tested function does not seem to care if I give
> whatever garbage as the second parameter.
> 
> But I guess you are only interested if the perl used to run
> gitweb barfs with that two parameter, so the original check
> would be the right way.

Indeed.  gitweb doesn't use FB_CLUCK and if it did, we would
want to know about it (and not skip the tests).

skimo

```
