develooper Front page | perl.perl5.porters | Postings from April 2017

[perl #131169] perlbug included

From:
L A Walsh
Date:
April 23, 2017 03:54
Subject:
[perl #131169] perlbug included
Message ID:
rt-4.0.24-11844-1492482448-275.131169-75-0@perl.org
# New Ticket Created by  L A Walsh 
# Please include the string:  [perl #131169]
# in the subject line of all future correspondence about this issue. 
# <URL: https://rt.perl.org/Ticket/Display.html?id=131169 >



Reply-To: perl-diddler@tlinx.org
Subject: base.pm broken (no one is testing on cygwin, BTW...)
From: perl-diddler@tlinx.org
Message-Id: <5.22.3_3640_1492475179@ATHENAE.hs.tlinx.org>
To: perlbug@perl.org
Cc: ASSI@cygwin.nonet


This is a bug report for perl from perl-diddler@tlinx.org,
generated with the help of perlbug 1.40 running under perl 5.22.3.


-----------------------------------------------------------------
[Please describe your issue here]

In testing for Spiffy.pm,  "base.pm" fails with:

X.pm did not return a true value at /usr/lib/perl5/5.22/base.pm line 99.
        ...propagated at /usr/lib/perl5/5.22/base.pm line 108.
BEGIN failed--compilation aborted at t/mixin.t line 14.


This causes Spiffy to fail.
  causing Test::Base to fail.
    causing Test::YAML to fail.
      causing YAML to fail.
        causing the new CPAN to fail...

Most of that wasn't initially reported, because Test::Reporter
couldn't use Test::Reporter::Transport::Metabase.  
That failed for multiple reasons, but finally led down
to a module

Data::UUID -- which is broken due to the author having no testing
on cygwin (which the thought was some type of windows platform,
not realizing it was a POSIX (linux) platform.

I modifyed UUID.{c,h} to allow it to build by doing a substitute
on all lines:
  %s/__cygwin__/__pygwin__/

Which disabled the code that classified cygwin w/other windows
platforms and treated it like a generic linux/unix platform.

That allowed Data::GUID to build... and ultimately the reporting
machinery to start working.

That led to some other bug in base.pm showing up in 5.22.

Basically, because Data::UUID was broken (it looked for a header,
'windows.h', which doesn't exist on unix platforms), no reports have
come from cygwin, it seems, for some time, so other
bugs in Perl's base, it seems, weren't tested.

MANY of the modules that wouldn't build didn't build due to problems
in those modules not handling error conditions 'gracefully' (if at all).

As has been mentioned on the cpan tester's list (Kent Fredric, 2017-03-26),
many modules are not being tested for other reasons, but here,
whether modules are tested or not, cygwin-testing has been 
completely blocked due to the error in Data::UUID.

After I found that, I prioritized getting the reporting to work, since
I could either get my last-perl-install's modules installed, or write
a bunch more bugs, which I don't really enjoy, as
they are often ignored, rejected or they are fixed too late to be
of any use to me. AFAIK, no one else has reported this problem
of broken reporting on cygwin (?).

Of note no reports could come out of the cygwin platform due since
Data::UUID was added to the requirment chain for reports on cygwin.

In addition to the utils that couldn't build due to Data::UUID,
the lack of testing seems to have allowed the bug in base.pm in 5.22
to slip by. 


[Please do not change anything below this line]
-----------------------------------------------------------------
---
Flags:
    category=core
    severity=critical
---
This perlbug was built using Perl 5.24.1 - Sat Apr  8 14:50:39 CEST 2017
It is being executed now by  Perl 5.22.3 - Sun Jan 15 13:05:43 CET 2017.

Site configuration information for perl 5.22.3:

Configured by ASSI at Sun Jan 15 13:05:43 CET 2017.

Summary of my perl5 (revision 5 version 22 subversion 3) configuration:
   
  Platform:
    osname=cygwin, osvers=2.6.1(0.30553), archname=cygwin-thread-multi
    uname='cygwin_nt-6.3 cygwin 2.6.1(0.30553) 2016-12-16 11:55 x86_64 cygwin '
    config_args='-des -Dprefix=/usr -Dmksymlinks -Darchname=x86_64-cygwin-threads -Dlibperl=cygperl5_22.dll -Dcc=gcc -Dld=g++ -Accflags=-ggdb -O2 -pipe -Wimplicit-function-declaration -fdebug-prefix-map=/mnt/share/maint/perl.x86_64/build=/usr/src/debug/perl-5.22.3-1 -fdebug-prefix-map=/mnt/share/maint/perl.x86_64/src/perl-5.22.3=/usr/src/debug/perl-5.22.3-1 -fwrapv'
    hint=recommended, useposix=true, d_sigaction=define
    useithreads=define, usemultiplicity=define
    use64bitint=define, use64bitall=define, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='gcc', ccflags ='-DPERL_USE_SAFE_PUTENV -D_GNU_SOURCE -U__STRICT_ANSI__ -ggdb -O2 -pipe -Wimplicit-function-declaration -fdebug-prefix-map=/mnt/share/maint/perl.x86_64/build=/usr/src/debug/perl-5.22.3-1 -fdebug-prefix-map=/mnt/share/maint/perl.x86_64/src/perl-5.22.3=/usr/src/debug/perl-5.22.3-1 -fwrapv -fno-strict-aliasing -fstack-protector-strong -D_FORTIFY_SOURCE=2',
    optimize='-O3',
    cppflags='-DPERL_USE_SAFE_PUTENV -D_GNU_SOURCE -U__STRICT_ANSI__ -ggdb -O2 -pipe -Wimplicit-function-declaration -fdebug-prefix-map=/mnt/share/maint/perl.x86_64/build=/usr/src/debug/perl-5.22.3-1 -fdebug-prefix-map=/mnt/share/maint/perl.x86_64/src/perl-5.22.3=/usr/src/debug/perl-5.22.3-1 -fwrapv -fno-strict-aliasing -fstack-protector-strong'
    ccversion='', gccversion='5.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='g++', ldflags =' -Wl,--enable-auto-import -Wl,--export-all-symbols -Wl,--enable-auto-image-base -fstack-protector-strong'
    libpth=/usr/lib
    libs=-lpthread -lgdbm -ldb -ldl -lcrypt -lgdbm_compat
    perllibs=-lpthread -ldl -lcrypt
    libc=/usr/lib/libcygwin.a, so=dll, useshrplib=true, libperl=cygperl5_22.dll
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
    cccdlflags=' ', lddlflags=' --shared  -Wl,--enable-auto-import -Wl,--export-all-symbols -Wl,--enable-auto-image-base -fstack-protector-strong'


---
@INC for perl 5.22.3:
    /Users/law.Bliss/bin/lib
    /usr/lib/perl5/site_perl/5.22/x86_64-cygwin-threads
    /usr/lib/perl5/site_perl/5.22
    /usr/lib/perl5/vendor_perl/5.22/x86_64-cygwin-threads
    /usr/lib/perl5/vendor_perl/5.22
    /usr/lib/perl5/5.22/x86_64-cygwin-threads
    /usr/lib/perl5/5.22

---
Environment for perl 5.22.3:
    CYGWIN=system nodosfilewarning winsymlinks:native export
    HOME=/Users/law.Bliss
    LANG (unset)
    LANGUAGE (unset)
    LC_COLLATE=C
    LC_CTYPE=en_US.UTF-8
    LC_MESSAGES=C
    LC_MONETARY=C
    LC_NUMERIC=C
    LC_TIME=C
    LD_LIBRARY_PATH (unset)
    LOGDIR (unset)
    PATH=.:.:/sbin:/Windows:/Windows/system32:/Windows/System32/Wbem:/prog64/vim/current:/Prog64/VanDyke:/Prog/Sysinternals/cmd:/Prog/Sysinternals:/Prog/Common:/Windows/System32/WindowsPowerShell/v1.0:/Prog/QuickTime:/Prog/QuickTime/QTSystem:/ProgramData/Oracle/Java/javapath:/Prog/NVIDIA:/Prog64/Razer:/Prog/Razer:/usr/sbin:/Users/law.Bliss/bin:/bin:/usr/local/bin:/etc/local/func_lib:/Users/law.Bliss/bin/lib
    PERL5OPT=-Mutf8 -CSA -I/Users/law.Bliss/bin/lib
    PERL_BADLANG (unset)
    SHELL=C:/Bin/Bash.exe



nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About