From: Vincent Pit Date: Sun, 15 Nov 2015 19:03:22 +0000 (-0200) Subject: Make sure File::Temp is recent enough for ->newdir X-Git-Tag: v1.18~6 X-Git-Url: http://git.vpit.fr/?p=perl%2Fmodules%2FTest-Valgrind.git;a=commitdiff_plain;h=ca8eca27f27c14e65e67ffce2fa1447eee64c5c1 Make sure File::Temp is recent enough for ->newdir Spotted by Paul Howarth. --- diff --git a/Makefile.PL b/Makefile.PL index f716fe2..cd4b762 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -127,7 +127,7 @@ my %PREREQ_PM = ( 'File::HomeDir' => '0.86', 'File::Path' => 0, 'File::Spec' => 0, - 'File::Temp' => '0.14', # OO interface + 'File::Temp' => '0.19', # ->newdir in tests 'Filter::Util::Call' => 0, 'Fcntl' => 0, 'IO::Select' => 0, @@ -150,7 +150,7 @@ my %CONFIGURE_REQUIRES = ( my %BUILD_REQUIRES = ( %CONFIGURE_REQUIRES, - 'File::Temp' => 0, + 'File::Temp' => '0.19', # ->newdir in tests 'IO::Handle' => 0, 'IO::Select' => 0, 'IPC::Open3' => 0, diff --git a/t/lib/Test/Valgrind/FakeValgrind.pm b/t/lib/Test/Valgrind/FakeValgrind.pm index 3f61ba6..067309b 100644 --- a/t/lib/Test/Valgrind/FakeValgrind.pm +++ b/t/lib/Test/Valgrind/FakeValgrind.pm @@ -33,6 +33,15 @@ if (\@ARGV == 1 && \$ARGV[0] eq '--version') { FAKE_VG } +my $good_enough_file_temp; +BEGIN { + $good_enough_file_temp = do { + no warnings; + local $@; + eval { File::Temp->VERSION('0.19'); 1 } + } +} + sub new { my ($class, %args) = @_; @@ -43,6 +52,8 @@ sub new { my $self = { }; if (defined $exe_name) { + return 'File::Temp 0.19 is required to make a proper temporary directory' + unless $good_enough_file_temp; $self->{tmp_dir_obj} = File::Temp->newdir(CLEANUP => 1); $self->{tmp_dir} = $self->{tmp_dir_obj}->dirname; $self->{tmp_file} = File::Spec->catfile($self->{tmp_dir}, $exe_name);