From d48b28418355ef41a9501eb28a82ec0b69e62a17 Mon Sep 17 00:00:00 2001 From: Ævar Arnfjörð Bjarmason Date: Fri, 24 Sep 2010 20:00:52 +0000 Subject: perl: bump the required Perl version to 5.8 from 5.6.[21] MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Formalize our dependency on perl 5.8, bumped from 5.6.[12]. We already used the three-arg form of open() which was introduced in 5.6.1, but t/t9700/test.pl explicitly depended on 5.6.2. However git-add--interactive.pl has been failing on the 5.6 line since it was introduced in v1.5.0-rc0~12^2~2 back in 2006 due to this open syntax: sub run_cmd_pipe { my $fh = undef; open($fh, '-|', @_) or die; return <$fh>; } Which when executed dies on "Can't use an undefined value as filehandle reference". Several of our tests also fail on 5.6 (even more when compiled with NO_PERL_MAKEMAKER=1): t2016-checkout-patch.sh t3904-stash-patch.sh t3701-add-interactive.sh t7105-reset-patch.sh t7501-commit.sh t9700-perl-git.sh Our code is bitrotting on 5.6 with no-one interested in fixing it, and pinning us to such an ancient release of Perl is keeping us from using useful features introduced in the 5.8 release. The 5.6 series is now over 10 years old, and the 5.6.2 maintenance release almost 7. 5.8 on the other hand is more than 8 years old. All the modern Unix-like operating systems have now upgraded to it or a later version, and 5.8 packages are available for old IRIX, AIX Solaris and Tru64 systems. Signed-off-by: Ævar Arnfjörð Bjarmason Acked-by: Tor Arntsen Acked-by: Randal L. Schwartz Signed-off-by: Junio C Hamano --- git-archimport.perl | 1 + 1 file changed, 1 insertion(+) (limited to 'git-archimport.perl') diff --git a/git-archimport.perl b/git-archimport.perl index 98f3ede566..947638c38d 100755 --- a/git-archimport.perl +++ b/git-archimport.perl @@ -54,6 +54,7 @@ =head1 Devel Notes =cut +use 5.008; use strict; use warnings; use Getopt::Std; -- cgit 1.2.3-korg From 3328acedc6104e3d46e8f0d26006d9650092ef3e Mon Sep 17 00:00:00 2001 From: Ævar Arnfjörð Bjarmason Date: Fri, 24 Sep 2010 20:00:53 +0000 Subject: perl: use "use warnings" instead of -w MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change the Perl scripts to turn on lexical warnings instead of setting the global $^W variable via the -w switch. The -w sets warnings for all code that interpreter runs, while "use warnings" is lexically scoped. The former is probably not what the authors wanted. As an auxiliary benefit it's now possible to build Git with: PERL_PATH='/usr/bin/env perl' Which would previously result in failures, since "#!/usr/bin/env perl -w" doesn't work as a shebang. Signed-off-by: Ævar Arnfjörð Bjarmason Signed-off-by: Junio C Hamano --- contrib/examples/git-svnimport.perl | 2 +- contrib/fast-import/import-directories.perl | 3 ++- git-add--interactive.perl | 3 ++- git-archimport.perl | 2 +- git-cvsexportcommit.perl | 3 ++- git-cvsimport.perl | 2 +- git-send-email.perl | 2 +- 7 files changed, 10 insertions(+), 7 deletions(-) (limited to 'git-archimport.perl') diff --git a/contrib/examples/git-svnimport.perl b/contrib/examples/git-svnimport.perl index 4576c4a862..ead4c04d3f 100755 --- a/contrib/examples/git-svnimport.perl +++ b/contrib/examples/git-svnimport.perl @@ -1,4 +1,4 @@ -#!/usr/bin/perl -w +#!/usr/bin/perl # This tool is copyright (c) 2005, Matthias Urlichs. # It is released under the Gnu Public License, version 2. diff --git a/contrib/fast-import/import-directories.perl b/contrib/fast-import/import-directories.perl index 3a5da4ab00..7f3afa5ac4 100755 --- a/contrib/fast-import/import-directories.perl +++ b/contrib/fast-import/import-directories.perl @@ -1,4 +1,4 @@ -#!/usr/bin/perl -w +#!/usr/bin/perl # # Copyright 2008-2009 Peter Krefting # @@ -140,6 +140,7 @@ =head3 Revision commit message section # Globals use strict; +use warnings; use integer; my $crlfmode = 0; my @revs; diff --git a/git-add--interactive.perl b/git-add--interactive.perl index a96fb53156..77f60fa396 100755 --- a/git-add--interactive.perl +++ b/git-add--interactive.perl @@ -1,7 +1,8 @@ -#!/usr/bin/perl -w +#!/usr/bin/perl use 5.008; use strict; +use warnings; use Git; binmode(STDOUT, ":raw"); diff --git a/git-archimport.perl b/git-archimport.perl index 947638c38d..bc32f18d6d 100755 --- a/git-archimport.perl +++ b/git-archimport.perl @@ -1,4 +1,4 @@ -#!/usr/bin/perl -w +#!/usr/bin/perl # # This tool is copyright (c) 2005, Martin Langhoff. # It is released under the Gnu Public License, version 2. diff --git a/git-cvsexportcommit.perl b/git-cvsexportcommit.perl index 9a8188bba7..39a426e067 100755 --- a/git-cvsexportcommit.perl +++ b/git-cvsexportcommit.perl @@ -1,7 +1,8 @@ -#!/usr/bin/perl -w +#!/usr/bin/perl use 5.008; use strict; +use warnings; use Getopt::Std; use File::Temp qw(tempdir); use Data::Dumper; diff --git a/git-cvsimport.perl b/git-cvsimport.perl index 53869fb644..249aeaf175 100755 --- a/git-cvsimport.perl +++ b/git-cvsimport.perl @@ -1,4 +1,4 @@ -#!/usr/bin/perl -w +#!/usr/bin/perl # This tool is copyright (c) 2005, Matthias Urlichs. # It is released under the Gnu Public License, version 2. diff --git a/git-send-email.perl b/git-send-email.perl index 314e59e7a9..d10d869912 100755 --- a/git-send-email.perl +++ b/git-send-email.perl @@ -1,4 +1,4 @@ -#!/usr/bin/perl -w +#!/usr/bin/perl # # Copyright 2002,2005 Greg Kroah-Hartman # Copyright 2005 Ryan Anderson -- cgit 1.2.3-korg