Skip Menu |

This queue is for tickets about the Type-Tiny-XS CPAN distribution.

Report information
The Basics
Id: 130458
Status: resolved
Priority: 0/
Queue: Type-Tiny-XS

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

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



Subject: build failure with Type:Tiny:XS 0.015 (and 0.016?)
Date: Thu, 5 Sep 2019 17:27:20 -0400
To: bug-Type-Tiny-XS [...] rt.cpan.org
From: Michael Hamlin <pyrrhlin [...] gmail.com>
howdy, I noticed a new build failure on an internal project yesterday that appears to be from the new Type:Tiny:XS release. The CI for this project is using dzil to build a package, but it's failing while just trying to get this dependency (command was "dzil listdeps --missing | cpanm"): --------------------------------- Searching Type::Tiny::XS () on cpanmetadb ... --> Working on Type::Tiny::XS Fetching http://www.cpan.org/authors/id/T/TO/TOBYINK/Type-Tiny-XS-0.015.tar.gz -> OK Unpacking Type-Tiny-XS-0.015.tar.gz Entering Type-Tiny-XS-0.015 Checking configure dependencies from META.json Checking if you have ExtUtils::MakeMaker 6.58 ... Yes (7.24) Configuring Type-Tiny-XS-0.015 Running Makefile.PL Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for Type::Tiny::XS Writing MYMETA.yml and MYMETA.json -> OK Checking dependencies from MYMETA.json ... Checking if you have Test::More 0.92 ... Yes (1.302136) Building and testing Type-Tiny-XS-0.015 cp lib/Type/Tiny/XS/Util.pm blib/lib/Type/Tiny/XS/Util.pm cp lib/Type/Tiny/XS.pm blib/lib/Type/Tiny/XS.pm Running Mkbootstrap for XS () chmod 644 "XS.bs" "/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- XS.bs blib/arch/auto/Type/Tiny/XS/XS.bs 644 "/usr/bin/perl" "/usr/share/perl5/core_perl/ExtUtils/xsubpp" -typemap '/usr/share/perl5/core_perl/ExtUtils/typemap' Util.xs > Util.xsc mv Util.xsc Util.c cc -c -I. -D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Os -fomit-frame-pointer -DVERSION=\"0.015\" -DXS_VERSION=\"0.015\" -fPIC "-I/usr/lib/perl5/core_perl/CORE" Util.c "/usr/bin/perl" "/usr/share/perl5/core_perl/ExtUtils/xsubpp" -typemap '/usr/share/perl5/core_perl/ExtUtils/typemap' XS.xs > XS.xsc mv XS.xsc XS.c cc -c -I. -D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Os -fomit-frame-pointer -DVERSION=\"0.015\" -DXS_VERSION=\"0.015\" -fPIC "-I/usr/lib/perl5/core_perl/CORE" XS.c XS.xs: In function 'boot_Type__Tiny__XS': XS.xs:785:5: warning: implicit declaration of function 'boot_Type__Tiny__XS__Util' [-Wimplicit-function-declaration] boot_Type__Tiny__XS__Util(aTHX_ cv); ^~~~~~~~~~~~~~~~~~~~~~~~~ rm -f blib/arch/auto/Type/Tiny/XS/XS.so cc -shared -Os -fomit-frame-pointer -L/usr/local/lib -fstack-protector-strong Util.o XS.o -o blib/arch/auto/Type/Tiny/XS/XS.so \ \ chmod 755 blib/arch/auto/Type/Tiny/XS/XS.so Manifying 2 pod documents "/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- XS.bs blib/arch/auto/Type/Tiny/XS/XS.bs 644 PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/01basic.t .............. ok t/02int.t ................ ok t/03positiveint.t ........ ok t/04positiveorzeroint.t .. ok t/05nonemptystr.t ........ ok t/06map.t ................ ok t/07tuple.t .............. ok t/08enum.t ............... ok t/09anyof_allof.t ........ ok t/10bool.t ............... ok t/99parsing.t ............ ok t/gh8.t .................. No subtests run Test Summary Report ------------------- t/gh8.t (Wstat: 139 Tests: 0 Failed: 0) Non-zero wait status: 139 Parse errors: No plan found in TAP output Files=12, Tests=134, 0 wallclock secs ( 0.04 usr 0.02 sys + 0.60 cusr 0.13 csys = 0.79 CPU) Result: FAIL Failed 1/12 test programs. 0/134 subtests failed. make: *** [Makefile:1042: test_dynamic] Error 255 -> FAIL Installing Type::Tiny::XS failed. See /root/.cpanm/work/1567627154.3790/build.log for details. Retry with --force to force install it. --------------------------------- If I read that correctly, it's segfaulting while trying to run the gh8.t test. I was able to build the module just fine in my local dev environment, so it must be something peculiar to the CI environment. Here's the perl -V from inside this container: --------------------------------- Summary of my perl5 (revision 5 version 26 subversion 2) configuration: Platform: osname=linux osvers=4.14.39-0-vanilla archname=x86_64-linux-thread-multi uname='linux build-3-8-x86_64 4.14.39-0-vanilla #1-alpine smp mon may 7 11:50:15 utc 2018 x86_64 gnulinux ' config_args='-des -Dcccdlflags=-fPIC -Dcccdlflags=-fPIC -Dccdlflags=-rdynamic -Dprefix=/usr -Dprivlib=/usr/share/perl5/core_perl -Darchlib=/usr/lib/perl5/core_perl -Dvendorprefix=/usr -Dvendorlib=/usr/share/perl5/vendor_perl -Dvendorarch=/usr/lib/perl5/vendor_perl -Dsiteprefix=/usr/local -Dsitelib=/usr/local/share/perl5/site_perl -Dsitearch=/usr/local/lib/perl5/site_perl -Dlocincpth= -Doptimize=-Os -fomit-frame-pointer -Duselargefiles -Dusethreads -Duseshrplib -Dd_semctl_semun -Dman1dir=/usr/share/man/man1 -Dman3dir=/usr/share/man/man3 -Dinstallman1dir=/usr/share/man/man1 -Dinstallman3dir=/usr/share/man/man3 -Dman1ext=1 -Dman3ext=3pm -Dcf_by=Alpine -Ud_csh -Dusenm' hint=recommended useposix=true d_sigaction=define useithreads=define usemultiplicity=define use64bitint=define use64bitall=define uselongdouble=undef usemymalloc=n default_inc_excludes_dot=define bincompat5005=undef Compiler: cc='cc' ccflags ='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' optimize='-Os -fomit-frame-pointer' cppflags='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong' ccversion='' gccversion='6.4.0' 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 =' -fstack-protector-strong -L/usr/local/lib' libpth=/usr/local/lib /usr/include/fortify /usr/lib /lib/../lib /usr/lib/../lib /lib libs=-lpthread -ldl -lm -lcrypt -lutil -lc perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc libc=/usr/lib/libc.a so=so useshrplib=true libperl=libperl.so gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs dlext=so d_dlsymun=undef ccdlflags='-rdynamic -Wl,-rpath,/usr/lib/perl5/core_perl/CORE' cccdlflags='-fPIC' lddlflags='-shared -Os -fomit-frame-pointer -L/usr/local/lib -fstack-protector-strong' Characteristics of this binary (from libperl): Compile-time options: HAS_TIMES MULTIPLICITY PERLIO_LAYERS PERL_COPY_ON_WRITE PERL_DONT_CREATE_GVSV PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP PERL_OP_PARENT PERL_PRESERVE_IVUV USE_64_BIT_ALL USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES USE_LOCALE USE_LOCALE_COLLATE USE_LOCALE_CTYPE USE_LOCALE_NUMERIC USE_LOCALE_TIME USE_PERLIO USE_PERL_ATOF USE_REENTRANT_API Built under linux Compiled at Jun 13 2018 12:09:34 @INC: /usr/local/lib/perl5/site_perl /usr/local/share/perl5/site_perl /usr/lib/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib/perl5/core_perl /usr/share/perl5/core_perl --------------------------------- The docker image in which these run is built using the following Dockerfile (the inherited layer is public): --------------------------------- FROM registry.gitlab.com/rsrchboy/perl-ci/dzil:latest RUN apk add --update \ perl-xml-parser perl-dbd-pg \ perl-file-slurp perl-dev perl-sub-identify \ gettext --------------------------------- While running more tests, I just saw there's a new version 0.016, but it's failing with the same error. Thanks for looking! - Michael
Stacktrace with a 5.30.0 and 0.016: Program terminated with signal SIGABRT, Aborted. #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory. (gdb) bt #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 #1 0x00007f04060222f1 in __GI_abort () at abort.c:79 #2 0x00007f0406019a8a in __assert_fail_base (fmt=0x7f040616dec8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x5582c1646250 "(PL_markstack_ptr > PL_markstack) || !\"MARK underflow\"", file=file@entry=0x5582c1806346 "inline.h", line=line@entry=172, function=function@entry=0x5582c17aa9f8 <__PRETTY_FUNCTION__.19516> "S_POPMARK") at assert.c:92 #3 0x00007f0406019b02 in __GI___assert_fail (assertion=assertion@entry=0x5582c1646250 "(PL_markstack_ptr > PL_markstack) || !\"MARK underflow\"", file=file@entry=0x5582c1806346 "inline.h", line=line@entry=172, function=function@entry=0x5582c17aa9f8 <__PRETTY_FUNCTION__.19516> "S_POPMARK") at assert.c:101 #4 0x00005582c14ef368 in S_POPMARK (my_perl=0x5582c350a260) at inline.h:168 #5 Perl_xs_handshake (key=key@entry=214958311, v_my_perl=v_my_perl@entry=0x5582c350a260, file=file@entry=0x7f04058415ef "Util.c") at util.c:5424 #6 0x00007f040583b4c4 in boot_Type__Tiny__XS__Util (my_perl=my_perl@entry=0x5582c350a260, cv=cv@entry=0x5582c41099a0) at Util.c:845 #7 0x00007f0405840401 in boot_Type__Tiny__XS (my_perl=0x5582c350a260, cv=0x5582c41099a0) at XS.xs:785 #8 0x00005582c1523636 in Perl_pp_entersub (my_perl=0x5582c350a260) at pp_hot.c:5237 #9 0x00005582c14dc33a in Perl_runops_debug (my_perl=0x5582c350a260) at dump.c:2536 #10 0x00005582c142d35d in Perl_call_sv (my_perl=my_perl@entry=0x5582c350a260, sv=sv@entry=0x5582c353e130, flags=flags@entry=13) at perl.c:3043 #11 0x00005582c1431b6f in Perl_call_list (my_perl=my_perl@entry=0x5582c350a260, oldscope=oldscope@entry=2, paramList=0x5582c353e178) at perl.c:5084 #12 0x00005582c13fe8af in S_process_special_blocks (my_perl=my_perl@entry=0x5582c350a260, floor=floor@entry=47, fullname=<optimized out>, fullname@entry=0x5582c35468b0 "BEGIN", gv=0x5582c353e190, cv=cv@entry=0x5582c353e130) at op.c:10471 #13 0x00005582c14226b5 in Perl_newATTRSUB_x (my_perl=my_perl@entry=0x5582c350a260, floor=floor@entry=47, o=<optimized out>, proto=<optimized out>, proto@entry=0x0, attrs=<optimized out>, attrs@entry=0x0, block=0x5582c354c4e0, block@entry=0x5582c354c560, o_is_gv=<optimized out>) at op.c:10396 #14 0x00005582c1427a5d in Perl_utilize (my_perl=my_perl@entry=0x5582c350a260, aver=<optimized out>, floor=47, version=<optimized out>, idop=<optimized out>, arg=<optimized out>) at op.c:7592 #15 0x00005582c1485c0f in Perl_yyparse (my_perl=my_perl@entry=0x5582c350a260, gramtype=gramtype@entry=258) at perly.y:335 #16 0x00005582c1436bc0 in S_parse_body (xsinit=0x5582c13fd4d0 <xs_init>, env=0x0, my_perl=0x5582c350a260) at perl.c:2531 #17 perl_parse (my_perl=0x5582c350a260, xsinit=0x5582c13fd4d0 <xs_init>, argc=<optimized out>, argv=<optimized out>, env=0x0) at perl.c:1822 #18 0x00005582c13fd313 in main (argc=<optimized out>, argv=<optimized out>, env=<optimized out>) at perlmain.c:126
The test report from the perl that produced that stack trace above: http://www.cpantesters.org/cpan/report/c1644c9e-d16e-11e9-857c-0336839580ef
On Czw 05 Wrz 2019, 17:27:51, pyrrhlin@gmail.com wrote: Show quoted text
> howdy, > > I noticed a new build failure on an internal project yesterday that > appears to be from the new Type:Tiny:XS release. >
(...) Show quoted text
> The docker image in which these run is built using the following > Dockerfile (the inherited layer is public): > --------------------------------- > FROM registry.gitlab.com/rsrchboy/perl-ci/dzil:latest > > RUN apk add --update \ > perl-xml-parser perl-dbd-pg \ > perl-file-slurp perl-dev perl-sub-identify \ > gettext > --------------------------------- > > While running more tests, I just saw there's a new version 0.016, but > it's failing with the same error. > > Thanks for looking! > - Michael
This PR fixes the issue: https://github.com/tobyink/p5-type-tiny-xs/pull/11
Thanks! Released 0.017. Closing this issue; feel free to re-open if it doesn't resolve things.