Skip Menu |

Preferred bug tracker

Please visit the preferred bug tracker to report your issue.

This queue is for tickets about the autobox CPAN distribution.

Report information
The Basics
Id: 100819
Status: open
Priority: 0/
Queue: autobox

People
Owner: CHOCOLATE [...] cpan.org
Requestors: ether [...] cpan.org
KENTNL [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 2.82
Fixed in: (no value)



Subject: Fails 4 tests on Blead
Yet to get p5p insight on this, but I have to tag this somewhere before I go to bed and forget

est Summary Report
-------------------
t/rt_80400.t      (Wstat: 5632 Tests: 0 Failed: 0)
  Non-zero exit status: 22
  Parse errors: Bad plan.  You planned 1 tests but ran 0.
t/scalar.t        (Wstat: 65280 Tests: 0 Failed: 0)
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 60 tests but ran 0.
t/type.t          (Wstat: 512 Tests: 23 Failed: 2)
  Failed tests:  3, 5
  Non-zero exit status: 2
t/universal_type.t (Wstat: 768 Tests: 32 Failed: 3)
  Failed tests:  4, 8, 10
  Non-zero exit status: 3
Files=19, Tests=579,  1 wallclock secs ( 0.17 usr  0.05 sys +  1.72 cusr  0.47 csys =  2.41 CPU)
Subject: rt_80400.t.txt
Can't locate object method "test" via package "1" (perhaps you forgot to load "1"?) at t/rt_80400.t line 21. END failed--call queue aborted. # Looks like your test exited with 22 before it could output anything. Dubious, test returned 22 (wstat 5632, 0x1600) Failed 1/1 subtests Test Summary Report ------------------- t/rt_80400.t (Wstat: 5632 Tests: 0 Failed: 0) Non-zero exit status: 22 Parse errors: Bad plan. You planned 1 tests but ran 0. Files=1, Tests=0, 0 wallclock secs ( 0.03 usr 0.00 sys + 0.04 cusr 0.01 csys = 0.08 CPU) Result: FAIL
Subject: scalar.t.txt
Can't locate object method "inc" via package "42" (perhaps you forgot to load "42"?) at t/scalar.t line 23. # Looks like your test exited with 255 before it could output anything. Dubious, test returned 255 (wstat 65280, 0xff00) Failed 60/60 subtests Test Summary Report ------------------- t/scalar.t (Wstat: 65280 Tests: 0 Failed: 0) Non-zero exit status: 255 Parse errors: Bad plan. You planned 60 tests but ran 0. Files=1, Tests=0, 0 wallclock secs ( 0.02 usr 0.00 sys + 0.04 cusr 0.01 csys = 0.07 CPU) Result: FAIL
Subject: type.t.txt
ok 1 ok 2 not ok 3 ok 4 not ok 5 ok 6 ok 7 ok 8 ok 9 ok 10 ok 11 ok 12 ok 13 ok 14 ok 15 ok 16 ok 17 ok 18 ok 19 ok 20 ok 21 ok 22 ok 23 # Failed test at t/type.t line 20. # got: 'STRING' # expected: 'INTEGER' # Failed test at t/type.t line 22. # got: 'STRING' # expected: 'FLOAT' # Looks like you failed 2 tests of 23. Dubious, test returned 2 (wstat 512, 0x200) Failed 2/23 subtests Test Summary Report ------------------- t/type.t (Wstat: 512 Tests: 23 Failed: 2) Failed tests: 3, 5 Non-zero exit status: 2 Files=1, Tests=23, 0 wallclock secs ( 0.03 usr 0.00 sys + 0.04 cusr 0.01 csys = 0.08 CPU) Result: FAIL
Subject: universal_type.t.txt
ok 1 ok 2 ok 3 not ok 4 ok 5 ok 6 ok 7 not ok 8 ok 9 not ok 10 ok 11 ok 12 ok 13 ok 14 ok 15 ok 16 ok 17 ok 18 ok 19 ok 20 ok 21 ok 22 ok 23 ok 24 ok 25 ok 26 ok 27 ok 28 ok 29 ok 30 ok 31 ok 32 # Failed test at t/universal_type.t line 29. # got: 'STRING' # expected: 'INTEGER' # Failed test at t/universal_type.t line 33. # got: 'STRING' # expected: 'FLOAT' # Failed test at t/universal_type.t line 35. # got: 'STRING' # expected: 'FLOAT' # Looks like you failed 3 tests of 32. Dubious, test returned 3 (wstat 768, 0x300) Failed 3/32 subtests Test Summary Report ------------------- t/universal_type.t (Wstat: 768 Tests: 32 Failed: 3) Failed tests: 4, 8, 10 Non-zero exit status: 3 Files=1, Tests=32, 0 wallclock secs ( 0.03 usr 0.00 sys + 0.05 cusr 0.01 csys = 0.09 CPU) Result: FAIL
Subject: perlV.txt
Summary of my perl5 (revision 5 version 21 subversion 7) configuration: Snapshot of: f101330775ac3b1235c028a31daeb52f33bbb78e Platform: osname=linux, osvers=3.17.1-aufs, archname=x86_64-linux uname='linux katipo2 3.17.1-aufs #16 smp preempt sat oct 18 17:34:07 nzdt 2014 x86_64 intel(r) core(tm) i5-2410m cpu @ 2.30ghz genuineintel gnulinux ' config_args='-de -Dprefix=/home/kent/perl5/perlbrew/perls/blead-2 -Dusecbacktrace -Doptimize=-O3 -march=native -mtune=native -g -ggdb3 -Dman1dir=none -Dman3dir=none -Dusedevel -Accflags=-DPERL_HASH_FUNC_SDBM -DUSE_C_BACKTRACE_ON_ERROR -Aldflags=-lbfd -Aeval:scriptdir=/home/kent/perl5/perlbrew/perls/blead-2/bin' hint=recommended, useposix=true, d_sigaction=define useithreads=undef, usemultiplicity=undef use64bitint=define, use64bitall=define, uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='cc', ccflags ='-DPERL_HASH_FUNC_SDBM -DUSE_C_BACKTRACE_ON_ERROR -fwrapv -fno-strict-aliasing -pipe -fstack-protector -DUSE_C_BACKTRACE -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-O3 -march=native -mtune=native -g -ggdb3', cppflags='-DPERL_HASH_FUNC_SDBM -DUSE_C_BACKTRACE_ON_ERROR -fwrapv -fno-strict-aliasing -pipe -fstack-protector' ccversion='', gccversion='4.8.3', gccosandvers='' intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678, doublekind=3 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16, longdblkind=3 ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='cc', ldflags =' -lbfd -fstack-protector -L/usr/local/lib' libpth=/usr/lib/gcc/x86_64-pc-linux-gnu/4.8.3/include-fixed /usr/lib /usr/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64 libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc libc=libc-2.20.so, so=so, useshrplib=false, libperl=libperl.a gnulibc_version='2.20' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E' cccdlflags='-fPIC', lddlflags='-shared -O3 -march=native -mtune=native -g -ggdb3 -L/usr/local/lib -fstack-protector' Characteristics of this binary (from libperl): Compile-time options: HAS_TIMES PERLIO_LAYERS PERL_DONT_CREATE_GVSV PERL_HASH_FUNC_SDBM PERL_MALLOC_WRAP PERL_NEW_COPY_ON_WRITE PERL_PRESERVE_IVUV PERL_USE_DEVEL USE_64_BIT_ALL USE_64_BIT_INT USE_LARGE_FILES USE_LOCALE USE_LOCALE_COLLATE USE_LOCALE_CTYPE USE_LOCALE_NUMERIC USE_LOCALE_TIME USE_PERLIO USE_PERL_ATOF Built under linux Compiled at Dec 10 2014 19:16:00 %ENV: PERLBREW_BASHRC_VERSION="0.69" PERLBREW_HOME="/home/kent/.perlbrew" PERLBREW_MANPATH="/home/kent/perl5/perlbrew/perls/blead-2/man" PERLBREW_PATH="/home/kent/perl5/perlbrew/bin:/home/kent/perl5/perlbrew/perls/blead-2/bin" PERLBREW_PERL="blead-2" PERLBREW_ROOT="/home/kent/perl5/perlbrew" PERLBREW_VERSION="0.69" PERL_CPANM_OPT=" --prompt --interactive --verify --mirror http://cpan.metacpan.org/" PERL_MM_OPT=" INSTALLDIRS=site" PERL_MM_USE_DEFAULT="" @INC: /home/kent/perl5/perlbrew/perls/blead-2/lib/site_perl/5.21.7/x86_64-linux /home/kent/perl5/perlbrew/perls/blead-2/lib/site_perl/5.21.7 /home/kent/perl5/perlbrew/perls/blead-2/lib/5.21.7/x86_64-linux /home/kent/perl5/perlbrew/perls/blead-2/lib/5.21.7 .
perl 5.21.7 is now out, so a large part of the CPAN ecosystem is blocked from being installed due to these failures.
RT-Send-CC: syber [...] crazypanda.ru
On Wed Dec 10 03:44:12 2014, KENTNL wrote: Show quoted text
> Yet to get p5p insight on this, but I have to tag this somewhere > before I go to > bed and forget > > est Summary Report > ------------------- > t/rt_80400.t (Wstat: 5632 Tests: 0 Failed: 0) > Non-zero exit status: 22 > Parse errors: Bad plan. You planned 1 tests but ran 0. > t/scalar.t (Wstat: 65280 Tests: 0 Failed: 0) > Non-zero exit status: 255 > Parse errors: Bad plan. You planned 60 tests but ran 0. > t/type.t (Wstat: 512 Tests: 23 Failed: 2) > Failed tests: 3, 5 > Non-zero exit status: 2 > t/universal_type.t (Wstat: 768 Tests: 32 Failed: 3) > Failed tests: 4, 8, 10 > Non-zero exit status: 3 > Files=19, Tests=579, 1 wallclock secs ( 0.17 usr 0.05 sys + 1.72 cusr > 0.47 csys > = 2.41 CPU)
This appears to be related to the new method op types.
On Sat Dec 20 14:20:29 2014, ETHER wrote: Show quoted text
> perl 5.21.7 is now out, so a large part of the CPAN ecosystem is > blocked from being installed due to these failures.
FYI: the tone of this comment ("YOU BROKE CPAN, YOU IDIOT!") just makes me want to give up hacking on CPAN modules, rather than working on a fix. I assume this is the opposite of the intended effect. The best way to motivate someone to work on a fix is to help -- which you're more than capable of doing -- as many other commenters -- in this ticket and other tickets relating to these breaking changes -- have done. Isn't 5.21.7 an unstable (developer) release? Is this a blessed change (i.e. won't be modified further/reverted)? I was planning to wait until the dust settled before diving into this. (Admittedly, this is at least partly laziness on my part.) P.S. If "a large part of the CPAN ecosystem" really depends on autobox, perhaps p5p denizens -- such as yourself -- should consider advocating its inclusion in core -- as has been requested/suggested many times -- to avoid problems like this in future. Unlike some of my other "syntax bending" hacks, autobox's XS is short and stupid.
RT-Send-CC: syber [...] crazypanda.ru
On Sun Dec 21 09:31:45 2014, CHOCOLATE wrote: Show quoted text
> Isn't 5.21.7 an unstable (developer) release? Is this a blessed change > (i.e. won't be modified further/reverted)?
The new method op types are here to stay, I think. Whether they will be modified further in a way that would affect autobox, I don’t know. That’s why I’m cc’ing the author of the changes.
RT-Send-CC: syber [...] crazypanda.ru
On 2014-12-21 06:31:45, CHOCOLATE wrote: Show quoted text
> On Sat Dec 20 14:20:29 2014, ETHER wrote:
> > perl 5.21.7 is now out, so a large part of the CPAN ecosystem is > > blocked from being installed due to these failures.
> > FYI: the tone of this comment ("YOU BROKE CPAN, YOU IDIOT!") just > makes me want to give up hacking on CPAN modules, rather than working > on a fix. I assume this is the opposite of the intended effect. The > best way to motivate someone to work on a fix is to help -- which > you're more than capable of doing -- as many other commenters -- in > this ticket and other tickets relating to these breaking changes -- > have done.
Hi, this certainly wasn't my intent -- you didn't break anything, and you're not an idiot. I'm very sorry that that's how it sounded! Unfortunately I'm not in a position myself of knowing what needs to be fixed, but some of the porters should be able to, or even spot what exactly needs to change and provide a patch. Show quoted text
> Isn't 5.21.7 an unstable (developer) release?
The thing is that all of CPAN is smoked regularly, and many active developers use the latest developer release possible, so when a module from CPAN is no longer installable, it means that no (recursively) dependent modules can be smoked either, which for some modules deep in the dependency chain, can affect a large proportion of the CPAN. The good thing is that usually the fix is quite simple! Show quoted text
> P.S. If "a large part of the CPAN ecosystem" really depends on > autobox, perhaps p5p denizens -- such as yourself -- should consider > advocating its inclusion in core
I can't really comment on that directly, but I think the policy nowadays is more towards keeping a smaller core and only including things in core that other things in core depend on.
FWIW (I know I'm late), a bisect on blead stops at v5.21.6-89-gd648ffc: commit d648ffcb179b885089e064ec1d58c60027c80915 Author: syber <syber@crazypanda.ru> Date: Mon Nov 24 18:55:15 2014 +0300 Remove op_const_class; just use the name on the stack I hope this helps somebody. Thanks,
On Thu Dec 25 01:47:16 2014, ANDK wrote: Show quoted text
> FWIW (I know I'm late), a bisect on blead stops at v5.21.6-89-gd648ffc: > > commit d648ffcb179b885089e064ec1d58c60027c80915 > Author: syber <syber@crazypanda.ru> > Date: Mon Nov 24 18:55:15 2014 +0300 > > Remove op_const_class; just use the name on the stack > > > I hope this helps somebody.
That is most helpful. What appears to be happening is that the invocant gets replaced by a shared string by Oleg's patch. This confuses autobox when that scalar was not a string but for example a number. My suggested solution would be to change the core logic from "replace if not a reference" with something like "replace if (only) a string". I may look at fixing this later, but no promises on timescales yet. Leon
On Thu Jan 01 18:57:49 2015, LEONT wrote: Show quoted text
> On Thu Dec 25 01:47:16 2014, ANDK wrote:
> > FWIW (I know I'm late), a bisect on blead stops at v5.21.6-89- > > gd648ffc: > > > > commit d648ffcb179b885089e064ec1d58c60027c80915 > > Author: syber <syber@crazypanda.ru> > > Date: Mon Nov 24 18:55:15 2014 +0300 > > > > Remove op_const_class; just use the name on the stack > > > > > > I hope this helps somebody.
> > That is most helpful. > > What appears to be happening is that the invocant gets replaced by a > shared string by Oleg's patch. This confuses autobox when that scalar > was not a string but for example a number. > > My suggested solution would be to change the core logic from "replace > if not a reference" with something like "replace if (only) a string". > > I may look at fixing this later, but no promises on timescales yet.
Yikes. I’ve just realised that it probably breaks method calls on glob constants. If it indeed does, then this *must* be fixed before 5.22.
RT-Send-CC: syber [...] crazypanda.ru
On 2015-01-01 16:42:01, SPROUT wrote: Show quoted text
> On Thu Jan 01 18:57:49 2015, LEONT wrote:
> > On Thu Dec 25 01:47:16 2014, ANDK wrote:
> > > FWIW (I know I'm late), a bisect on blead stops at v5.21.6-89- > > > gd648ffc: > > > > > > commit d648ffcb179b885089e064ec1d58c60027c80915 > > > Author: syber <syber@crazypanda.ru> > > > Date: Mon Nov 24 18:55:15 2014 +0300 > > > > > > Remove op_const_class; just use the name on the stack > > > > > > > > > I hope this helps somebody.
> > > > That is most helpful. > > > > What appears to be happening is that the invocant gets replaced by a > > shared string by Oleg's patch. This confuses autobox when that scalar > > was not a string but for example a number. > > > > My suggested solution would be to change the core logic from "replace > > if not a reference" with something like "replace if (only) a string". > > > > I may look at fixing this later, but no promises on timescales yet.
> > Yikes. I’ve just realised that it probably breaks method calls on > glob constants. If it indeed does, then this *must* be fixed before > 5.22.
Hi, Where's this at now? Is there a fix needed in blead, or can we fix things on the distribution side?
On Tue Jan 13 17:24:15 2015, ETHER wrote: Show quoted text
> Hi, > Where's this at now? Is there a fix needed in blead, or can we fix > things on the distribution side?
I have just filed <https://rt.perl.org/Ticket/Display.html?id=123619>. I suspect a fix in blead will be necessary.