summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÆvar Arnfjörð Bjarmason <avarab@gmail.com>2010-09-24 20:00:52 +0000
committerJunio C Hamano <gitster@pobox.com>2010-09-27 12:37:41 -0700
commitd48b28418355ef41a9501eb28a82ec0b69e62a17 (patch)
treebee36b705c2604d6ca424cd659b48bed96704fd8
parent9027fa9eb7df606b6658dd48a40bb993ce222ddd (diff)
downloadgit-d48b28418355ef41a9501eb28a82ec0b69e62a17.tar.gz
perl: bump the required Perl version to 5.8 from 5.6.[21]
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 <avarab@gmail.com> Acked-by: Tor Arntsen <tor@spacetec.no> Acked-by: Randal L. Schwartz <merlyn@stonehenge.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--INSTALL8
-rwxr-xr-xgit-add--interactive.perl1
-rwxr-xr-xgit-archimport.perl1
-rwxr-xr-xgit-cvsexportcommit.perl1
-rwxr-xr-xgit-cvsimport.perl1
-rwxr-xr-xgit-cvsserver.perl1
-rwxr-xr-xgit-difftool.perl1
-rwxr-xr-xgit-relink.perl2
-rwxr-xr-xgit-send-email.perl1
-rwxr-xr-xgit-svn.perl1
-rwxr-xr-xgitweb/gitweb.perl1
-rw-r--r--perl/Git.pm1
-rwxr-xr-xt/t7006/test-terminal.perl1
-rwxr-xr-xt/t9700/test.pl2
14 files changed, 17 insertions, 6 deletions
diff --git a/INSTALL b/INSTALL
index 59200b730e..10a1cba643 100644
--- a/INSTALL
+++ b/INSTALL
@@ -67,10 +67,10 @@ Issues of note:
- A POSIX-compliant shell is required to run many scripts needed
for everyday use (e.g. "bisect", "pull").
- - "Perl" is needed to use some of the features (e.g. preparing a
- partial commit using "git add -i/-p", interacting with svn
- repositories with "git svn"). If you can live without these, use
- NO_PERL.
+ - "Perl" version 5.8 or later is needed to use some of the
+ features (e.g. preparing a partial commit using "git add -i/-p",
+ interacting with svn repositories with "git svn"). If you can
+ live without these, use NO_PERL.
- "openssl" library is used by git-imap-send to use IMAP over SSL.
If you don't need it, use NO_OPENSSL.
diff --git a/git-add--interactive.perl b/git-add--interactive.perl
index 27fc79347a..a96fb53156 100755
--- a/git-add--interactive.perl
+++ b/git-add--interactive.perl
@@ -1,5 +1,6 @@
#!/usr/bin/perl -w
+use 5.008;
use strict;
use Git;
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 @@ and can contain multiple, unrelated branches.
=cut
+use 5.008;
use strict;
use warnings;
use Getopt::Std;
diff --git a/git-cvsexportcommit.perl b/git-cvsexportcommit.perl
index 59b672213b..9a8188bba7 100755
--- a/git-cvsexportcommit.perl
+++ b/git-cvsexportcommit.perl
@@ -1,5 +1,6 @@
#!/usr/bin/perl -w
+use 5.008;
use strict;
use Getopt::Std;
use File::Temp qw(tempdir);
diff --git a/git-cvsimport.perl b/git-cvsimport.perl
index 9e03eee458..53869fb644 100755
--- a/git-cvsimport.perl
+++ b/git-cvsimport.perl
@@ -13,6 +13,7 @@
# The head revision is on branch "origin" by default.
# You can change that with the '-o' option.
+use 5.008;
use strict;
use warnings;
use Getopt::Long;
diff --git a/git-cvsserver.perl b/git-cvsserver.perl
index e9f3037df3..2822bed1fd 100755
--- a/git-cvsserver.perl
+++ b/git-cvsserver.perl
@@ -15,6 +15,7 @@
####
####
+use 5.008;
use strict;
use warnings;
use bytes;
diff --git a/git-difftool.perl b/git-difftool.perl
index adc42de875..e95e4ad973 100755
--- a/git-difftool.perl
+++ b/git-difftool.perl
@@ -10,6 +10,7 @@
#
# Any arguments that are unknown to this script are forwarded to 'git diff'.
+use 5.008;
use strict;
use warnings;
use Cwd qw(abs_path);
diff --git a/git-relink.perl b/git-relink.perl
index 937c69a748..af2e305fa3 100755
--- a/git-relink.perl
+++ b/git-relink.perl
@@ -6,7 +6,7 @@
#
# Scan two git object-trees, and hardlink any common objects between them.
-use 5.006;
+use 5.008;
use strict;
use warnings;
use Getopt::Long;
diff --git a/git-send-email.perl b/git-send-email.perl
index 6dab3bf6a7..314e59e7a9 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl
@@ -16,6 +16,7 @@
# and second line is the subject of the message.
#
+use 5.008;
use strict;
use warnings;
use Term::ReadLine;
diff --git a/git-svn.perl b/git-svn.perl
index 9b046b693f..d2922245aa 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -1,6 +1,7 @@
#!/usr/bin/env perl
# Copyright (C) 2006, Eric Wong <normalperson@yhbt.net>
# License: GPL v2 or later
+use 5.008;
use warnings;
use strict;
use vars qw/ $AUTHOR $VERSION
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
index a85e2f6319..e645d4a821 100755
--- a/gitweb/gitweb.perl
+++ b/gitweb/gitweb.perl
@@ -7,6 +7,7 @@
#
# This program is licensed under the GPLv2
+use 5.008;
use strict;
use warnings;
use CGI qw(:standard :escapeHTML -nosticky);
diff --git a/perl/Git.pm b/perl/Git.pm
index 6cb0dd1934..205e48aa3a 100644
--- a/perl/Git.pm
+++ b/perl/Git.pm
@@ -7,6 +7,7 @@ Git - Perl interface to the Git version control system
package Git;
+use 5.008;
use strict;
diff --git a/t/t7006/test-terminal.perl b/t/t7006/test-terminal.perl
index 73ff809371..6b5f22ae4a 100755
--- a/t/t7006/test-terminal.perl
+++ b/t/t7006/test-terminal.perl
@@ -1,4 +1,5 @@
#!/usr/bin/perl
+use 5.008;
use strict;
use warnings;
use IO::Pty;
diff --git a/t/t9700/test.pl b/t/t9700/test.pl
index 671f38db2b..c15ca2d647 100755
--- a/t/t9700/test.pl
+++ b/t/t9700/test.pl
@@ -1,7 +1,7 @@
#!/usr/bin/perl
use lib (split(/:/, $ENV{GITPERLLIB}));
-use 5.006002;
+use 5.008;
use warnings;
use strict;