This queue is for tickets about the CPAN CPAN distribution.

Report information
The Basics
Id:
37344
Status:
resolved
Priority:
Low/Low
Queue:

People
Owner:
Nobody in particular
Requestors:
deisner [...] gmail.com
Cc:
AdminCc:

BugTracker
Severity:
Important
Broken in:
1.9205
Fixed in:
(no value)



Subject: "not in gzip format" error during make test
I'm trying to build CPAN-1.9205 on a Solaris 10 machine using perl v5.8.4 (the one that ships with the OS). I can create the Makefile and build without problems. But when I "make test", it complains that "01mailrc.txt" is not in gzip format: delos [CPAN-1.9205]$ make test PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/00signature.......ok t/01loadme..........ok t/02nox.............ok t/03pkgs............ok t/10version.........ok t/11mirroredby......ok t/12cpan............1/19 gzip: /home/david/build/CPAN-1.9205/t/CPAN/authors/01mailrc.txt: not in gzip format gzip: /home/david/build/CPAN-1.9205/t/CPAN/modules/02packages.details.txt: not in gzip format gzip: /home/david/build/CPAN-1.9205/t/CPAN/modules/03modlist.data: not in gzip format t/12cpan............ok Thanks for your help.
Would you mind trying ANDK/CPAN-1.92_63.tar.gz just to see if the problem is solved in current development?
From: deisner@gmail.com
Same problem: delos [CPAN-1.92_63]$ make test PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/00signature.......ok t/01loadme..........ok t/02nox.............ok t/03pkgs............ok t/10version.........ok t/11mirroredby......ok t/12cpan............1/25 gzip: /home/david/build/CPAN-1.92_63/t/CPAN/authors/01mailrc.txt: not in gzip format gzip: /home/david/build/CPAN-1.92_63/t/CPAN/modules/02packages.details.txt: not in gzip format gzip: /home/david/build/CPAN-1.92_63/t/CPAN/modules/03modlist.data: not in gzip format
From: deisner@gmail.com
I did a little digging. The problem only occurs of Compress::Zlib is not installed. I noticed that I didn't get this error on another system (Linux - Ubuntu 7.10 with Perl v5.8.8), and I've figured out why. The errors are getting generated from the gtest method in blib/lib/CPAN/Tarzip.pm: 111 sub gtest { 112 my($self) = @_; 113 return $self->{GTEST} if exists $self->{GTEST}; 114 defined $self->{FILE} or $CPAN::Frontend->mydie("gtest called but no FILE specified"); 115 my $read = $self->{FILE}; 116 my $success; 117 # After I had reread the documentation in zlib.h, I discovered that 118 # uncompressed files do not lead to an gzerror (anymore?). 119 if ( $CPAN::META->has_inst("Compress::Zlib") ) { 120 my($buffer,$len); 121 $len = 0; 122 my $gz = Compress::Zlib::gzopen($read, "rb") 123 or $CPAN::Frontend->mydie(sprintf("Cannot gzopen %s: %s\n", 124 $read, 125 $Compress::Zlib::gzerrno)); 126 while ($gz->gzread($buffer) > 0 ) { 127 $len += length($buffer); 128 $buffer = ""; 129 } 130 my $err = $gz->gzerror; 131 $success = ! $err || $err == Compress::Zlib::Z_STREAM_END(); 132 if ($len == -s $read) { 133 $success = 0; 134 CPAN->debug("hit an uncompressed file") if $CPAN::DEBUG; 135 } 136 $gz->gzclose(); 137 CPAN->debug("err[$err]success[$success]") if $CPAN::DEBUG; 138 } else { 139 my $command = CPAN::HandleConfig->safe_quote($self->{UNGZIPPRG}); 140 $success = 0==system(qq{$command -qdt "$read"}); 141 } 142 return $self->{GTEST} = $success; 143 } On the Linux system, where it works, Compress::Zlib is installed, so the first clause of the if statement at line 119 is taken. On the Solaris system, where I get the errors, the else clause is taken. If I force the Linux system to take the else clause, too ( "if (0 && $CPAN::META->has_inst("Compress::Zlib")..." then the Linux system also displays the error. ... I just installed Compress::Zlib on the Solaris box, and the problem has gone away.
From: deisner@gmail.com
On Thu Jul 03 11:57:14 2008, deisner wrote:
Show quoted text
> I did a little digging. The problem only occurs of Compress::Zlib is not > installed.
D'oh. The problem occurs *if* Compress::Zlib is not installed.
The bug is fixed in current repository and will be fixed in 1.93_53. The problem was that Solaris native tar cannot process a path that is (in total) longer than 99 characters. The workaround was to shorten the longest path in the CPAN distribution.


This service runs on Request Tracker, is sponsored by The Perl Foundation, and maintained by Best Practical Solutions.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.