Skip Menu |

This queue is for tickets about the IO-Compress CPAN distribution.

Report information
The Basics
Id: 46896
Status: resolved
Priority: 0/
Queue: IO-Compress

People
Owner: Nobody in particular
Requestors: kane [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in: (no value)
Fixed in: (no value)



Subject: bleadperls IO::Uncompress::Bunzip2 is broken
Greetings, I'm not sure what happened, but the archive::tar tests started failing on .tbz files generated by it. Here's what I found so far with a snapshot of blead from today: $ ./perl -MTestInit /tmp/x.pl /tmp/out.tbz Use of uninitialized value in warn at /tmp/x.pl line 20. Warning: something's wrong at /tmp/x.pl line 20. The test script and test .tbz file are attached. Note that /bin/bzcat has no problem getting the content. $ bzcat /tmp/out.tbz | head -2 copy000644000765000765 6604411214512372 11173 0ustar00kanekane000000000000BEGIN { if( $ENV{PERL_CORE} ) { As noted in another ticket, I can't test with other perls or I::C::Bunzip2 versions as i seem to be stuck in a non-upgradeable situation.
Subject: x.pl
use strict; use warnings; sub foo { my $file = shift(); require IO::Uncompress::Bunzip2; my $fh = IO::Uncompress::Bunzip2->new( $file ) or die( "Error opening '$file' with IO::Uncompress::Bunzip2" ); my $str; my $buff; $str .= $buff while $fh->read( $buff, 4096 ) > 0; $fh->close(); return $str; }; warn foo( shift() );
Subject: out.tbz
Download out.tbz
application/octet-stream 6.4k

Message body not shown because it is not plain text.

On Fri Jun 12 14:30:48 2009, KANE wrote: Show quoted text
> Greetings, > > I'm not sure what happened, but the archive::tar tests started failing > on .tbz files generated by it. Here's what I found so far with a > snapshot of blead from today: > > $ ./perl -MTestInit /tmp/x.pl /tmp/out.tbz > Use of uninitialized value in warn at /tmp/x.pl line 20. > Warning: something's wrong at /tmp/x.pl line 20. > > The test script and test .tbz file are attached. Note that /bin/bzcat > has no problem getting the content. > > $ bzcat /tmp/out.tbz | head -2 > copy000644000765000765 6604411214512372 11173 > 0ustar00kanekane000000000000BEGIN { > if( $ENV{PERL_CORE} ) { > > As noted in another ticket, I can't test with other perls or > I::C::Bunzip2 versions as i seem to be stuck in a non-upgradeable
situation. Show quoted text
>
Hi Jos, tried the script and the compressed file you included on my system. Both worked perfectly for me. I then created and installed a blead from scratch & tried your script with that - still ok. I've enclosed a small script that just prints out the versions of all the compression-related modules that my compression modules make use of. Can you see what you get with it please. Paul
my @modules = qw( File::GlobMapper IO::Compress::Base IO::Compress::Base::Common IO::Uncompress::Base Compress::Raw::Zlib Compress::Raw::Bzip2 IO::Compress::RawDeflate IO::Uncompress::RawInflate IO::Compress::Deflate IO::Uncompress::Inflate IO::Compress::Gzip IO::Compress::Gzip::Constants IO::Uncompress::Gunzip IO::Compress::Zip IO::Uncompress::Unzip IO::Compress::Bzip2 IO::Uncompress::Bunzip2 IO::Compress::Lzf IO::Uncompress::UnLzf IO::Compress::Lzop IO::Uncompress::UnLzop Compress::Zlib Compress::LZF Compress::LZO ); my $max = 0; grep { $max = $_ if $_ > $max } map { length $_ } @modules; printf("%-${max}s $]\n", "perl"); my %got = (); for my $name (sort @modules) { printf("%-${max}s ", $name); eval "require $name;"; if ($@ eq '') { my $version = ${ $name . "::VERSION" }; print "$version" . libVer($name, $version) . "\n"; $got{$name} ++; } else { print "Not Present\n"; } } print "\n"; sub libVer { my $module = shift; my $version = shift; my $got = ''; if ($module eq 'Compress::Raw::Zlib') { $got .= " (zlib ver " . Compress::Raw::Zlib::zlib_version(); $got .= sprintf " [0x%x])", Compress::Raw::Zlib::ZLIB_VERNUM(); } if ($module eq 'Compress::Zlib' && $version < 2) { $got .= " (zlib ver " . Compress::Zlib::zlib_version(); $got .= sprintf " [0x%x])", Compress::Zlib::ZLIB_VERNUM(); } elsif ($module eq 'Compress::Raw::Bzip2') { $got = " (bzip2 ver " . Compress::Raw::Bzip2::bzlibversion() . ")"; } return $got; }
Subject: Re: [rt.cpan.org #46896] bleadperls IO::Uncompress::Bunzip2 is broken
Date: Sat, 13 Jun 2009 18:41:07 +0200
To: bug-IO-Compress [...] rt.cpan.org
From: "Jos I. Boumans" <kane [...] cpan.org>
On Jun 13, 2009, at 3:28 PM, Paul Marquess via RT wrote: Show quoted text
> tried the script and the compressed file you included on my system. > Both > worked perfectly for me. I then created and installed a blead from > scratch & tried your script with that - still ok. > > I've enclosed a small script that just prints out the versions of all > the compression-related modules that my compression modules make > use of. > Can you see what you get with it please.
Sure thing. I've made a small adaptation so that when a require fails for another reason then 'cant locate' it prints the error. Here's bleadperl: [kane@myriad-wifi ~...perl-current-cpanplus-devel.22199/t]$ ./perl - MTestInit /tmp/versions.pl perl 5.011000 Compress::LZF Not Present Compress::LZO Not Present Compress::Raw::Bzip2 2.018 (bzip2 ver 1.0.5, 10-Dec-2007) Compress::Raw::Zlib 2.018 (zlib ver 1.2.3 [0x1230]) Compress::Zlib 2.018 File::GlobMapper 1.000 IO::Compress::Base 2.018 IO::Compress::Base::Common 2.018 IO::Compress::Bzip2 2.018 IO::Compress::Deflate 2.018 IO::Compress::Gzip 2.018 IO::Compress::Gzip::Constants 2.018 IO::Compress::Lzf Not Present IO::Compress::Lzop Not Present IO::Compress::RawDeflate 2.018 IO::Compress::Zip 2.018 IO::Uncompress::Base 2.018 IO::Uncompress::Bunzip2 2.018 IO::Uncompress::Gunzip 2.018 IO::Uncompress::Inflate 2.018 IO::Uncompress::RawInflate 2.018 IO::Uncompress::UnLzf Not Present IO::Uncompress::UnLzop Not Present IO::Uncompress::Unzip 2.018 and here's the version i have installed: [kane@myriad-wifi /tmp]$ perlc versions.pl perl 5.010000 Compress::LZF Not Present Compress::LZO Not Present Compress::Raw::Bzip2 2.02 (bzip2 ver 1.0.5, 10-Dec-2007) Compress::Raw::Zlib 2.02 (zlib ver 1.2.3 [0x1230]) Compress::Zlib Could not load: IO::Compress::Base::Common version 2.02 required--this is only version 2.015 at /opt/5.10.0/lib/perl5/5.10.0/darwin-2level/Compress/ Zlib.pm line 11. BEGIN failed--compilation aborted at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/Compress/Zlib.pm line 11. Compilation failed in require at (eval 12) line 1. File::GlobMapper 1.000 IO::Compress::Base 2.015 IO::Compress::Base::Common 2.015 IO::Compress::Bzip2 Could not load: IO::Compress::Base version 2.02 required--this is only version 2.015 at /opt/5.10.0/lib/ perl5/5.10.0/darwin-2level/IO/Compress/Bzip2.pm line 8. BEGIN failed--compilation aborted at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/IO/Compress/Bzip2.pm line 8. Compilation failed in require at (eval 23) line 1. IO::Compress::Deflate Could not load: IO::Compress::Base version 2.02 required--this is only version 2.015 at /opt/5.10.0/lib/ perl5/5.10.0/darwin-2level/IO/Compress/RawDeflate.pm line 10. BEGIN failed--compilation aborted at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/IO/Compress/RawDeflate.pm line 10. Compilation failed in require at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/IO/Compress/Deflate.pm line 9. BEGIN failed--compilation aborted at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/IO/Compress/Deflate.pm line 9. Compilation failed in require at (eval 24) line 1. IO::Compress::Gzip Could not load: Attempt to reload IO/ Compress/RawDeflate.pm aborted. Compilation failed in require at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/IO/Compress/Gzip.pm line 11. BEGIN failed--compilation aborted at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/IO/Compress/Gzip.pm line 11. Compilation failed in require at (eval 25) line 1. IO::Compress::Gzip::Constants 2.020 IO::Compress::Lzf Not Present IO::Compress::Lzop Not Present IO::Compress::RawDeflate Could not load: Attempt to reload IO/ Compress/RawDeflate.pm aborted. Compilation failed in require at (eval 29) line 1. IO::Compress::Zip Could not load: IO::Compress::Base::Common version 2.02 required--this is only version 2.015 at /opt/5.10.0/lib/perl5/5.10.0/darwin-2level/IO/ Compress/Zip.pm line 7. BEGIN failed--compilation aborted at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/IO/Compress/Zip.pm line 7. Compilation failed in require at (eval 30) line 1. IO::Uncompress::Base 2.015 IO::Uncompress::Bunzip2 Could not load: IO::Compress::Base::Common version 2.02 required--this is only version 2.015 at /opt/5.10.0/lib/perl5/5.10.0/darwin-2level/IO/ Uncompress/Bunzip2.pm line 7. BEGIN failed--compilation aborted at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/IO/Uncompress/Bunzip2.pm line 7. Compilation failed in require at (eval 32) line 1. IO::Uncompress::Gunzip Could not load: IO::Compress::Base::Common version 2.02 required--this is only version 2.015 at /opt/5.10.0/lib/perl5/5.10.0/darwin-2level/IO/ Uncompress/RawInflate.pm line 9. BEGIN failed--compilation aborted at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/IO/Uncompress/RawInflate.pm line 9. Compilation failed in require at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/IO/Uncompress/Gunzip.pm line 12. BEGIN failed--compilation aborted at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/IO/Uncompress/Gunzip.pm line 12. Compilation failed in require at (eval 33) line 1. IO::Uncompress::Inflate Could not load: IO::Compress::Base::Common version 2.02 required--this is only version 2.015 at /opt/5.10.0/lib/perl5/5.10.0/darwin-2level/IO/ Uncompress/Inflate.pm line 8. BEGIN failed--compilation aborted at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/IO/Uncompress/Inflate.pm line 8. Compilation failed in require at (eval 34) line 1. IO::Uncompress::RawInflate Could not load: Attempt to reload IO/ Uncompress/RawInflate.pm aborted. Compilation failed in require at (eval 35) line 1. IO::Uncompress::UnLzf Not Present IO::Uncompress::UnLzop Not Present IO::Uncompress::Unzip Could not load: Attempt to reload IO/ Uncompress/RawInflate.pm aborted. Compilation failed in require at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/IO/Uncompress/Unzip.pm line 11. BEGIN failed--compilation aborted at /opt/5.10.0/lib/perl5/5.10.0/ darwin-2level/IO/Uncompress/Unzip.pm line 11. Compilation failed in require at (eval 38) line 1. -- Jos Boumans "Whenever you find you are on the side of the majority, it is time to pause and reflect." - Mark Twain
Jos, is fink causing this one as well? Paul
Subject: Re: [rt.cpan.org #46896] bleadperls IO::Uncompress::Bunzip2 is broken
Date: Sun, 5 Jul 2009 15:04:25 +0200
To: bug-IO-Compress [...] rt.cpan.org
From: "Jos I. Boumans" <kane [...] cpan.org>
On Jul 5, 2009, at 2:04 PM, Paul Marquess via RT wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=46896 > > > Jos, > > is fink causing this one as well?
It would appear so; i scrubbed my env from fink and all tests pass. The breakage is subtle, I wonder if we can find a better way to indicate that something like this is going on... Cheers, -- Jos Boumans 'Real programmers use "cat > a.out"'
On Sun Jul 05 09:04:48 2009, KANE wrote: Show quoted text
> > On Jul 5, 2009, at 2:04 PM, Paul Marquess via RT wrote: >
> > <URL: https://rt.cpan.org/Ticket/Display.html?id=46896 > > > > > Jos, > > > > is fink causing this one as well?
> > > It would appear so; i scrubbed my env from fink and all tests pass.
ok. Show quoted text
> The breakage is subtle, I wonder if we can find a better way to > indicate that > something like this is going on...
I'm beefing up the test harness to add more checking. Paul