Skip Menu |

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

Report information
The Basics
Id: 91419
Status: open
Priority: 0/
Queue: IO-Compress-Lzf

People
Owner: Nobody in particular
Requestors: dmacks [...] netspace.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in:
  • 2.074
  • 2.080
Fixed in: (no value)



Subject: Test failures in 105oneshot-lzf.t
Date: Sat, 14 Dec 2013 16:38:40 -0500
To: bug-IO-Compress-Lzf [...] rt.cpan.org
From: "Daniel Macks" <dmacks [...] netspace.org>
Building IO-Compress-LZF-2.063 on OS X 10.8 against apple's perl-5.12.14 with a bunch of CPAN modules installed via fink (including Compress-LZF-3.70 and IO-Compress-2.063)... #     Failed test (t/compress/oneshot.pl at line 307) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 321) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 336) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 351) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 369) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 387) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 406) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 422) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 442) #          got: 'abcde' #     expected: '' #     Failed test (t/compress/oneshot.pl at line 462) #          got: 'abcde' #     expected: '' #     Failed test (t/compress/oneshot.pl at line 479) #          got: 'abcde' #     expected: '' #     Failed test (t/compress/oneshot.pl at line 502) #          got: 'abcde' #     expected: '' #     Failed test (t/compress/oneshot.pl at line 307) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 321) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 336) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 351) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 369) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 387) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 406) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 422) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 442) #          got: 'abcde' #     expected: '' #     Failed test (t/compress/oneshot.pl at line 462) #          got: 'abcde' #     expected: '' #     Failed test (t/compress/oneshot.pl at line 479) #          got: 'abcde' #     expected: '' #     Failed test (t/compress/oneshot.pl at line 502) #          got: 'abcde' #     expected: '' #     Failed test (t/compress/oneshot.pl at line 553) #     Structures begin differing at: #          $got->[1] = '' #     $expected->[1] = 'data1' #     Failed test (t/compress/oneshot.pl at line 1037) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 1049) #          got: '' #     expected: 'abcde' # SCALAR(0x7f8d6ab31618) #     Failed test (t/compress/oneshot.pl at line 1069) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 1093) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 1113) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 1139) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 1154) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 1175) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 1202) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 1218) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 1240) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 1037) #          got: 'incumbent data' #     expected: 'incumbent dataabcde' #     Failed test (t/compress/oneshot.pl at line 1049) #          got: '' #     expected: 'abcde' # SCALAR(0x7f8d6ab39a78) #     Failed test (t/compress/oneshot.pl at line 1069) #          got: 'incumbent data' #     expected: 'incumbent dataabcde' #     Failed test (t/compress/oneshot.pl at line 1093) #          got: 'incumbent data' #     expected: 'incumbent dataabcde' #     Failed test (t/compress/oneshot.pl at line 1113) #          got: 'incumbent data' #     expected: 'incumbent dataabcde' #     Failed test (t/compress/oneshot.pl at line 1139) #          got: 'incumbent data' #     expected: 'incumbent dataabcde' #     Failed test (t/compress/oneshot.pl at line 1154) #          got: 'incumbent data' #     expected: 'incumbent dataabcde' #     Failed test (t/compress/oneshot.pl at line 1175) #          got: 'incumbent data' #     expected: 'incumbent dataabcde' #     Failed test (t/compress/oneshot.pl at line 1202) #          got: 'incumbent data' #     expected: 'incumbent dataabcde' #     Failed test (t/compress/oneshot.pl at line 1218) #          got: 'incumbent data' #     expected: 'incumbent dataabcde' #     Failed test (t/compress/oneshot.pl at line 1240) #          got: 'incumbent data' #     expected: 'incumbent dataabcde' #     Failed test (t/compress/oneshot.pl at line 1258) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 1267) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 1296) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 1296) #          got: '' #     expected: 'abcde' #     Failed test (t/compress/oneshot.pl at line 1348) #          got: '' #     expected: 'data1data2' #     Failed test (t/compress/oneshot.pl at line 1359) #          got: '' #     expected: 'data1data2' #     Failed test (t/compress/oneshot.pl at line 1372) #          got: '' #     expected: 'data1data2' #     Failed test (t/compress/oneshot.pl at line 1383) #     Structures begin differing at: #          $got->[1] = '' #     $expected->[1] = 'data1' # Looks like you failed 55 tests of 990. t/105oneshot-lzf.t ... Dubious, test returned 55 (wstat 14080, 0x3700) Failed 55/990 subtests         (less 16 skipped subtests: 919 okay) dan -- Daniel Macks dmacks@netspace.org
Hey Dan, thanks for the bug report. This one is very strange - I can't reproduce it at all on my Linux distribution. I've enclosed a short script - if you get a chance could you run it please and post the output? You will need to download and try to manually build IO-Compress-Lzf first before running the script. So assuming you already have Compress-LZF-3.70 and IO-Compress-2.063 installed, something like this should do the trick. $ tar cvf IO-Compress-Lzf-2.063.tar.gz $ cd IO-Compress-Lzf-2.063 $ perl Makefile.PL $ make test I imagine the "make test" will still fail (if not please report back). Now run the enclosed script in the IO-Compress-Lzf-2.063 directory. This is what I get when I run it $ perl try.pl zlib 1.2.8 rawzlib 2.063 lzf 3.7 compressed ok oneshot uncompress ok anyoneshot uncompress ok This is IO::Uncompress::UnLzf=GLOB(0x9298cd8) cheers Paul
Subject: try.pl
#!/usr/bin/perl use warnings; use strict; use blib; use Compress::LZF ; use IO::Compress::Lzf qw(lzf); use IO::Uncompress::AnyUncompress qw(anyuncompress); use IO::Uncompress::UnLzf qw(unlzf); use Compress::Raw::Zlib; my $zlib = Compress::Raw::Zlib::ZLIB_VERSION; print "zlib $zlib\n"; print "rawzlib $Compress::Raw::Zlib::VERSION\n" ; print "lzf $Compress::LZF::VERSION\n"; my $longContent = <<EOM ; Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut tempus odio id dolor. Camelus perlus. Larrius in lumen numen. Dolor en quiquum filia est. Quintus cenum parat. EOM my $comp ; my $uncomp ; lzf \$longContent => \$comp or die "cannot compress: $IO::Compress::Lzf::LzfError\n"; length($comp) or die "lzf to empty string\n" ; print "compressed ok\n"; unlzf \$comp => \$uncomp or warn "cannot uncompress: $IO::Uncompress::UnLzf::UnLzfError\n"; print $uncomp eq $longContent ? "oneshot uncompress ok\n" : "oneshot uncompress not ok"; $uncomp = ''; anyuncompress \$comp => \$uncomp or warn "cannot uncompress: $IO::Uncompress::AnyUncompress::AnyUncompressError\n"; print $uncomp eq $longContent ? "anyoneshot uncompress ok\n" : "anyoneshot uncompress not ok"; $uncomp = ''; my $un = new IO::Uncompress::AnyUncompress \$comp or die "cannot uncompress: $IO::Uncompress::AnyUncompress::AnyUncompressError\n"; print "This is $un\n" ;
Subject: Re: [rt.cpan.org #91419] Test failures in 105oneshot-lzf.t
Date: Thu, 19 Dec 2013 01:38:37 -0500
To: bug-IO-Compress-Lzf [...] rt.cpan.org
From: "Daniel Macks" <dmacks [...] netspace.org>
On Sun, 15 Dec 2013 15:39:06 -0500, Paul Marquess via RT <bug-IO-Compress-Lzf@rt.cpan.org> wrote: <URL: https://rt.cpan.org/Ticket/Display.html?id=91419 > Show quoted text
> > thanks for the bug report. This one is very strange - I can't > reproduce it at all on my Linux distribution. > > $ tar cvf IO-Compress-Lzf-2.063.tar.gz > $ cd IO-Compress-Lzf-2.063 > $ perl Makefile.PL > $ make test > > I imagine the "make test" will still fail (if not please report > back). Now run the enclosed script in the IO-Compress-Lzf-2.063 > directory. > > This is what I get when I run it > > $ perl try.pl > zlib 1.2.8 > rawzlib 2.063 > lzf 3.7 > compressed ok > oneshot uncompress ok > anyoneshot uncompress ok > This is IO::Uncompress::UnLzf=GLOB(0x9298cd8)
zlib 1.2.5 rawzlib 2.063 lzf 3.7 compressed ok oneshot uncompress ok anyoneshot uncompress ok This is IO::Uncompress::UnLzf=GLOB(0x7f88ea814be0) So we have different versions of zlib according to Compress::Raw::Zlib. I'm using Compress-Raw-Zlib-2.063, which passed its 'make test'. I'm building that module with         BUILD_ZLIB=0         ZLIB_INCLUDE=/usr/include         ZLIB_LIB=/usr/lib so my zlib is as supplied by OS X (which is indeed 1.2.5 according to its zlib.h and also the string embedded in libz.dylib). Fink's C::R::Z is built that way assuming the vendor best knows how to tweak and build something for a less common platform, and a general preference for existing shared libraries to embedded source copies. OS X 10.9 is also still on 1.2.5, though I don't have a sandbox system to test anything on it. dan -- Daniel Macks dmacks@netspace.org
Hey Dan, thanks for running that. I was expecting the uncompress steps to fail for you and so point to an issue with zlib, but it din't. Luckily though I've managed to reproduce the issue on a RHEL 6 setup, so that means I have something to work with. The issue looks like it has nothing to do with zlib - it looks like it purely LZF. To confirm, could you try running the script again after changing this line my $longContent = <<EOM ; Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut tempus odio id dolor. Camelus perlus. Larrius in lumen numen. Dolor en quiquum filia est. Quintus cenum parat. EOM to this my $longContent ='abcde'; I'm expecting to see the two uncompress line fail. Paul
Hey Dan, that's not the output I expected to see. The small script you ran was intended to fail in the anyoneshot line. Could you run the 105oneshot-lzf.t test file in verbose mode and post the output please? $ make test TEST_VERBOSE=1 TEST_FILES=t/105oneshot-lzf.t Paul
Subject: Re: [rt.cpan.org #91419] Test failures in 105oneshot-lzf.t
Date: Fri, 20 Dec 2013 23:45:15 -0500
To: bug-IO-Compress-Lzf [...] rt.cpan.org
From: "Daniel Macks" <dmacks [...] netspace.org>
On Fri, 20 Dec 2013 18:30:39 -0500, Paul Marquess via RT <bug-IO-Compress-Lzf@rt.cpan.org> wrote: Show quoted text
> To confirm, could you try running the script again after changing this line > > my $longContent = <<EOM ; Lorem ipsum dolor sit amet, consectetuer > adipiscing elit. Ut tempus odio id dolor. Camelus perlus. Larrius in > lumen numen. Dolor en quiquum filia est. Quintus cenum parat. EOM > > to this > > my $longContent ='abcde'; > > I'm expecting to see the two uncompress line fail.
No such luck...failed to fail: zlib 1.2.5 rawzlib 2.063 lzf 3.7 compressed ok oneshot uncompress ok anyoneshot uncompress ok This is IO::Uncompress::UnLzf=GLOB(0x7f982a814be0) dan -- Daniel Macks dmacks@netspace.org
Subject: Re: [rt.cpan.org #91419] Test failures in 105oneshot-lzf.t
Date: Fri, 20 Dec 2013 23:49:19 -0500
To: bug-IO-Compress-Lzf [...] rt.cpan.org
From: "Daniel Macks" <dmacks [...] netspace.org>
On Fri, 20 Dec 2013 18:34:15 -0500, Paul Marquess via RT <bug-IO-Compress-Lzf@rt.cpan.org> wrote: Show quoted text
> > Hey Dan, > > that's not the output I expected to see. The small script you ran was > intended to fail in the anyoneshot line. > > Could you run the 105oneshot-lzf.t test file in verbose mode and post > the output please? > > $ make test TEST_VERBOSE=1 TEST_FILES=t/105oneshot-lzf.t
See attached. dan -- Daniel Macks dmacks@netspace.org

Message body is not shown because sender requested not to inline it.