Skip Menu |
 

This queue is for tickets about the Data-Dump-Streamer CPAN distribution.

Report information
The Basics
Id: 100488
Status: open
Priority: 0/
Queue: Data-Dump-Streamer

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

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



Subject: Test suite fails if PadWalker is not installed
Download (untitled) / with headers
text/plain 105b
Download (untitled) / with headers
text/plain 309b
On Fri Nov 21 02:33:07 2014, SREZIC wrote: Show quoted text
> See http://www.cpantesters.org/cpan/report/035a84a6-6cca-11e4-8201- > ee5a2fe5cfa2 for a sample fail report.
Does this happen just with bleadperl, or with older perls, too? I suspect this may be related to <https://rt.perl.org/rt3/Ticket/Display.html?id=123223>.
From: ntyni [...] iki.fi
Download (untitled) / with headers
text/plain 439b
On Fri Nov 21 02:33:07 2014, SREZIC wrote: Show quoted text
> See http://www.cpantesters.org/cpan/report/035a84a6-6cca-11e4-8201- > ee5a2fe5cfa2 for a sample fail report.
The tests are still/again failing here with version 2.39 on Perl 5.22.1 when PadWalker is not installed. The failure mode is # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/niko/tmp/libdata-dump-streamer-perl/blib/lib/Data/Dump/Streamer.pm line 3708.
Subject: Re: [rt.cpan.org #100488] Test suite fails if PadWalker is not installed
Date: Mon, 28 Dec 2015 17:31:46 +0100
To: "bug-Data-Dump-Streamer [...] rt.cpan.org" <bug-Data-Dump-Streamer [...] rt.cpan.org>
From: demerphq <demerphq [...] gmail.com>
Download (untitled) / with headers
text/plain 766b
On 27 December 2015 at 16:53, ntyni@iki.fi via RT <bug-Data-Dump-Streamer@rt.cpan.org> wrote: Show quoted text
> Queue: Data-Dump-Streamer > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=100488 > > > On Fri Nov 21 02:33:07 2014, SREZIC wrote:
>> See http://www.cpantesters.org/cpan/report/035a84a6-6cca-11e4-8201- >> ee5a2fe5cfa2 for a sample fail report.
> > The tests are still/again failing here with version 2.39 on Perl 5.22.1 when PadWalker is not installed. The failure mode is > > # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/niko/tmp/libdata-dump-streamer-perl/blib/lib/Data/Dump/Streamer.pm line 3708.
Do you think it would be ok to simply require Padwalker? Yves -- perl -Mre=debug -e "/just|another|perl|hacker/"
Download (untitled) / with headers
text/plain 910b
On Mon Dec 28 11:31:57 2015, demerphq@gmail.com wrote: Show quoted text
> On 27 December 2015 at 16:53, ntyni@iki.fi via RT > <bug-Data-Dump-Streamer@rt.cpan.org> wrote:
> > Queue: Data-Dump-Streamer > > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=100488 > > > > > On Fri Nov 21 02:33:07 2014, SREZIC wrote:
> >> See http://www.cpantesters.org/cpan/report/035a84a6-6cca-11e4-8201- > >> ee5a2fe5cfa2 for a sample fail report.
> > > > The tests are still/again failing here with version 2.39 on Perl > > 5.22.1 when PadWalker is not installed. The failure mode is > > > > # Can't locate object method "object_2svref" via package "B::PADNAME" > > at /home/niko/tmp/libdata-dump-streamer- > > perl/blib/lib/Data/Dump/Streamer.pm line 3708.
> > > Do you think it would be ok to simply require Padwalker? > > Yves
I confirm this happens on perl 5.22.1. Installing PadWalker made those test failures go away. Cheers!
5.24.1 Also needed PadWalker to make tests pass: + perl Build.PL --installdirs=vendor Installing Data::Dump::Streamer I can install a shortcut so you can use the package 'DDS' as though it was 'Data::Dump::Streamer'. This is handy for oneliners. *Note* that if you select 'no' below and you already have it installed then it will be removed. Would you like me to install the shortcut? (yes/no) [no ]no Checking prerequisites... recommends: * Algorithm::Diff is not installed * JSON::XS is not installed * PadWalker is not installed ERRORS/WARNINGS FOUND IN PREREQUISITES. You may wish to install the versions of the modules indicated above before proceeding with this installation Created MYMETA.yml and MYMETA.json Creating new 'Build' script for 'Data-Dump-Streamer' version '2.39' + ./Build Building Data-Dump-Streamer /usr/bin/gcc -I/usr/local/cpanel/3rdparty/perl/524/lib64/perl5/5.24.1/x86_64-linux-64int/CORE -DVERSION="2.39" -DXS_VERSION="2.39" -fPIC -c -DPERL_DISABLE_PMC -I/usr/local/cpanel/3rdparty/perl/524/include -L/usr/local/cpanel/3rdparty/perl/524/lib64 -I/usr/local/cpanel/3rdparty/include -L/usr/local/cpanel/3rdparty/lib64 -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -I/usr/local/cpanel/3rdparty/perl/524/include -I/usr/local/cpanel/3rdparty/include -L/usr/local/cpanel/3rdparty/perl/524/lib64 -L/usr/local/cpanel/3rdparty/lib64 -Os -o lib/Data/Dump/Streamer.o lib/Data/Dump/Streamer.c lib/Data/Dump/Streamer.xs: In function 'XS_Data__Dump__Streamer_alias_ref': lib/Data/Dump/Streamer.xs:542:25: warning: suggest parentheses around '&&' within '||' [-Wparentheses] if (!(dt < SVt_PVAV && st < SVt_PVAV || dt == st && dt <= SVt_PVHV)) ^ lib/Data/Dump/Streamer.c: At top level: lib/Data/Dump/Streamer.xs:152:1: warning: 'num_q' defined but not used [-Wunused-function] num_q(register char *s, register STRLEN slen) ^ ExtUtils::Mkbootstrap::Mkbootstrap('blib/arch/auto/Data/Dump/Streamer/Streamer.bs') /usr/bin/gcc -shared -Os -L/usr/local/cpanel/3rdparty/perl/524/lib64 -L/usr/local/cpanel/3rdparty/lib64 -L/usr/lib64 -L/lib64 -L/usr/local/lib -fstack-protector-strong -o blib/arch/auto/Data/Dump/Streamer/Streamer.so lib/Data/Dump/Streamer.o + ./Build test t/as.t .............. ok t/blessed.t ......... ok t/dogpound.t ........ ok Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Looks like you planned 49 tests but ran 2. # Looks like your test exited with 255 just after 2. t/dump.t ............ Dubious, test returned 255 (wstat 65280, 0xff00) Failed 47/49 subtests t/filter.t .......... ok t/globtest.t ........ ok t/hardrefs.t ........ ok t/impure_madness.t .. ok # # PadWalker isn't installed # Error: # Data::Dump::Streamer->Data(@_)->Out() failed dump: # normalize ( scalar $obj->Data(@_)->Out() ) # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test 'Lexicals!!' # at t/test_helper.pl line 536. # Error: # Data::Dump::Streamer->Data(@_)->Out() failed dump: # normalize ( scalar $obj->Data(@_)->Out() ) # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test 'Self-referential' # at t/test_helper.pl line 536. # Error: # Data::Dump::Streamer->Data(@_)->Out() failed dump: # normalize ( scalar $obj->Data(@_)->Out() ) # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test 'Nested closure with shared state' # at t/test_helper.pl line 536. # Error: # Data::Dump::Streamer->Data(@_)->Out() failed dump: # normalize ( scalar $obj->Data(@_)->Out() ) # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test 'Overlapping declarations' # at t/test_helper.pl line 536. # Error: # Data::Dump::Streamer->Data(@_)->Out() failed dump: # normalize ( scalar $obj->Data(@_)->Out() ) # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test 'Overlapping declarations two' # at t/test_helper.pl line 536. # Error: # Data::Dump::Streamer->Data(@_)->Out() failed dump: # normalize ( scalar $obj->Data(@_)->Out() ) # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test 'Unrelated environments' # at t/test_helper.pl line 536. # Error: # Data::Dump::Streamer->Data(@_)->Out() failed dump: # normalize ( scalar $obj->Data(@_)->Out() ) # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test 'Shared state/enclosed' # at t/test_helper.pl line 536. # Error: # Data::Dump::Streamer->Data(@_)->Out() failed dump: # normalize ( scalar $obj->Data(@_)->Out() ) # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test 'Named Shared state/enclosed' # at t/test_helper.pl line 536. # Error: # Data::Dump::Streamer->Data(@_)->Out() failed dump: # normalize ( scalar $obj->Data(@_)->Out() ) # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test 'sub b' # at t/test_helper.pl line 536. # Error: # Data::Dump::Streamer->Data(@_)->Out() failed dump: # normalize ( scalar $obj->Data(@_)->Out() ) # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test 'double sub b' # at t/test_helper.pl line 536. # Error: # Data::Dump::Streamer->Data(@_)->Out() failed dump: # normalize ( scalar $obj->Data(@_)->Out() ) # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test 'recursively nested subs' # at t/test_helper.pl line 536. # Error: # Data::Dump::Streamer->Data(@_)->Out() failed dump: # normalize ( scalar $obj->Data(@_)->Out() ) # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test 'EclipseName' # at t/test_helper.pl line 536. # Error: # Data::Dump::Streamer->Data(@_)->Out() failed dump: # normalize ( scalar $obj->Data(@_)->Out() ) # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test 'EclipseName 2' # at t/test_helper.pl line 536. # Looks like you failed 13 tests of 14. t/lexicals.t ........ Dubious, test returned 13 (wstat 3328, 0xd00) Failed 13/14 subtests t/locked.t .......... ok Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Looks like you planned 7 tests but ran 6. # Looks like your test exited with 255 just after 6. t/madness.t ......... Dubious, test returned 255 (wstat 65280, 0xff00) Failed 1/7 subtests t/madness_json.t .... skipped: No JSON::XS t/madness_w.t ....... ok Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Looks like you planned 50 tests but ran 4. # Looks like your test exited with 255 just after 4. t/names.t ........... Dubious, test returned 255 (wstat 65280, 0xff00) Failed 46/50 subtests # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test '&{} overloading' # at t/overload.t line 34. # Error: # Data::Dump::Streamer->Data(@_)->Out() failed dump: # normalize ( scalar $obj->Data(@_)->Out() ) # Can't locate object method "object_2svref" via package "B::PADNAME" at /home/rpmbuild/rpm-build/BUILD/Data-Dump-Streamer-2.39/blib/lib/Data/Dump/Streamer.pm line 3718. # Failed test 'overloading madness' # at t/test_helper.pl line 536. # Looks like you failed 2 tests of 7. t/overload.t ........ Dubious, test returned 2 (wstat 512, 0x200) Failed 2/7 subtests t/readonly.t ........ ok t/refaddr.t ......... ok t/refcount.t ........ ok t/refelem.t ......... ok t/reftype.t ......... ok t/sortkeys.t ........ ok t/tree.t ............ ok t/usage.t ........... ok t/xs_subs.t ......... ok Test Summary Report ------------------- t/dump.t (Wstat: 65280 Tests: 2 Failed: 0) Non-zero exit status: 255 Parse errors: Bad plan. You planned 49 tests but ran 2. t/lexicals.t (Wstat: 3328 Tests: 14 Failed: 13) Failed tests: 1-6, 8-14 Non-zero exit status: 13 t/madness.t (Wstat: 65280 Tests: 6 Failed: 0) Non-zero exit status: 255 Parse errors: Bad plan. You planned 7 tests but ran 6. t/names.t (Wstat: 65280 Tests: 4 Failed: 0) Non-zero exit status: 255 Parse errors: Bad plan. You planned 50 tests but ran 4. t/overload.t (Wstat: 512 Tests: 7 Failed: 2) Failed tests: 4, 7 Non-zero exit status: 2 Files=24, Tests=268, 3 wallclock secs ( 0.09 usr 0.02 sys + 2.59 cusr 0.23 csys = 2.93 CPU) Result: FAIL Failed 5/24 test programs. 15/268 subtests failed.
Oh, look, a PATCH! I believe this will work all the way back to 5.8, but I have not tested it.
Subject: open_8rmPA5Q6.txt
Download open_8rmPA5Q6.txt
text/plain 576b
diff -rup Data-Dump-Streamer-2.39-1-orig/lib/Data/Dump/Streamer.pm Data-Dump-Streamer-2.39-1/lib/Data/Dump/Streamer.pm --- Data-Dump-Streamer-2.39-1-orig/lib/Data/Dump/Streamer.pm 2015-12-23 21:51:10.000000000 -0800 +++ Data-Dump-Streamer-2.39-1/lib/Data/Dump/Streamer.pm 2016-08-29 20:19:00.000000000 -0700 @@ -3715,7 +3715,7 @@ sub _get_lexicals { my %named; for my $i ( 0..$#name_obj ) { if ( ref($name_obj[$i])!~/SPECIAL/) { - $named{$i} = "${ $name_obj[$i]->object_2svref }"; + $named{$i} = $name_obj[$i]->PV; } }
Download (untitled) / with headers
text/plain 254b
On Mon Aug 29 23:20:38 2016, SPROUT wrote: Show quoted text
> Oh, look, a PATCH! > > I believe this will work all the way back to 5.8, but I have not tested it.
Perhaps it needs a little explanation. Here is a new patch that contains some. It is git-am-compatible.
Subject: new-patch.txt
Download new-patch.txt
text/plain 975b
From: Father Chrysostomos <sprout@cpan.org> Fix compatibility with B::PADNAME Without PadWalker installed, names of lexicals are fetched using B. We were using object_2svref and then stringifying the pad name SV itself, but that fails if pad names are no longer SVs. Just calling the PV method should work. Arguably it should have been done this way to begin with, since B::SV has a PV method. diff -rup Data-Dump-Streamer-2.39-1-orig/lib/Data/Dump/Streamer.pm Data-Dump-Streamer-2.39-1/lib/Data/Dump/Streamer.pm --- Data-Dump-Streamer-2.39-1-orig/lib/Data/Dump/Streamer.pm 2015-12-23 21:51:10.000000000 -0800 +++ Data-Dump-Streamer-2.39-1/lib/Data/Dump/Streamer.pm 2016-08-29 20:19:00.000000000 -0700 @@ -3715,7 +3715,7 @@ sub _get_lexicals { my %named; for my $i ( 0..$#name_obj ) { if ( ref($name_obj[$i])!~/SPECIAL/) { - $named{$i} = "${ $name_obj[$i]->object_2svref }"; + $named{$i} = $name_obj[$i]->PV; } }
Subject: Re: [rt.cpan.org #100488] Test suite fails if PadWalker is not installed
Date: Tue, 30 Aug 2016 09:35:20 +0200
To: bug-Data-Dump-Streamer [...] rt.cpan.org
From: demerphq <demerphq [...] gmail.com>
Download (untitled) / with headers
text/plain 1.5k
I'm sorry I have been derelict of duty with this module. I will arrange to roll a new release asap. Yves On 30 Aug 2016 05:26, "Father Chrysostomos via RT" < bug-Data-Dump-Streamer@rt.cpan.org> wrote: Show quoted text
> Queue: Data-Dump-Streamer > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=100488 > > > On Mon Aug 29 23:20:38 2016, SPROUT wrote:
> > Oh, look, a PATCH! > > > > I believe this will work all the way back to 5.8, but I have not tested
> it. > > Perhaps it needs a little explanation. Here is a new patch that contains > some. It is git-am-compatible. > > > > > From: Father Chrysostomos <sprout@cpan.org> > > Fix compatibility with B::PADNAME > > Without PadWalker installed, names of lexicals are fetched using B. > We were using object_2svref and then stringifying the pad name SV > itself, but that fails if pad names are no longer SVs. Just calling > the PV method should work. Arguably it should have been done this way > to begin with, since B::SV has a PV method. > > diff -rup Data-Dump-Streamer-2.39-1-orig/lib/Data/Dump/Streamer.pm > Data-Dump-Streamer-2.39-1/lib/Data/Dump/Streamer.pm > --- Data-Dump-Streamer-2.39-1-orig/lib/Data/Dump/Streamer.pm > 2015-12-23 21:51:10.000000000 -0800 > +++ Data-Dump-Streamer-2.39-1/lib/Data/Dump/Streamer.pm 2016-08-29 > 20:19:00.000000000 -0700 > @@ -3715,7 +3715,7 @@ sub _get_lexicals { > my %named; > for my $i ( 0..$#name_obj ) { > if ( ref($name_obj[$i])!~/SPECIAL/) { > - $named{$i} = "${ $name_obj[$i]->object_2svref }"; > + $named{$i} = $name_obj[$i]->PV; > } > } > > >
Subject: Re: [rt.cpan.org #100488] Test suite fails if PadWalker is not installed
Date: Tue, 30 Aug 2016 10:17:14 +0200
To: "bug-Data-Dump-Streamer [...] rt.cpan.org" <bug-Data-Dump-Streamer [...] rt.cpan.org>
From: demerphq <demerphq [...] gmail.com>
Download (untitled) / with headers
text/plain 1.9k
I just released 2.40 with this patch. Hopefully this includes all the other open fixes too... On 30 August 2016 at 09:35, demerphq via RT <bug-Data-Dump-Streamer@rt.cpan.org> wrote: Show quoted text
> Queue: Data-Dump-Streamer > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=100488 > > > I'm sorry I have been derelict of duty with this module. I will arrange to > roll a new release asap. > > Yves > > On 30 Aug 2016 05:26, "Father Chrysostomos via RT" < > bug-Data-Dump-Streamer@rt.cpan.org> wrote: >
>> Queue: Data-Dump-Streamer >> Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=100488 > >> >> On Mon Aug 29 23:20:38 2016, SPROUT wrote:
>> > Oh, look, a PATCH! >> > >> > I believe this will work all the way back to 5.8, but I have not tested
>> it. >> >> Perhaps it needs a little explanation. Here is a new patch that contains >> some. It is git-am-compatible. >> >> >> >> >> From: Father Chrysostomos <sprout@cpan.org> >> >> Fix compatibility with B::PADNAME >> >> Without PadWalker installed, names of lexicals are fetched using B. >> We were using object_2svref and then stringifying the pad name SV >> itself, but that fails if pad names are no longer SVs. Just calling >> the PV method should work. Arguably it should have been done this way >> to begin with, since B::SV has a PV method. >> >> diff -rup Data-Dump-Streamer-2.39-1-orig/lib/Data/Dump/Streamer.pm >> Data-Dump-Streamer-2.39-1/lib/Data/Dump/Streamer.pm >> --- Data-Dump-Streamer-2.39-1-orig/lib/Data/Dump/Streamer.pm >> 2015-12-23 21:51:10.000000000 -0800 >> +++ Data-Dump-Streamer-2.39-1/lib/Data/Dump/Streamer.pm 2016-08-29 >> 20:19:00.000000000 -0700 >> @@ -3715,7 +3715,7 @@ sub _get_lexicals { >> my %named; >> for my $i ( 0..$#name_obj ) { >> if ( ref($name_obj[$i])!~/SPECIAL/) { >> - $named{$i} = "${ $name_obj[$i]->object_2svref }"; >> + $named{$i} = $name_obj[$i]->PV; >> } >> } >> >> >>
>
-- perl -Mre=debug -e "/just|another|perl|hacker/"


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

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