garu / app-cpanminus-reporter Goto Github PK
View Code? Open in Web Editor NEWstand-alone CPAN Testers client (for cpanminus and friends)
stand-alone CPAN Testers client (for cpanminus and friends)
[sorry if the formatting is rubbish - I didn't preview before sending, and can't preview while editing now]
I ran cpanm from an unpacked (source) directory:
C:\Users\mark\src\sys-cmd>cpanm --installdeps --with-develop .
--> Working on .
Configuring C:/Users/mark/src/sys-cmd ... OK
==> Found dependencies: Log::Any
--> Working on Log::Any
Fetching http://www.cpan.org/authors/id/J/JS/JSWARTZ/Log-Any-0.15.tar.gz ... OK
Configuring Log-Any-0.15 ... OK
Building and testing Log-Any-0.15 ... OK
Successfully installed Log-Any-0.15
<== Installed dependencies for .. Finishing.
1 distribution installed
Running cpanm-reporter afterwards resulting in the following:
C:\Users\mark\src\sys-cmd>cpanm-reporter
Parsing error. Found 'C:/Users/mark/src/sys-cmd' without fetching first. at C:\strawberry\perl\site \bin/cpanm-reporter line 26.
The contents of the build.log file were as follows:
panm (App::cpanminus) 1.7001 on perl 5.018002 built for MSWin32-x86-multithread-64int
Work directory is C:\Users\mark/.cpanm/work/1409924271.1416
You have make C:\strawberry\c\bin\dmake.exe
You have LWP 6.05
You have "C:\Program Files (x86)\Git\bin\tar.exe", "C:\Program Files (x86)\Git\b
in\gzip.exe" and "C:\Program Files (x86)\Git\bin\bzip2.exe"
You have "C:\Program Files (x86)\Git\bin\unzip.exe"
--> Working on .
Entering C:/Users/mark/src/sys-cmd
Configuring C:/Users/mark/src/sys-cmd
-> OK
Checking if you have Log::Any 0 ... No
Checking if you have IO::Handle 0 ... Yes (1.34)
Checking if you have POSIX 0 ... Yes (1.32)
Checking if you have File::Which 0 ... Yes (1.09)
Checking if you have Carp 0 ... Yes (1.3301)
Checking if you have Test::More 0 ... Yes (1.001003)
Checking if you have File::chdir 0 ... Yes (0.1008)
Checking if you have Data::Dumper 0 ... Yes (2.151)
Checking if you have Exporter::Tidy 0 ... Yes (0.07)
Checking if you have File::Spec 0 ... Yes (3.40)
Checking if you have File::Temp 0 ... Yes (0.2304)
Checking if you have Cwd 0 ... Yes (3.40)
==> Found dependencies: Log::Any
I'm guess that the parsing is expecting everything to be downloaded, instead of running cpanm on something which is already unpacked.
5 distributions installed
Parsing error. This should not happen. Please send us a report! at /home/kent/perl5/perlbrew/perls/blead/bin/cpanm-reporter line 29.
cpanm-reporter -v
Parsing /home/kent/.cpanm/build.log...
entering Search-Elasticsearch-1.14, http://cpan.metacpan.org/authors/id/D/DR/DRTECH/Search-Elasticsearch-1.14.tar.gz
entering Log-Any-Adapter-0.11, http://cpan.metacpan.org/authors/id/J/JS/JSWARTZ/Log-Any-Adapter-0.11.tar.gz
entering Guard-1.022, http://cpan.metacpan.org/authors/id/M/ML/MLEHMANN/Guard-1.022.tar.gz
recording Guard-1.022
Parsing error. This should not happen. Please send us a report! at /home/kent/perl5/perlbrew/perls/blead/bin/cpanm-reporter line 29.
Probably related to the fact I chose "look", interactively fixed it by hand, and then exited out and hit 'retry' on cpanm.
cpanm (App::cpanminus) 1.7004 on perl 5.021003 built for x86_64-linux
Work directory is /home/kent/.cpanm/work/1408597013.317747
You have make /usr/bin/make
You have LWP 6.08
You have /bin/tar: tar (GNU tar) 1.28
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by John Gilmore and Jay Fenlason.
You have /usr/bin/unzip
Searching Search::Elasticsearch on cpanmetadb ...
--> Working on Search::Elasticsearch
Fetching http://cpan.metacpan.org/authors/id/D/DR/DRTECH/Search-Elasticsearch-1.14.tar.gz
-> OK
Fetching http://cpan.metacpan.org/authors/id/D/DR/DRTECH/CHECKSUMS
-> OK
Verifying the signature of CHECKSUMS
Verified OK!
Verifying the SHA1 for Search-Elasticsearch-1.14.tar.gz
Checksum for Search-Elasticsearch-1.14.tar.gz: Verified!
Unpacking Search-Elasticsearch-1.14.tar.gz
Entering Search-Elasticsearch-1.14
Checking configure dependencies from META.json
Checking if you have ExtUtils::MakeMaker 6.30 ... Yes (6.98)
Configuring Search-Elasticsearch-1.14
Running Makefile.PL
-> OK
Checking dependencies from MYMETA.json ...
Checking if you have Test::More 0.98 ... Yes (1.001003)
Checking if you have Any::URI::Escape 0 ... Yes (0.01)
Checking if you have HTTP::Tiny 0.043 ... Yes (0.047)
Checking if you have HTTP::Request 0 ... Yes (6.00)
Checking if you have Sub::Exporter 0 ... Yes (0.987)
Checking if you have Log::Any::Adapter 0 ... No
Checking if you have File::Temp 0 ... Yes (0.2304)
Checking if you have Encode 0 ... Yes (2.62)
Checking if you have Module::Runtime 0 ... Yes (0.014)
Checking if you have Time::HiRes 0 ... Yes (1.9726)
Checking if you have overload 0 ... Yes (1.22)
Checking if you have LWP::UserAgent 0 ... Yes (6.06)
Checking if you have Test::Pod 1.41 ... Yes (1.48)
Checking if you have Test::NoTabs 0 ... Yes (1.3)
Checking if you have IO::Uncompress::Inflate 0 ... Yes (2.064)
Checking if you have HTTP::Headers 0 ... Yes (6.05)
Checking if you have IO::Select 0 ... Yes (1.22)
Checking if you have Try::Tiny 0 ... Yes (0.22)
Checking if you have Hijk 0.12 ... Yes (0.13)
Checking if you have Moo::Role 0 ... Yes (1.006000)
Checking if you have MIME::Base64 0 ... Yes (3.14)
Checking if you have strict 0 ... Yes (1.08)
Checking if you have Log::Any 0 ... Yes (0.15)
Checking if you have JSON::PP 0 ... Yes (2.27203)
Checking if you have Scalar::Util 0 ... Yes (1.39)
Checking if you have lib 0 ... Yes (0.63)
Checking if you have Data::Dumper 0 ... Yes (2.152)
Checking if you have POSIX 0 ... Yes (1.42)
Checking if you have IO::Socket 0 ... Yes (1.37)
Checking if you have URI 0 ... Yes (1.64)
Checking if you have Moo 1.003 ... Yes (1.006000)
Checking if you have namespace::clean 0 ... Yes (0.25)
Checking if you have IO::Socket::SSL 0 ... Yes (1.997)
Checking if you have warnings 0 ... Yes (1.26)
Checking if you have List::Util 0 ... Yes (1.39)
Checking if you have Log::Any::Adapter::Callback 0 ... No
Checking if you have Test::Exception 0 ... Yes (0.32)
Checking if you have Test::Deep 0 ... Yes (0.112)
Checking if you have JSON::MaybeXS 1.002002 ... Yes (1.002002)
Checking if you have Mojo::IOLoop 0 ... Yes (undef)
Checking if you have Mojo::UserAgent 0 ... Yes (undef)
Checking if you have JSON::XS 0 ... Yes (3.01)
Checking if you have URI::Escape::XS 0 ... No
Checking if you have Cpanel::JSON::XS 0 ... Yes (3.0104)
==> Found dependencies: Log::Any::Adapter, Log::Any::Adapter::Callback, URI::Escape::XS
Searching Log::Any::Adapter on cpanmetadb ...
--> Working on Log::Any::Adapter
Fetching http://cpan.metacpan.org/authors/id/J/JS/JSWARTZ/Log-Any-Adapter-0.11.tar.gz
-> OK
Fetching http://cpan.metacpan.org/authors/id/J/JS/JSWARTZ/CHECKSUMS
-> OK
Verifying the signature of CHECKSUMS
Verified OK!
Verifying the SHA1 for Log-Any-Adapter-0.11.tar.gz
Checksum for Log-Any-Adapter-0.11.tar.gz: Verified!
Unpacking Log-Any-Adapter-0.11.tar.gz
Entering Log-Any-Adapter-0.11
Checking configure dependencies from META.json
Checking if you have ExtUtils::MakeMaker 6.30 ... Yes (6.98)
Configuring Log-Any-Adapter-0.11
Running Makefile.PL
-> OK
Checking dependencies from MYMETA.json ...
Checking if you have Capture::Tiny 0.12 ... Yes (0.25)
Checking if you have Devel::GlobalDestruction 0 ... Yes (0.13)
Checking if you have IO::File 0 ... Yes (1.16)
Checking if you have Guard 0 ... No
Checking if you have Test::More 0 ... Yes (1.001003)
Checking if you have Carp 0 ... Yes (1.34)
Checking if you have Log::Any 0 ... Yes (0.15)
==> Found dependencies: Guard
Searching Guard on cpanmetadb ...
--> Working on Guard
Fetching http://cpan.metacpan.org/authors/id/M/ML/MLEHMANN/Guard-1.022.tar.gz
-> OK
Fetching http://cpan.metacpan.org/authors/id/M/ML/MLEHMANN/CHECKSUMS
-> OK
Verifying the signature of CHECKSUMS
Verified OK!
Verifying the SHA1 for Guard-1.022.tar.gz
Checksum for Guard-1.022.tar.gz: Verified!
Unpacking Guard-1.022.tar.gz
Entering Guard-1.022
Checking configure dependencies from META.json
Checking if you have ExtUtils::MakeMaker 0 ... Yes (6.98)
Configuring Guard-1.022
Running Makefile.PL
-> OK
Checking dependencies from MYMETA.json ...
Checking if you have ExtUtils::MakeMaker 0 ... Yes (6.98)
Building and testing Guard-1.022
cp Guard.pm blib/lib/Guard.pm
Running Mkbootstrap for Guard ()
chmod 644 Guard.bs
/home/kent/perl5/perlbrew/perls/blead/bin/perl5.21.3 /home/kent/perl5/perlbrew/perls/blead/lib/5.21.3/ExtUtils/xsubpp -typemap /home/kent/perl5/perlbrew/perls/blead/lib/5.21.3/ExtUtils/typemap Guard.xs > Guard.xsc && mv Guard.xsc Guard.c
cc -c -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 -O3 -march=native -mtune=native -g -ggdb3 -DVERSION=\"1.022\" -DXS_VERSION=\"1.022\" -fPIC "-I/home/kent/perl5/perlbrew/perls/blead/lib/5.21.3/x86_64-linux/CORE" Guard.c
Guard.xs: In function ‘XS_Guard_guard’:
Guard.xs:113:11: error: ‘PL_sv_objcount’ undeclared (first use in this function)
++PL_sv_objcount;
^
Guard.xs:113:11: note: each undeclared identifier is reported only once for each function it appears in
Makefile:326: recipe for target 'Guard.o' failed
make: *** [Guard.o] Error 1
Entering /home/kent/.cpanm/work/1408597013.317747/Guard-1.022 with /bin/bash
Running Mkbootstrap for Guard ()
chmod 644 Guard.bs
PERL_DL_NONLAZY=1 /home/kent/perl5/perlbrew/perls/blead/bin/perl5.21.3 "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00_load.t .... ok
t/01_scoped.t .. ok
t/02_guard.t ... ok
t/03_die.t ..... ok
All tests successful.
Files=4, Tests=33, 0 wallclock secs ( 0.04 usr 0.01 sys + 0.04 cusr 0.03 csys = 0.12 CPU)
Result: PASS
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/x86_64-linux/auto/Guard/Guard.so
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/x86_64-linux/Guard.pm
Appending installation info to /home/kent/perl5/perlbrew/perls/blead/lib/5.21.3/x86_64-linux/perllocal.pod
-> OK
Successfully installed Guard-1.022
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/x86_64-linux/.meta/Guard-1.022/MYMETA.json
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/x86_64-linux/.meta/Guard-1.022/install.json
Building and testing Log-Any-Adapter-0.11
cp lib/Log/Any/Adapter/Stdout.pm blib/lib/Log/Any/Adapter/Stdout.pm
cp lib/Log/Any/Adapter/File.pm blib/lib/Log/Any/Adapter/File.pm
cp lib/Log/Any/Adapter/FileScreenBase.pm blib/lib/Log/Any/Adapter/FileScreenBase.pm
cp lib/Log/Any/Manager.pm blib/lib/Log/Any/Manager.pm
cp lib/Log/Any/Adapter/Util.pm blib/lib/Log/Any/Adapter/Util.pm
cp lib/Log/Any/Adapter/Development.pod blib/lib/Log/Any/Adapter/Development.pod
cp lib/Log/Any/Adapter/Base.pm blib/lib/Log/Any/Adapter/Base.pm
cp lib/Log/Any/Adapter/Test/Memory.pm blib/lib/Log/Any/Adapter/Test/Memory.pm
cp lib/Log/Any/Adapter.pm blib/lib/Log/Any/Adapter.pm
cp lib/Log/Any/Adapter/Stderr.pm blib/lib/Log/Any/Adapter/Stderr.pm
PERL_DL_NONLAZY=1 /home/kent/perl5/perlbrew/perls/blead/bin/perl5.21.3 "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
# Testing Log::Any 0.15, Perl 5.021003, /home/kent/perl5/perlbrew/perls/blead/bin/perl5.21.3
t/00-load.t ..... ok
t/errors.t ...... ok
t/filescreen.t .. ok
t/import.t ...... ok
t/memory.t ...... ok
t/sprintf.t ..... ok
All tests successful.
Files=6, Tests=43, 0 wallclock secs ( 0.05 usr 0.02 sys + 0.30 cusr 0.08 csys = 0.45 CPU)
Result: PASS
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Manager.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/Util.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/FileScreenBase.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/File.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/Stderr.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/Development.pod
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/Base.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/Stdout.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/Test/Memory.pm
Appending installation info to /home/kent/perl5/perlbrew/perls/blead/lib/5.21.3/x86_64-linux/perllocal.pod
-> OK
Successfully installed Log-Any-Adapter-0.11
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/x86_64-linux/.meta/Log-Any-Adapter-0.11/MYMETA.json
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/x86_64-linux/.meta/Log-Any-Adapter-0.11/install.json
Searching Log::Any::Adapter::Callback on cpanmetadb ...
--> Working on Log::Any::Adapter::Callback
Fetching http://cpan.metacpan.org/authors/id/S/SH/SHARYANTO/Log-Any-Adapter-Callback-0.09.tar.gz
-> OK
Fetching http://cpan.metacpan.org/authors/id/S/SH/SHARYANTO/CHECKSUMS
-> OK
Verifying the signature of CHECKSUMS
Verified OK!
Verifying the SHA1 for Log-Any-Adapter-Callback-0.09.tar.gz
Checksum for Log-Any-Adapter-Callback-0.09.tar.gz: Verified!
Unpacking Log-Any-Adapter-Callback-0.09.tar.gz
Entering Log-Any-Adapter-Callback-0.09
Checking configure dependencies from META.json
Checking if you have ExtUtils::MakeMaker 6.30 ... Yes (6.98)
Configuring Log-Any-Adapter-Callback-0.09
Running Makefile.PL
-> OK
Checking dependencies from MYMETA.json ...
Checking if you have Log::Any::Adapter 0.11 ... Yes (0.11)
Checking if you have IO::Handle 0 ... Yes (1.35)
Checking if you have IPC::Open3 0 ... Yes (1.18)
Checking if you have Test::More 0.98 ... Yes (1.001003)
Checking if you have File::Spec 0 ... Yes (3.49)
Building and testing Log-Any-Adapter-Callback-0.09
cp lib/Log/Any/Adapter/Callback.pm blib/lib/Log/Any/Adapter/Callback.pm
PERL_DL_NONLAZY=1 /home/kent/perl5/perlbrew/perls/blead/bin/perl5.21.3 "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00-compile.t ............ ok
t/01-basics.t ............. ok
t/release-pod-coverage.t .. skipped: these tests are for release candidate testing
t/release-pod-syntax.t .... skipped: these tests are for release candidate testing
t/release-rinci.t ......... skipped: these tests are for release candidate testing
All tests successful.
Files=5, Tests=2, 0 wallclock secs ( 0.03 usr 0.01 sys + 0.17 cusr 0.06 csys = 0.27 CPU)
Result: PASS
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/Callback.pm
Appending installation info to /home/kent/perl5/perlbrew/perls/blead/lib/5.21.3/x86_64-linux/perllocal.pod
-> OK
Successfully installed Log-Any-Adapter-Callback-0.09
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/x86_64-linux/.meta/Log-Any-Adapter-Callback-0.09/MYMETA.json
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/x86_64-linux/.meta/Log-Any-Adapter-Callback-0.09/install.json
Searching URI::Escape::XS on cpanmetadb ...
--> Working on URI::Escape::XS
Fetching http://cpan.metacpan.org/authors/id/D/DA/DANKOGAI/URI-Escape-XS-0.12.tar.gz
-> OK
Fetching http://cpan.metacpan.org/authors/id/D/DA/DANKOGAI/CHECKSUMS
-> OK
Verifying the signature of CHECKSUMS
Verified OK!
Verifying the SHA1 for URI-Escape-XS-0.12.tar.gz
Checksum for URI-Escape-XS-0.12.tar.gz: Verified!
Unpacking URI-Escape-XS-0.12.tar.gz
Entering URI-Escape-XS-0.12
Checking configure dependencies from META.json
Checking if you have ExtUtils::MakeMaker 0 ... Yes (6.98)
Configuring URI-Escape-XS-0.12
Running Makefile.PL
-> OK
Checking dependencies from MYMETA.json ...
Checking if you have ExtUtils::MakeMaker 0 ... Yes (6.98)
Checking if you have Test::More 0 ... Yes (1.001003)
Building and testing URI-Escape-XS-0.12
cp lib/URI/Escape/XS.pm blib/lib/URI/Escape/XS.pm
Running Mkbootstrap for URI::Escape::XS ()
chmod 644 XS.bs
/home/kent/perl5/perlbrew/perls/blead/bin/perl5.21.3 /home/kent/perl5/perlbrew/perls/blead/lib/5.21.3/ExtUtils/xsubpp -typemap /home/kent/perl5/perlbrew/perls/blead/lib/5.21.3/ExtUtils/typemap XS.xs > XS.xsc && mv XS.xsc XS.c
cc -c -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 -O3 -march=native -mtune=native -g -ggdb3 -DVERSION=\"0.12\" -DXS_VERSION=\"0.12\" -fPIC "-I/home/kent/perl5/perlbrew/perls/blead/lib/5.21.3/x86_64-linux/CORE" XS.c
rm -f blib/arch/auto/URI/Escape/XS/XS.so
cc -shared -O3 -march=native -mtune=native -g -ggdb3 -L/usr/local/lib -fstack-protector XS.o -o blib/arch/auto/URI/Escape/XS/XS.so \
\
chmod 755 blib/arch/auto/URI/Escape/XS/XS.so
/home/kent/perl5/perlbrew/perls/blead/bin/perl5.21.3 -MExtUtils::Command::MM -e 'cp_nonempty' -- XS.bs blib/arch/auto/URI/Escape/XS/XS.bs 644
Running Mkbootstrap for URI::Escape::XS ()
chmod 644 XS.bs
PERL_DL_NONLAZY=1 /home/kent/perl5/perlbrew/perls/blead/bin/perl5.21.3 "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
# Testing URI::Escape::XS 0.12, Perl 5.021003, /home/kent/perl5/perlbrew/perls/blead/bin/perl5.21.3
t/00-load.t ....... ok
t/01-compat.t ..... ok
t/02-basic.t ...... ok
t/03-hashu.t ...... ok
t/04-idn.t ........ ok
t/05-null.t ....... ok
t/06-nonstr.t ..... ok
t/boilerplate.t ... ok
t/pod-coverage.t .. ok
t/pod.t ........... ok
All tests successful.
Files=10, Tests=549, 1 wallclock secs ( 0.13 usr 0.03 sys + 0.51 cusr 0.12 csys = 0.79 CPU)
Result: PASS
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/x86_64-linux/auto/URI/Escape/XS/XS.so
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/x86_64-linux/URI/Escape/XS.pm
Appending installation info to /home/kent/perl5/perlbrew/perls/blead/lib/5.21.3/x86_64-linux/perllocal.pod
-> OK
Successfully installed URI-Escape-XS-0.12
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/x86_64-linux/.meta/URI-Escape-XS-0.12/MYMETA.json
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/x86_64-linux/.meta/URI-Escape-XS-0.12/install.json
Building and testing Search-Elasticsearch-1.14
cp lib/Search/Elasticsearch/Client/Direct/Cluster.pm blib/lib/Search/Elasticsearch/Client/Direct/Cluster.pm
cp lib/Search/Elasticsearch/Error.pm blib/lib/Search/Elasticsearch/Error.pm
cp lib/Search/Elasticsearch.pm blib/lib/Search/Elasticsearch.pm
cp lib/Search/Elasticsearch/CxnPool/Static/NoPing.pm blib/lib/Search/Elasticsearch/CxnPool/Static/NoPing.pm
cp lib/Search/Elasticsearch/Role/Client.pm blib/lib/Search/Elasticsearch/Role/Client.pm
cp lib/Search/Elasticsearch/Client/Direct/Snapshot.pm blib/lib/Search/Elasticsearch/Client/Direct/Snapshot.pm
cp lib/Search/Elasticsearch/Role/CxnPool.pm blib/lib/Search/Elasticsearch/Role/CxnPool.pm
cp lib/Search/Elasticsearch/Cxn/Hijk.pm blib/lib/Search/Elasticsearch/Cxn/Hijk.pm
cp lib/Search/Elasticsearch/Cxn/HTTPTiny.pm blib/lib/Search/Elasticsearch/Cxn/HTTPTiny.pm
cp lib/Search/Elasticsearch/Cxn/LWP.pm blib/lib/Search/Elasticsearch/Cxn/LWP.pm
cp lib/Search/Elasticsearch/Client/0_90/Direct.pm blib/lib/Search/Elasticsearch/Client/0_90/Direct.pm
cp lib/Search/Elasticsearch/Role/Cxn.pm blib/lib/Search/Elasticsearch/Role/Cxn.pm
cp lib/Search/Elasticsearch/Role/API.pm blib/lib/Search/Elasticsearch/Role/API.pm
cp lib/Search/Elasticsearch/Logger/LogAny.pm blib/lib/Search/Elasticsearch/Logger/LogAny.pm
cp lib/Search/Elasticsearch/Role/Bulk.pm blib/lib/Search/Elasticsearch/Role/Bulk.pm
cp lib/Search/Elasticsearch/CxnPool/Static.pm blib/lib/Search/Elasticsearch/CxnPool/Static.pm
cp lib/Search/Elasticsearch/Cxn/Factory.pm blib/lib/Search/Elasticsearch/Cxn/Factory.pm
cp lib/Search/Elasticsearch/Client/0_90/Direct/Cluster.pm blib/lib/Search/Elasticsearch/Client/0_90/Direct/Cluster.pm
cp lib/Search/Elasticsearch/Client/Direct/Indices.pm blib/lib/Search/Elasticsearch/Client/Direct/Indices.pm
cp lib/Search/Elasticsearch/Client/Direct.pm blib/lib/Search/Elasticsearch/Client/Direct.pm
cp lib/Search/Elasticsearch/Role/Client/Direct.pm blib/lib/Search/Elasticsearch/Role/Client/Direct.pm
cp lib/Search/Elasticsearch/Client/Direct/Cat.pm blib/lib/Search/Elasticsearch/Client/Direct/Cat.pm
cp lib/Search/Elasticsearch/Client/0_90/Direct/Indices.pm blib/lib/Search/Elasticsearch/Client/0_90/Direct/Indices.pm
cp lib/Search/Elasticsearch/Bulk.pm blib/lib/Search/Elasticsearch/Bulk.pm
cp lib/Search/Elasticsearch/CxnPool/Sniff.pm blib/lib/Search/Elasticsearch/CxnPool/Sniff.pm
cp lib/Search/Elasticsearch/Role/API/0_90.pm blib/lib/Search/Elasticsearch/Role/API/0_90.pm
cp lib/Search/Elasticsearch/Client/Direct/Nodes.pm blib/lib/Search/Elasticsearch/Client/Direct/Nodes.pm
cp lib/Search/Elasticsearch/Role/CxnPool/Sniff.pm blib/lib/Search/Elasticsearch/Role/CxnPool/Sniff.pm
cp lib/Search/Elasticsearch/Role/Cxn/HTTP.pm blib/lib/Search/Elasticsearch/Role/Cxn/HTTP.pm
cp lib/Search/Elasticsearch/Role/Is_Sync.pm blib/lib/Search/Elasticsearch/Role/Is_Sync.pm
cp lib/Search/Elasticsearch/TestServer.pm blib/lib/Search/Elasticsearch/TestServer.pm
cp lib/Search/Elasticsearch/Role/Transport.pm blib/lib/Search/Elasticsearch/Role/Transport.pm
cp lib/Search/Elasticsearch/Role/Serializer.pm blib/lib/Search/Elasticsearch/Role/Serializer.pm
cp lib/Search/Elasticsearch/Scroll.pm blib/lib/Search/Elasticsearch/Scroll.pm
cp lib/Search/Elasticsearch/Role/CxnPool/Static/NoPing.pm blib/lib/Search/Elasticsearch/Role/CxnPool/Static/NoPing.pm
cp lib/Search/Elasticsearch/Util/API/QS.pm blib/lib/Search/Elasticsearch/Util/API/QS.pm
cp lib/Search/Elasticsearch/Transport.pm blib/lib/Search/Elasticsearch/Transport.pm
cp lib/Search/Elasticsearch/Role/Scroll.pm blib/lib/Search/Elasticsearch/Role/Scroll.pm
cp lib/Search/Elasticsearch/Role/CxnPool/Static.pm blib/lib/Search/Elasticsearch/Role/CxnPool/Static.pm
cp lib/Search/Elasticsearch/Util/API/Path.pm blib/lib/Search/Elasticsearch/Util/API/Path.pm
cp lib/Search/Elasticsearch/Util.pm blib/lib/Search/Elasticsearch/Util.pm
cp lib/Search/Elasticsearch/Serializer/JSON.pm blib/lib/Search/Elasticsearch/Serializer/JSON.pm
cp lib/Search/Elasticsearch/Role/Logger.pm blib/lib/Search/Elasticsearch/Role/Logger.pm
cp lib/Search/Elasticsearch/Serializer/JSON/XS.pm blib/lib/Search/Elasticsearch/Serializer/JSON/XS.pm
cp lib/Search/Elasticsearch/Serializer/JSON/Cpanel.pm blib/lib/Search/Elasticsearch/Serializer/JSON/Cpanel.pm
cp lib/Search/Elasticsearch/Role/Serializer/JSON.pm blib/lib/Search/Elasticsearch/Role/Serializer/JSON.pm
cp lib/Search/Elasticsearch/Serializer/JSON/PP.pm blib/lib/Search/Elasticsearch/Serializer/JSON/PP.pm
PERL_DL_NONLAZY=1 /home/kent/perl5/perlbrew/perls/blead/bin/perl5.21.3 "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/10_Basic/*.t t/20_Serializer/*.t t/30_Logger/*.t t/40_Transport/*.t t/50_Cxn_Pool/*.t t/60_Cxn/*.t t/70_Helper/*.t t/90_Client_Spec/*.t
t/10_Basic/10_load.t .......................... ok
t/20_Serializer/10_load_cpanel.t .............. ok
t/20_Serializer/11_load_xs.t .................. ok
t/20_Serializer/12_load_pp.t .................. ok
t/20_Serializer/13_preload_cpanel.t ........... ok
t/20_Serializer/14_preload_xs.t ............... ok
t/20_Serializer/20_xs_encode_decode.t ......... ok
t/20_Serializer/21_xs_encode_bulk.t ........... ok
t/20_Serializer/22_xs_encode_pretty.t ......... ok
t/20_Serializer/30_cpanel_encode_decode.t ..... ok
t/20_Serializer/31_cpanel_encode_bulk.t ....... ok
t/20_Serializer/32_cpanel_encode_pretty.t ..... ok
t/20_Serializer/40_pp_encode_decode.t ......... ok
t/20_Serializer/41_pp_encode_bulk.t ........... ok
t/20_Serializer/42_pp_encode_pretty.t ......... ok
Current cxns: ['http://localhost:9200']
Forcing ping before next use on all live cxns
Ping [http://localhost:9200] before next request
t/30_Logger/10_explicit.t ..................... ok
Current cxns: ['http://localhost:9200']
Forcing ping before next use on all live cxns
Ping [http://localhost:9200] before next request
t/30_Logger/20_implicit.t ..................... ok
Redundant argument in sprintf at /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/Core.pm line 34.
Redundant argument in sprintf at /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/Core.pm line 34.
Redundant argument in sprintf at /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/Core.pm line 34.
Redundant argument in sprintf at /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/Core.pm line 34.
Redundant argument in sprintf at /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/Core.pm line 34.
Redundant argument in sprintf at /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Log/Any/Adapter/Core.pm line 34.
t/30_Logger/30_log_methods.t .................. ok
t/30_Logger/40_trace_request.t ................ ok
t/30_Logger/50_trace_response.t ............... ok
t/30_Logger/60_trace_error.t .................. ok
t/30_Logger/70_trace_comment.t ................ ok
t/40_Transport/10_tidy_request.t .............. ok
t/40_Transport/20_send_body_as.t .............. ok
t/40_Transport/30_perform_request.t ........... ok
t/50_Cxn_Pool/10_static_normal.t .............. ok
t/50_Cxn_Pool/11_static_node_missing.t ........ ok
t/50_Cxn_Pool/12_static_node_fails.t .......... ok
t/50_Cxn_Pool/13_static_node_timesout.t ....... ok
t/50_Cxn_Pool/14_static_both_nodes_timeout.t .. ok
t/50_Cxn_Pool/15_static_both_nodes_fail.t ..... ok
t/50_Cxn_Pool/16_static_nodes_starting.t ...... ok
t/50_Cxn_Pool/17_static_runaway_nodes.t ....... ok
t/50_Cxn_Pool/30_sniff_normal.t ............... ok
t/50_Cxn_Pool/31_sniff_new_nodes.t ............ ok
t/50_Cxn_Pool/32_sniff_node_fails.t ........... ok
t/50_Cxn_Pool/33_sniff_both_nodes_fail.t ...... ok
t/50_Cxn_Pool/34_sniff_node_timeout.t ......... ok
t/50_Cxn_Pool/35_sniff_both_nodes_timeout.t ... ok
t/50_Cxn_Pool/36_sniff_nodes_starting.t ....... ok
t/50_Cxn_Pool/37_sniff_runaway_nodes.t ........ ok
t/50_Cxn_Pool/38_bad_sniff.t .................. ok
t/50_Cxn_Pool/39_sniff_max_content.t .......... ok
t/50_Cxn_Pool/50_noping_normal.t .............. ok
t/50_Cxn_Pool/51_noping_node_fails.t .......... ok
t/50_Cxn_Pool/52_noping_node_timesout.t ....... ok
t/50_Cxn_Pool/53_noping_all_nodes_fail.t ...... ok
t/50_Cxn_Pool/54_noping_nodes_starting.t ...... ok
t/50_Cxn_Pool/55_noping_runaway_nodes.t ....... ok
t/50_Cxn_Pool/56_max_retries.t ................ ok
t/50_Cxn_Pool/70_live.t ....................... skipped: No Elasticsearch test node available
t/60_Cxn/10_basic.t ........................... ok
t/60_Cxn/20_process_response.t ................ ok
t/60_Cxn/30_http.t ............................ ok
t/60_Cxn/40_fork_httptiny.t ................... skipped: No Elasticsearch test node available
t/60_Cxn/41_fork_lwp.t ........................ skipped: No Elasticsearch test node available
t/60_Cxn/42_fork_hijk.t ....................... skipped: No Elasticsearch test node available
t/60_Cxn/43_fork_netcurl.t .................... skipped: No Elasticsearch test node available
t/70_Helper/10_bulk_add_action.t .............. skipped: No Elasticsearch test node available
t/70_Helper/20_bulk_helpers.t ................. skipped: No Elasticsearch test node available
t/70_Helper/30_bulk_flush.t ................... skipped: No Elasticsearch test node available
t/70_Helper/40_bulk_errors.t .................. skipped: No Elasticsearch test node available
t/70_Helper/50_scroll.t ....................... skipped: No Elasticsearch test node available
t/70_Helper/60_reindex.t ...................... skipped: No Elasticsearch test node available
t/90_Client_Spec/00_print_version.t ........... skipped: No Elasticsearch test node available
t/release-eol.t ............................... skipped: these tests are for release candidate testing
t/release-no-tabs.t ........................... skipped: these tests are for release candidate testing
t/release-pod-syntax.t ........................ skipped: these tests are for release candidate testing
All tests successful.
Files=68, Tests=488, 13 wallclock secs ( 0.31 usr 0.14 sys + 10.72 cusr 1.93 csys = 13.10 CPU)
Result: PASS
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Util.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Transport.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Bulk.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/TestServer.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Scroll.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Error.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Serializer/JSON.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Serializer/JSON/PP.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Serializer/JSON/Cpanel.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Serializer/JSON/XS.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Util/API/Path.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Util/API/QS.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Logger/LogAny.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/CxnPool/Static.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/CxnPool/Sniff.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/CxnPool/Static/NoPing.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Cxn/LWP.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Cxn/Hijk.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Cxn/HTTPTiny.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Cxn/Factory.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/Cxn.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/API.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/CxnPool.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/Transport.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/Bulk.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/Logger.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/Scroll.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/Serializer.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/Is_Sync.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/Client.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/Serializer/JSON.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/CxnPool/Static.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/CxnPool/Sniff.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/CxnPool/Static/NoPing.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/Cxn/HTTP.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/API/0_90.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Role/Client/Direct.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Client/Direct.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Client/Direct/Nodes.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Client/Direct/Cluster.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Client/Direct/Indices.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Client/Direct/Snapshot.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Client/Direct/Cat.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Client/0_90/Direct.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Client/0_90/Direct/Cluster.pm
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/Search/Elasticsearch/Client/0_90/Direct/Indices.pm
Appending installation info to /home/kent/perl5/perlbrew/perls/blead/lib/5.21.3/x86_64-linux/perllocal.pod
-> OK
Successfully installed Search-Elasticsearch-1.14
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/x86_64-linux/.meta/Search-Elasticsearch-1.14/MYMETA.json
Installing /home/kent/perl5/perlbrew/perls/blead/lib/site_perl/5.21.3/x86_64-linux/.meta/Search-Elasticsearch-1.14/install.json
5 distributions installed
This is not a bug report per se; rather, it is a report on how I dealt with breakage in a CPAN module that depends on App-cpanminus-reporter
.
My CPAN distribution CPAN-cpanminus-reporter-RetainReports (hereinafter, C-c-r-R) recently began to experience test failures as reported by CPANtesters. See, for example, these reports run against perl-5.36.1. Andreas (@andk) diagnosed the cause of the failures as recent changes to prerequisite module App::cpanminus::reporter (hereinafter, A-c-r).
Ironically, the changes in the latter module that triggered the test failures appear to have come from a pull request I myself submitted more than five years ago and was recently merged, probably during the recent Perl Toolchain Summit. So the wound was partially self-inflicted. ;-)
I originally wrote C-c-r-R when I was doing "CPAN River-style" testing of the Perl 5 core distribution. That entailed installing a monthly development release, installing cpanm
and C-c-r-R against that perl
, then attempting to install 3000 CPAN distributions in a list pre-sorted to reflect CPAN dependencies (the "CPAN River"). C-c-r-R does not actually send a report to CPANtesters. It saves the JSON report to disk where it can subsequently be analyzed for changes in PASS/FAIL status. I wrote C-c-r-R such that it subclassed A-c-r, overwriting A-c-r methods as needed. At the time I wrote C-c-r-R, the production version of A-c-r was 0.17.
I discontinued the CPAN River testing in 2020, IIRC, as the amount of new information it generated was not worth the machine and human time it took. So at that point my need to actively maintain C-c-r-R lapsed and, for a variety of reasons, mainly used Task::CPAN::Reporter
as my CPANtesters reporting tool. As a consequence, these test failure reports for C-c-r-R caught me by surprise. It took me some time to realize that:
A-c-r's get_author()
method now accommodated the file
URI scheme. Hence there was no longer need for a get_author()
method in C-c-r-R that overrode the one inherited from A-c-r.
But get_author
still assumes that the path inside a file
URI is constructed "CPAN-style", i.e., /M/ME/METATEST/tarball.tar.gz
, which in turn requires that dummy tarballs included in the distribution and used for testing need to be positioned in directories that reflect that convention.
I have created a pull request for C-c-r-R which I believe reflects these changes. If you would like to take a look at that p.r., please do so (though I'm not requesting a formal code review).
Thank you very much.
Jim Keenan
I was wondering why BOBW/X86-Udis86-1.7.2.3.tar.gz
didn't send a report
Parsing /home/kent/.cpanm/build.log...
entering X86-Udis86-1.7.2.3, http://www.cpan.org/authors/id/B/BO/BOBW/X86-Udis86-1.7.2.3.tar.gz
left X86-Udis86-1.7.2.3, http://www.cpan.org/authors/id/B/BO/BOBW/X86-Udis86-1.7.2.3.tar.gz
Finished.
^^ Huh. Thats weird.
After looking through the parser, I find that its these lines having different strings that cause a failure:
Note: No v
Unpacking X86-Udis86-1.7.2.3.tar.gz
Entering X86-Udis86-1.7.2.3
...
Note: v
Configuring X86-Udis86-v1.7.2.3
...
Building and testing X86-Udis86-v1.7.2.3
...
Successfully installed X86-Udis86-v1.7.2.3
But the code in reporter.pm
is looking for lines without the v
for the Building and testing
parts, so it entirely misses the data :(
The cause is this:
"version" : "v1.7.2.3"
This is correct per CPAN::Meta Specification.
However, cpanm
reports the name of the tarball for the Entering
statement, and uses the value of version
from META.json
from then on.
This means you're essentially relying the whole tarballs name exactly matching the distributions name + version, which is a somewhat flimsy assumption.
cpanm-reporter
is failing to generate a report for a CPAN distribution which fails to install because two of its prerequisites fail to install. I would think that cpanm-reporter would generate a report in this case, so I'm puzzled as to why it is failing to do so.
I installed Perl 5 blead (commit d2e38af7
) for testing purposes and installed cpanm
against that perl
. (I can supply you with the shell script I use for this purpose upon request.)
For readability, I renamed the directory under which perl
was installed to reporter
, i.e.:
/home/jkeenan/testing/reporter/bin/perl
bin/cpanm
.cpanm/
lib/
I then created a symlink named d2e38af7
to reporter
. (This was needed so that bin/cpanm
did not get confused as to its perl
interpreter.)
I created a .cpanreporter
directory and set some environmental variables.
$ mkdir .cpanreporter
$ export PERL_CPANM_HOME=/home/jkeenan/testing/reporter/.cpanm
$ export PERL_CPAN_REPORTER_DIR=/home/jkeenan/testing/reporter/.cpanreporter
I installed App::cpanminus::reporter
using bin/cpanm
.
$ ./bin/cpanm App::cpanminus::reporter
I setup cpanm-reporter
using defaults and copying an already existing metabase_id.json
into .cpanreporter/
.
$ ./bin/cpanm-reporter --setup
I used bin/cpanm
to install some modules, then used cpanm-reporter
to generate and transmit reports. Because my cpanm
is not located directly underneath my home directory, I created an alias to get a shorter version of the cpanm-reporter
invocation.
$ ./bin/cpanm Text::CSV_XS
$ alias cpanm-reporter="./bin/cpanm-reporter --build_dir=$PERL_CPANM_HOME"
$ cpanm-reporter
I verified that reports had been generated and transmitted.
$ grep -n 'Text-CSV_XS' .cpanreporter/reports-sent.db
4:test PASS Text-CSV_XS-1.34 (perl-5.27.8) x86_64-linux 4.4.0-104-generic
I went to fast-matrix.cpantesters.org and verified that my report had been received. (My report is the one dated 2017-12-24 15:05.)
From other information I had reason to believe that CPAN distribution Data-Thunk
would fail to install against blead (or, for that matter, against perl-5.26) because two of its prerequisites, Data-Swap and UNIVERSAL-ref, would fail to install. I installed some, but not all, of its prerequisites and then tried Data-Thunk
.
$ ./bin/cpanm Data::Thunk
Here are excerpts from the build.log
for that run. I have trimmed out lines pertaining to modules which installed successfully.
cpanm (App::cpanminus) 1.7043 on perl 5.027008 built for x86_64-linux
Work directory is /home/jkeenan/testing/reporter/.cpanm/work/1514128817.1627
You have make /usr/bin/make
You have LWP 6.31
You have /bin/tar: tar (GNU tar) 1.28
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by John Gilmore and Jay Fenlason.
You have /usr/bin/unzip
Searching Data::Thunk () on cpanmetadb ...
--> Working on Data::Thunk
Fetching http://www.cpan.org/authors/id/F/FL/FLORA/Data-Thunk-0.07.tar.gz
-> OK
Unpacking Data-Thunk-0.07.tar.gz
Entering Data-Thunk-0.07
Checking configure dependencies from META.json
Checking if you have ExtUtils::MakeMaker 6.58 ... Yes (7.30)
Configuring Data-Thunk-0.07
Running Makefile.PL
Warning: prerequisite Check::ISA 0 not found.
Warning: prerequisite Data::Swap 0 not found.
Warning: prerequisite Devel::Refcount 0 not found.
Warning: prerequisite UNIVERSAL::ref 0 not found.
Warning: prerequisite namespace::clean 0 not found.
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for Data::Thunk
Writing MYMETA.yml and MYMETA.json
-> OK
Checking dependencies from MYMETA.json ...
Checking if you have overload 0 ... Yes (1.29)
Checking if you have Carp 0 ... Yes (1.45)
Checking if you have B 0 ... Yes (1.73)
Checking if you have Test::More 0.89 ... Yes (1.302120)
Checking if you have Check::ISA 0 ... No
Checking if you have Devel::Refcount 0 ... No
Checking if you have Data::Swap 0 ... No
Checking if you have Sub::Exporter 0 ... Yes (0.987)
Checking if you have UNIVERSAL::ref 0 ... No
Checking if you have Try::Tiny 0 ... Yes (0.30)
Checking if you have Scalar::Util 0 ... Yes (1.49)
Checking if you have namespace::clean 0 ... No
Checking if you have ok 0 ... Yes (1.302120)
==> Found dependencies: Check::ISA, Devel::Refcount, Data::Swap, UNIVERSAL::ref, namespace::clean
Searching Check::ISA (0) on cpanmetadb ...
--> Working on Check::ISA
Fetching http://www.cpan.org/authors/id/M/MA/MANWAR/Check-ISA-0.09.tar.gz
[snip]
Successfully installed Check-ISA-0.09
[snip]
--> Working on Devel::Refcount
Fetching http://www.cpan.org/authors/id/P/PE/PEVANS/Devel-Refcount-0.10.tar.gz
[snip]
Successfully installed Devel-Refcount-0.10
[snip]
--> Working on Data::Swap
Fetching http://www.cpan.org/authors/id/X/XM/XMATH/Data-Swap-0.08.tar.gz
-> OK
Unpacking Data-Swap-0.08.tar.gz
Entering Data-Swap-0.08
Checking configure dependencies from META.yml
Configuring Data-Swap-0.07
Running Makefile.PL
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for Data::Swap
Writing MYMETA.yml and MYMETA.json
-> OK
Checking dependencies from MYMETA.json ...
Checking if you have ExtUtils::MakeMaker 0 ... Yes (7.30)
Building and testing Data-Swap-0.07
cp lib/Data/Swap.pm blib/lib/Data/Swap.pm
Running Mkbootstrap for Swap ()
chmod 644 "Swap.bs"
"/home/jkeenan/testing/reporter/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Swap.bs blib/arch/auto/Data/Swap/Swap.bs 644
"/home/jkeenan/testing/reporter/bin/perl" "/home/jkeenan/testing/d2e38af7/lib/perl5/5.27.8/ExtUtils/xsubpp" -typemap '/home/jkeenan/testing/d2e38af7/lib/perl5/5.27.8/ExtUtils/typemap' Swap.xs > Swap.xsc
mv Swap.xsc Swap.c
cc -c -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"0.08\" -DXS_VERSION=\"0.08\" -fPIC "-I/home/jkeenan/testing/d2e38af7/lib/perl5/5.27.8/x86_64-linux/CORE" Swap.c
rm -f blib/arch/auto/Data/Swap/Swap.so
cc -shared -O2 -L/usr/local/lib -fstack-protector-strong Swap.o -o blib/arch/auto/Data/Swap/Swap.so \
\
chmod 755 blib/arch/auto/Data/Swap/Swap.so
"/home/jkeenan/testing/reporter/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Swap.bs blib/arch/auto/Data/Swap/Swap.bs 644
PERL_DL_NONLAZY=1 "/home/jkeenan/testing/reporter/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
# Failed test (t/01_deref.t at line 62)
# undef
# doesn't match '(?^:^Tie::StdArray=ARRAY\(0x[0-9A-Fa-f]+\)\z)'
# Looks like you failed 1 tests of 13.
t/01_deref.t ..
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/13 subtests
t/02_swap.t ... ok
Test Summary Report
-------------------
t/01_deref.t (Wstat: 256 Tests: 13 Failed: 1)
Failed test: 13
Non-zero exit status: 1
Files=2, Tests=33, 0 wallclock secs ( 0.02 usr 0.00 sys + 0.04 cusr 0.00 csys = 0.06 CPU)
Result: FAIL
Failed 1/2 test programs. 1/33 subtests failed.
Makefile:949: recipe for target 'test_dynamic' failed
make: *** [test_dynamic] Error 255
-> FAIL Installing Data::Swap failed. See /home/jkeenan/testing/reporter/.cpanm/work/1514128817.1627/build.log for details. Retry with --force to force install it.
Searching UNIVERSAL::ref (0) on cpanmetadb ...
--> Working on UNIVERSAL::ref
Fetching http://www.cpan.org/authors/id/J/JJ/JJORE/UNIVERSAL-ref-0.14.tar.gz
-> OK
Unpacking UNIVERSAL-ref-0.14.tar.gz
Entering UNIVERSAL-ref-0.14
Checking configure dependencies from META.yml
Checking if you have ExtUtils::MakeMaker 6.58 ... Yes (7.30)
Configuring UNIVERSAL-ref-0.14
Running Makefile.PL
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for UNIVERSAL::ref
Writing MYMETA.yml and MYMETA.json
-> OK
Checking dependencies from MYMETA.json ...
Checking if you have B 0 ... Yes (1.73)
Checking if you have B::Utils 0 ... Yes (0.27)
Checking if you have Test::More 0 ... Yes (1.302120)
Checking if you have overload 0 ... Yes (1.29)
Checking if you have XSLoader 0 ... Yes (0.29)
Building and testing UNIVERSAL-ref-0.14
cp lib/UNIVERSAL/ref.pm blib/lib/UNIVERSAL/ref.pm
Running Mkbootstrap for ref ()
chmod 644 "ref.bs"
"/home/jkeenan/testing/reporter/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- ref.bs blib/arch/auto/UNIVERSAL/ref/ref.bs 644
"/home/jkeenan/testing/reporter/bin/perl" "/home/jkeenan/testing/d2e38af7/lib/perl5/5.27.8/ExtUtils/xsubpp" -typemap '/home/jkeenan/testing/d2e38af7/lib/perl5/5.27.8/ExtUtils/typemap' -typemap '/home/jkeenan/testing/reporter/.cpanm/work/1514128817.1627/UNIVERSAL-ref-0.14/typemap' ref.xs > ref.xsc
mv ref.xsc ref.c
cc -c -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"0.14\" -DXS_VERSION=\"0.14\" -fPIC "-I/home/jkeenan/testing/d2e38af7/lib/perl5/5.27.8/x86_64-linux/CORE" ref.c
ref.xs: In function ‘universal_ref_fixupop’:
ref.xs:92:9: error: ‘OP {aka struct op}’ has no member named ‘op_sibling’
if ( o->op_sibling ) {
^
ref.xs:94:28: error: ‘OP {aka struct op}’ has no member named ‘op_sibling’
universal_ref_fixupop(o->op_sibling);
^
Makefile:333: recipe for target 'ref.o' failed
make: *** [ref.o] Error 1
-> FAIL Installing UNIVERSAL::ref failed. See /home/jkeenan/testing/reporter/.cpanm/work/1514128817.1627/build.log for details. Retry with --force to force install it.
Searching namespace::clean (0) on cpanmetadb ...
--> Working on namespace::clean
Fetching http://www.cpan.org/authors/id/R/RI/RIBASUSHI/namespace-clean-0.27.tar.gz
[snip]
Successfully installed namespace-clean-0.27
[snip]
-> FAIL Installing the dependencies failed: Module 'UNIVERSAL::ref' is not installed, Module 'Data::Swap' is not installed
-> FAIL Bailing out the installation for Data-Thunk-0.07.
13 distributions installed
The failures in Data-Swap
and UNIVERSAL-ref
first appeared in the 5.25.* development cycle and have not been corrected to date. Note that Data-Swap
failed during make test
while UNIVERSAL-ref
failed during make
.
I then ran cpanm-reporter
again and inspected the results.
$ cpanm-reporter
$ $ ack '(Data-Swap|UNIVERSAL-ref|Data-Thunk)' .cpanreporter/reports-sent.db
test NA Data-Swap-0.08 (perl-5.27.8) x86_64-linux 4.4.0-104-generic
test FAIL UNIVERSAL-ref-0.14 (perl-5.27.8) x86_64-linux 4.4.0-104-generic
Note the following:
Data-Swap
was graded NA
by cpanm-reporter
despite being graded FAIL
by the harness.UNIVERSAL-ref
was graded FAIL
.Data-Thunk
, even though that was the only module specifically passed to bin/cpanm
.I somewhat understand items 1 and 2 but was very surprised by item 3.
I would have expected a report to be generated for Data-Thunk
, even if that report only said something to the effect that its prerequisites were not satisfied.
Now, I recognize that this is not just a problem with cpanm-reporter
. If you go to the matrix, you see that there have been no reports generated for Data-Thunk
later than perl-5.25.1 -- not even NA
or UNKNOWN
reports. I suspect that most CPANtesters reports are filed with programs based on cpan
rather than cpanm
. So there may be a problem with the way that all the various reporter programs are parsing build logs -- cpan
build logs as well as cpanm
build logs.
Do you have any insight as to why such reports are not being generated?
Feature or bug?
Is there anything we can do to rectify the situation?
Thank you very much.
Jim Keenan
Today I attempted to install version 0.20 of App::cpanminus::reporter against the system perl on FreeBSD-12. The attempt failed, for reasons I do not understand.
$ uname -mrs
FreeBSD 12.3-RELEASE-p6 amd64
$ perl -v | head -2 | tail -1
This is perl 5, version 32, subversion 1 (v5.32.1) built for amd64-freebsd-thread-multi
$ sudo cpan App::cpanminus::reporter
Loading internal logger. Log::Log4perl recommended for better logging
Reading '/root/.cpan/Metadata'
Database was generated on Tue, 09 May 2023 16:54:03 GMT
Running install for module 'App::cpanminus::reporter'
CPAN: LWP::UserAgent loaded ok (v6.67)
Fetching with LWP:
https://www.cpan.org/authors/id/G/GA/GARU/App-cpanminus-reporter-0.20.tar.gz
CPAN: YAML loaded ok (v1.26)
CPAN: Digest::SHA loaded ok (v6.02)
Fetching with LWP:
https://www.cpan.org/authors/id/G/GA/GARU/CHECKSUMS
CPAN: Compress::Zlib loaded ok (v2.093)
Checksum for /root/.cpan/sources/authors/id/G/GA/GARU/App-cpanminus-reporter-0.20.tar.gz ok
App-cpanminus-reporter-0.20/t/data/build.compilation_error.log: Cannot restore extended attributes: com.apple.quarantine com.apple.quarantine
tar: Error exit delayed from previous errors.
Uncompressed /root/.cpan/sources/authors/id/G/GA/GARU/App-cpanminus-reporter-0.20.tar.gz successfully
Using Tar:/usr/bin/tar xf "App-cpanminus-reporter-0.20.tar":
App-cpanminus-reporter-0.20/t/data/build.compilation_error.log: Cannot restore extended attributes: com.apple.quarantine com.apple.quarantine
tar: Error exit delayed from previous errors.
Couldn't untar App-cpanminus-reporter-0.20.tar: child exited with value 1
GARU/App-cpanminus-reporter-0.20.tar.gz
Had problems unarchiving. Please build manually
On the very same machine, minutes later, I was able to install version 0.20 against blead perl:
$ ./bin/perl -v | head -2 | tail -1
This is perl 5, version 37, subversion 12 (v5.37.12 (v5.37.11-34-g48e8a9d396)) built for amd64-freebsd-thread-multi
$ ./bin/cpan App::cpanminus::reporter
...
CPAN::Reporter: Test result is 'pass', All tests successful.
CPAN::Reporter: preparing a CPAN Testers report for App-cpanminus-reporter-0.20
CPAN::Reporter: sending test report with 'pass' via Metabase
GARU/App-cpanminus-reporter-0.20.tar.gz
/usr/bin/make test -- OK
Running make install for GARU/App-cpanminus-reporter-0.20.tar.gz
Installing /home/jkeenan/testing/blead/lib/perl5/site_perl/5.37.12/App/cpanminus/reporter.pm
Installing /home/jkeenan/testing/blead/bin/cpanm-reporter
Appending installation info to /home/jkeenan/testing/blead/lib/perl5/5.37.12/amd64-freebsd-thread-multi/perllocal.pod
GARU/App-cpanminus-reporter-0.20.tar.gz
make install -- OK
Do you have any idea why the attempt to install (as root) against the system perl failed?
Thanks.
Similar to #13 -- would it be possible to support sending reports for any source URL, as long as it is in the form of G/GA/GARU/App-cpanminus-reporter-0.123.tar.gz
(or even just GARU/App-...
)? This would make it possible for reports to be sent for local archived tarballs, as long as they were organized into the proper directory structure.
It would also let me eliminate this nasty hacky code :) -- https://metacpan.org/source/ETHER/Dist-Zilla-PluginBundle-Author-ETHER-0.069/lib/Dist/Zilla/PluginBundle/Author/ETHER.pm#L250
invalid scheme 'https' for resource 'https://cpan.metacpan.org/authors/id/E/ET/ETHER/Moose-2.1305-TRIAL.tar.gz'. Skipping...
:(
(possibly duplicate of #15)
I ran cpanm-reporter --setup, and the part at the end didn't work so well:
Would you like to run 'metabase-profile' now to create '/Users/nglenn/.cpanreporter/metabase_id.json'? [y]
Running [/Users/nglenn/perl5/perlbrew/perls/perl-5.28.0/bin/metabase-profile --output /Users/nglenn/.cpanreporter/metabase_id.json --email [email protected] --secret 74ccf154]...
Enter full name:
Writing profile to '/Users/nglenn/.cpanreporter/metabase_id.json'
The call to metabse-profiler
exited with no input before I could type anything.
Configuring OptArgs-0.1.10 ... OK
Building and testing OptArgs-0.1.10 ... OK
Successfully installed OptArgs-0.1.10
1 distribution installed
bash.exe"-3.1$ cpanm-reporter -v
Parsing C:\Documents and Settings\mark\.cpanm\build.log...
entering OptArgs-0.1.10, http://www.cpan.org/authors/id/M/ML/MLAWREN/OptArgs-0.1
.10.tar.gz
recording OptArgs-0.1.10
sending: (http://www.cpan.org/authors/id/M/ML/MLAWREN/OptArgs-0.1.10.tar.gz, MLA
WREN, OptArgs-0.1.10, PASS)
Error while sending this report, continuing with the next one...
DEBUG: Test::Reporter::Transport::Metabase unknown argument 'and'
at c:/strawberry/perl/site/lib/Test/Reporter/Transport/Metabase.pm line 58.
Test::Reporter::Transport::Metabase::new("Test::Reporter::Transport::Met
abase", "uri", "https://metabase.cpantesters.org/api/v1/", "id_file", "C:\\Docum
ents", "and", "Settings\\mark\\.cpanreporter\\metabase_id.json") called at c:/st
rawberry/perl/site/lib/Test/Reporter.pm line 269
Test::Reporter::send(Test::Reporter=HASH(0x1f9e80c)) called at c:/strawb
erry/perl/site/lib/App/cpanminus/reporter.pm line 314
App::cpanminus::reporter::try {...} () called at c:/strawberry/perl/vend
or/lib/Try/Tiny.pm line 81
eval {...} called at c:/strawberry/perl/vendor/lib/Try/Tiny.pm line 72
Try::Tiny::try(CODE(0x1f830ec), Try::Tiny::Catch=REF(0x1f68f1c)) called
at c:/strawberry/perl/site/lib/App/cpanminus/reporter.pm line 319
App::cpanminus::reporter::make_report(App::cpanminus::reporter=HASH(0x1b
8d554), "http://www.cpan.org/authors/id/M/ML/MLAWREN/OptArgs-0.1.10.ta"..., "Opt
Args-0.1.10", "PASS", "Building and testing OptArgs-0.1.10\x{a}", "cp lib/OptArg
s.pm blib\\lib\\OptArgs.pm\x{a}", "cp lib/OptArgs.pod blib\\lib\\OptArgs.pod\x{a
}", "cp lib/App/optargs.pm blib\\lib\\App\\optargs.pm\x{a}", "C:\\strawberry\\pe
rl\\bin\\perl.exe \"-Iinc\" -MExtUtils::Command -"..., ...) called at c:/strawbe
rry/perl/site/lib/App/cpanminus/reporter.pm line 235
App::cpanminus::reporter::__ANON__("OptArgs-0.1.10", "http://www.cpan.or
g/authors/id/M/ML/MLAWREN/OptArgs-0.1.10.ta"...) called at c:/strawberry/perl/si
te/lib/App/cpanminus/reporter.pm line 206
App::cpanminus::reporter::__ANON__() called at c:/strawberry/perl/site/l
ib/App/cpanminus/reporter.pm line 243
App::cpanminus::reporter::run(App::cpanminus::reporter=HASH(0x1b8d554))
called at c:/strawberry/perl/site/bin/cpanm-reporter line 22
left OptArgs-0.1.10, http://www.cpan.org/authors/id/M/ML/MLAWREN/OptArgs-0.1.10.
tar.gz
Finished.
I have a checkout of this repository which I believe is up-to-date. Assuming that each CPAN release should have a git tag, there appear to be 3 missing tags.
$ git tag
0.02
...
0.15
0.19
0.20
The missing tags (0.16, 0.17, 0.18) would probably correspond to these releases documented in Changes
.
0.18 2023-01-23
OTHER:
- reduced prereq tree by switching from File::HomeDir to
File::HomeDir::Tiny.
0.17 2016-04-24
BUG FIXES:
- fixed support for extended paths on Windows
(thanks Mithaldu and Sinan Unur)
0.16 2016-04-24
NEW FEATURES:
- exposes extra environment variables
OTHER:
- bumping up CTCC dependency
- minor refactoring
Would it be possible to add these tags?
I ask because once I've locally installed something like version 0.19, I'm starting to get test failures in my CPAN distro CPAN-cpanminus-reporter-RetainReports
, which has a dependency on App-cpanminus-reporter
. These test failures are also appearing in CPANtesters reports where the tester has upgraded to 0.19 or 0.20. Having the tags would help in identifying the point where my tests began to break and point the way to revisions in my tests.
Thank you very much.
Jim Keenan
I've gotten the following stack trace multiple times, on Linux and MacOS:
Error while sending this report, continuing with the next one (Test::Reporter: error from 'Test::Reporter::Transport::Metabase:'
fact submission failed: Proxy Error at /opt/plenv/versions/5.41.2/lib/perl5/site_perl/5.41.2/Metabase/Client/Simple.pm line 129.
Metabase::Client::Simple::submit_fact(Metabase::Client::Simple=HASH(0x7fb7f09369a8), CPAN::Testers::Report=HASH(0x7fb7f09470b8)) called at /opt/plenv/versions/5.41.2/lib/perl5/site_perl/5.41.2/Test/Reporter/Transport/Metabase.pm line 122
Test::Reporter::Transport::Metabase::send(Test::Reporter::Transport::Metabase=HASH(0x7fb7f09385f8), Test::Reporter=HASH(0x7fb7f0938538)) called at /opt/plenv/versions/5.41.2/lib/perl5/site_perl/5.41.2/Test/Reporter.pm line 272
eval {...} called at /opt/plenv/versions/5.41.2/lib/perl5/site_perl/5.41.2/Test/Reporter.pm line 272
Test::Reporter::send(Test::Reporter=HASH(0x7fb7f0938538)) called at /opt/plenv/versions/5.41.2/lib/perl5/site_perl/5.41.2/App/cpanminus/reporter.pm line 548
App::cpanminus::reporter::try {...} () called at /opt/plenv/versions/5.41.2/lib/perl5/site_perl/5.41.2/Try/Tiny.pm line 102
eval {...} called at /opt/plenv/versions/5.41.2/lib/perl5/site_perl/5.41.2/Try/Tiny.pm line 93
Try::Tiny::try(CODE(0x7fb7f09367c8), Try::Tiny::Catch=REF(0x7fb7f0928288), Try::Tiny::Finally=REF(0x7fb7f093d498)) called at /opt/plenv/versions/5.41.2/lib/perl5/site_perl/5.41.2/App/cpanminus/reporter.pm line 555
App::cpanminus::reporter::make_report(App::cpanminus::reporter=HASH(0x7fb810822b60), "http://www.cpan.org/authors/id/T/TI/TINITA/Test-YAML-1.07.tar.gz", "Test-YAML-1.07", "PASS", "Building and testing Test-YAML-1.07\x{a}", "cp lib/Test/YAML.pm blib/lib/Test/YAML.pm\x{a}", "cp lib/Test/YAML.pod blib/lib/Test/YAML.pod\x{a}", "cp bin/test-yaml blib/script/test-yaml\x{a}", ...) called at /opt/plenv/versions/5.41.2/lib/perl5/site_perl/5.41.2/App/cpanminus/reporter.pm line 402
App::cpanminus::reporter::__ANON__("Test-YAML-1.07", "http://www.cpan.org/authors/id/T/TI/TINITA/Test-YAML-1.07.tar.gz") called at /opt/plenv/versions/5.41.2/lib/perl5/site_perl/5.41.2/App/cpanminus/reporter.pm line 328
App::cpanminus::reporter::__ANON__("YAML-1.31", "http://www.cpan.org/authors/id/I/IN/INGY/YAML-1.31.tar.gz") called at /opt/plenv/versions/5.41.2/lib/perl5/site_perl/5.41.2/App/cpanminus/reporter.pm line 328
App::cpanminus::reporter::__ANON__("Task-BeLike-GENEHACK-0.402", "http://www.cpan.org/authors/id/G/GE/GENEHACK/Task-BeLike-GENE"...) called at /opt/plenv/versions/5.41.2/lib/perl5/site_perl/5.41.2/App/cpanminus/reporter.pm line 328
App::cpanminus::reporter::__ANON__() called at /opt/plenv/versions/5.41.2/lib/perl5/site_perl/5.41.2/App/cpanminus/reporter.pm line 410
App::cpanminus::reporter::process_logfile(App::cpanminus::reporter=HASH(0x7fb810822b60), "/Users/genehack/.cpanm/build.log") called at /opt/plenv/versions/5.41.2/lib/perl5/site_perl/5.41.2/App/cpanminus/reporter.pm line 273
App::cpanminus::reporter::run(App::cpanminus::reporter=HASH(0x7fb810822b60)) called at /opt/plenv/versions/5.41.2/bin/cpanm-reporter line 29
)...```
Parsing /Users/buss/.cpanm/latest-build/build.log...
sending: (http://www.cpan.org/authors/id/G/GA/GARU/CPAN-Testers-Common-Client-0.07.tar.gz, GARU, CPAN-Testers-Common-Client-0.07, PASS)
sending: (http://www.cpan.org/authors/id/G/GA/GARU/App-cpanminus-reporter-0.09.tar.gz, GARU, App-cpanminus-reporter-0.09, PASS)
sending: (http://www.cpan.org/authors/id/B/BI/BINGOS/Archive-Tar-1.92.tar.gz, BINGOS, Archive-Tar-1.92, PASS)
sending: (http://www.cpan.org/authors/id/P/PJ/PJF/autodie-2.20.tar.gz, PJF, autodie-2.20, PASS)
sending: (http://www.cpan.org/authors/id/P/PM/PMQS/Compress-Raw-Bzip2-2.061.tar.gz, PMQS, Compress-Raw-Bzip2-2.061, PASS)
sending: (http://www.cpan.org/authors/id/P/PM/PMQS/Compress-Raw-Zlib-2.061.tar.gz, PMQS, Compress-Raw-Zlib-2.061, PASS)
sending: (http://www.cpan.org/authors/id/P/PM/PMQS/IO-Compress-2.061.tar.gz, PMQS, IO-Compress-2.061, PASS)
sending: (http://www.cpan.org/authors/id/H/HM/HMBRAND/Config-Perl-V-0.18.tgz, HMBRAND, Config-Perl-V-0.18, PASS)
sending: (http://www.cpan.org/authors/id/D/DA/DAGOLDEN/CPAN-Meta-2.131560.tar.gz, DAGOLDEN, CPAN-Meta-2.131560, PASS)
sending: (http://www.cpan.org/authors/id/B/BI/BINGOS/CPANPLUS-0.9138.tar.gz, BINGOS, CPANPLUS-0.9138, PASS)
sending: (http://www.cpan.org/authors/id/G/GA/GAAS/Data-Dump-1.22.tar.gz, GAAS, Data-Dump-1.22, PASS)
sending: (http://www.cpan.org/authors/id/P/PM/PMQS/DB_File-1.828.tar.gz, PMQS, DB_File-1.828, PASS)
sending: (http://www.cpan.org/authors/id/B/BI/BINGOS/ExtUtils-MakeMaker-6.68.tar.gz, BINGOS, ExtUtils-MakeMaker-6.68, PASS)
sending: (http://www.cpan.org/authors/id/J/JV/JV/Getopt-Long-2.40.tar.gz, JV, Getopt-Long-2.40, PASS)
Test::Reporter: error from 'Test::Reporter::Transport::Metabase:'
fact submission failed: Can't connect to metabase.cpantesters.org:443 at /Users/buss/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/Metabase/Client/Simple.pm line 100.
Metabase::Client::Simple::submit_fact('Metabase::Client::Simple=HASH(0x7f91abe73e68)', 'CPAN::Testers::Report=HASH(0x7f91abe606e8)') called at /Users/buss/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/Test/Reporter/Transport/Metabase.pm line 132
Test::Reporter::Transport::Metabase::send('Test::Reporter::Transport::Metabase=HASH(0x7f91abd40930)', 'Test::Reporter=HASH(0x7f91abe5ff08)') called at /Users/buss/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/Test/Reporter.pm line 271
eval {...} called at /Users/buss/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/Test/Reporter.pm line 271
Test::Reporter::send('Test::Reporter=HASH(0x7f91abe5ff08)') called at /Users/buss/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/App/cpanminus/reporter.pm line 260
App::cpanminus::reporter::make_report('App::cpanminus::reporter=HASH(0x7f91ab828fa0)', 'http://www.cpan.org/authors/id/J/JV/JV/Getopt-Long-2.40.tar.gz', 'Getopt-Long-2.40', 'PASS', 'Building and testing Getopt-Long-2.40\x{a}', 'cp lib/Getopt/Long.pm blib/lib/Getopt/Long.pm\x{a}', 'cp lib/newgetopt.pl blib/lib/newgetopt.pl\x{a}', 'Manifying blib/man3/Getopt::Long.3\x{a}', 'PERL_DL_NONLAZY=1 /Users/buss/perl5/perlbrew/perls/perl-5.16....', ...) called at /Users/buss/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/App/cpanminus/reporter.pm line 183
App::cpanminus::reporter::__ANON__('Getopt-Long-2.40', 'http://www.cpan.org/authors/id/J/JV/JV/Getopt-Long-2.40.tar.gz') called at /Users/buss/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/App/cpanminus/reporter.pm line 164
App::cpanminus::reporter::__ANON__() called at /Users/buss/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/App/cpanminus/reporter.pm line 191
App::cpanminus::reporter::run('App::cpanminus::reporter=HASH(0x7f91ab828fa0)') called at /Users/buss/perl5/perlbrew/perls/perl-5.16.3/bin/cpanm-reporter line 25
The strange thing is that it only failed after sending a few reports. Anyway, I think that maybe cpanm-reporter should catch the problem, signal that the sending failed and continue (or ask to) with other submissions? What you think Garu?
$ cpanm T/TO/TOKUHIROM/Minilla-v0.3.1.tar.gz
--> Working on T/TO/TOKUHIROM/Minilla-v0.3.1.tar.gz
Fetching http://www.cpan.org/authors/id/T/TO/TOKUHIROM/Minilla-v0.3.1.tar.gz ... OK
Configuring Minilla-v0.3.1 ... OK
Building and testing Minilla-v0.3.1 ... OK
Successfully installed Minilla-v0.3.1
1 distribution installed
$ cpanm-reporter
Parsing /home/aero/.cpanm/latest-build/build.log...
Parsing error. Found '/tmp/XC7vSbmFXh/Acme-FooXS' without fetching first. at /home/aero/perl5/perlbrew/perls/perl-5.16/bin/cpanm-reporter line 18.
build.log
cpanm (App::cpanminus) 1.6909 on perl 5.016003 built for x86_64-linux-thread-multi
Work directory is /home/aero/.cpanm/work/1367493899.9723
You have make /usr/bin/make
You have LWP 6.05
You have /bin/tar: tar (GNU tar) 1.15.1
You have /usr/bin/unzip
--> Working on .
Entering /tmp/XC7vSbmFXh/Acme-FooXS
Checking configure dependencies from META.json
Checking if you have CPAN::Meta 0 ... Yes (2.130880)
Checking if you have Module::Build 0.38 ... Yes (0.4005)
Checking if you have CPAN::Meta::Prereqs 0 ... Yes (2.130880)
Configuring Acme-FooXS-v0.1.0
-> OK
Checking if you have Test::More 0.98 ... Yes (0.98)
<== Installed dependencies for .. Finishing.
This is new behavior as of 5.38.0-RC1 or -RC2, I'm not sure which, but I've also just observed it on multiple machines while installing 5.38.0:
> plenv install-cpanm && cpanm App::cpanminus::reporter && cpanm Task::BeLike::GENEHACK
_many many MANY lines elided_
Successfully installed Task-BeLike-GENEHACK-0.402
416 distributions installed
sending: (http://www.cpan.org/authors/id/S/SH/SHANCOCK/Perl-Tidy-20230701.tar.gz, SHANCOCK, Perl-Tidy-20230701, PASS)
Exits with 0; running cpanm-reporter
again does not send any additional reports. Observed on MacOS and Linux systems.
Hi
My metabase_id.json file is at ~/.cpanreporter/metabase_id.json
But cpanm-reporter can't find metabase_id.json file.
$ cpanm G/GA/GARU/App-cpanminus-reporter-0.05.tar.gz
--> Working on G/GA/GARU/App-cpanminus-reporter-0.05.tar.gz
Fetching http://www.cpan.org/authors/id/G/GA/GARU/App-cpanminus-reporter-0.05.tar.gz ... OK
Configuring App-cpanminus-reporter-0.05 ... OK
Building and testing App-cpanminus-reporter-0.05 ... OK
Successfully installed App-cpanminus-reporter-0.05
1 distribution installed
$ cpanm-reporter
Parsing /home/aero/.cpanm/latest-build/build.log...
sending: (http://www.cpan.org/authors/id/G/GA/GARU/App-cpanminus-reporter-0.05.tar.gz, GARU, App-cpanminus-reporter-0.05, PASS)
Test::Reporter: error from 'Test::Reporter::Transport::Metabase:'
Test::Reporter::Transport::Metabase: could not read ID file 'metabase_id.json'
No such file or directory at /home/aero/perl5/perlbrew/perls/perl-5.16/lib/site_perl/5.16.3/Test/Reporter/Transport/Metabase.pm line 138.
Test::Reporter::Transport::Metabase::_load_id_file('Test::Reporter::Transport::Metabase=HASH(0x151269f8)') called at /home/aero/perl5/perlbrew/perls/perl-5.16/lib/site_perl/5.16.3/Test/Reporter/Transport/Metabase.pm line 77
Test::Reporter::Transport::Metabase::send('Test::Reporter::Transport::Metabase=HASH(0x151269f8)', 'Test::Reporter=HASH(0x14f68560)') called at /home/aero/perl5/perlbrew/perls/perl-5.16/lib/site_perl/5.16.3/Test/Reporter.pm line 271
eval {...} called at /home/aero/perl5/perlbrew/perls/perl-5.16/lib/site_perl/5.16.3/Test/Reporter.pm line 271
Test::Reporter::send('Test::Reporter=HASH(0x14f68560)') called at /home/aero/perl5/perlbrew/perls/perl-5.16/lib/site_perl/5.16.3/App/cpanminus/reporter.pm line 267
App::cpanminus::reporter::make_report('App::cpanminus::reporter=HASH(0x13ca6338)', 'http://www.cpan.org/authors/id/G/GA/GARU/App-cpanminus-report...', 'App-cpanminus-reporter-0.05', 'PASS', 'Building and testing App-cpanminus-reporter-0.05\x{a}', 'cp lib/App/cpanminus/reporter.pm blib/lib/App/cpanminus/repor...', 'cp bin/cpanm-reporter blib/script/cpanm-reporter\x{a}', '/home/aero/perl5/perlbrew/perls/perl-5.16/bin/perl -MExtUtils...', 'Manifying blib/man1/cpanm-reporter.1\x{a}', ...) called at /home/aero/perl5/perlbrew/perls/perl-5.16/lib/site_perl/5.16.3/App/cpanminus/reporter.pm line 184
App::cpanminus::reporter::__ANON__('App-cpanminus-reporter-0.05', 'http://www.cpan.org/authors/id/G/GA/GARU/App-cpanminus-report...') called at /home/aero/perl5/perlbrew/perls/perl-5.16/lib/site_perl/5.16.3/App/cpanminus/reporter.pm line 165
App::cpanminus::reporter::__ANON__() called at /home/aero/perl5/perlbrew/perls/perl-5.16/lib/site_perl/5.16.3/App/cpanminus/reporter.pm line 192
App::cpanminus::reporter::run('App::cpanminus::reporter=HASH(0x13ca6338)') called at /home/aero/perl5/perlbrew/perls/perl-5.16/bin/cpanm-reporter line 18
Maybe it would help if there are some hints for the setup.
People already testing have no problems, but new people will run into error messages.
I never created testreports before and I found the instructions here quite bad: http://wiki.cpantesters.org/wiki/QuickStart
Most steps in the QuickStart failed for me and it took me quite some work to get this now up and running with cpanm-reporter. At least before cpanm-reporter I directly gave up and ended in not-submitting-tests :-P
What I needed to do:
Run metabase-profile
and copy to ~/.cpantesters/metabase_id.json
Create ~/.cpanreporter/config.ini
by hand (copy from QuickStart) since following the advice in the QuickStart did not generate it.
Change https in the config.ini
to http, because SSL stuff fails on my machine and I didn't find any howtos yet that helped me fix this.
Maybe there could be some words about this stuff in the docs, or at least a hint or a link to what is needed..? I can also write it for you if you like.
Sometimes it is useful to use direct links to the tarball (from the recent page).
When using that, we get:
[ambs@stravinski tmp]$ cpanm -S http://cpan.metacpan.org/authors/id/A/AM/AMBS/Math/Math-GSL-0.30_5.tar.gz
--> Working on http://cpan.metacpan.org/authors/id/A/AM/AMBS/Math/Math-GSL-0.30_5.tar.gz
Fetching http://cpan.metacpan.org/authors/id/A/AM/AMBS/Math/Math-GSL-0.30_5.tar.gz ... OK
Configuring Math-GSL-0.30_5 ... OK
Building and testing Math-GSL-0.30_5 ... OK
Successfully installed Math-GSL-0.30_5
1 distribution installed
[ambs@stravinski tmp]$ cpanm-reporter
sending: (http://cpan.metacpan.org/authors/id/A/AM/AMBS/Math/Math-GSL-0.30_5.tar.gz, AMBS, Math-GSL-0.30_5, PASS)
Error while sending this report, continuing with the next one...
[ambs@stravinski tmp]$ cpanm-reporter -v
Parsing /Users/ambs/.cpanm/build.log...
entering Math-GSL-0.30_5, http://cpan.metacpan.org/authors/id/A/AM/AMBS/Math/Math-GSL-0.30_5.tar.gz
recording Math-GSL-0.30_5
sending: (http://cpan.metacpan.org/authors/id/A/AM/AMBS/Math/Math-GSL-0.30_5.tar.gz, AMBS, Math-GSL-0.30_5, PASS)
Error while sending this report, continuing with the next one...
DEBUG: Test::Reporter: error from 'Test::Reporter::Transport::Metabase:'
'Math/Math-GSL-0.30_5.tar.gz' can't be parsed as a CPAN distfile at /opt/perl/lib/site_perl/5.20.0/Metabase/Resource/cpan/distfile.pm line 72.
Metabase::Resource::cpan::distfile::_validate_distfile(Metabase::Resource::cpan::distfile=HASH(0x7f88b9e0ffb0), "Math/Math-GSL-0.30_5.tar.gz") called at /opt/perl/lib/site_perl/5.20.0/Metabase/Resource/cpan/distfile.pm line 31
Metabase::Resource::cpan::distfile::_init(Metabase::Resource::cpan::distfile=HASH(0x7f88b9e0ffb0)) called at /opt/perl/lib/site_perl/5.20.0/Metabase/Resource.pm line 83
Metabase::Resource::new("Metabase::Resource", "cpan:///distfile/Math/Math-GSL-0.30_5.tar.gz") called at /opt/perl/lib/site_perl/5.20.0/Metabase/Fact.pm line 59
Metabase::Fact::validate_resource(CPAN::Testers::Report=HASH(0x7f88ba18b568), "cpan:///distfile/Math/Math-GSL-0.30_5.tar.gz") called at /opt/perl/lib/site_perl/5.20.0/Metabase/Fact.pm line 142
Metabase::Fact::_init_guts("CPAN::Testers::Report", HASH(0x7f88ba183af8)) called at /opt/perl/lib/site_perl/5.20.0/Metabase/Report.pm line 62
Metabase::Report::open("CPAN::Testers::Report", "resource", "cpan:///distfile/Math/Math-GSL-0.30_5.tar.gz") called at /opt/perl/lib/site_perl/5.20.0/Test/Reporter/Transport/Metabase.pm line 99
Test::Reporter::Transport::Metabase::send(Test::Reporter::Transport::Metabase=HASH(0x7f88bae73178), Test::Reporter=HASH(0x7f88bb97adb8)) called at /opt/perl/lib/site_perl/5.20.0/Test/Reporter.pm line 271
eval {...} called at /opt/perl/lib/site_perl/5.20.0/Test/Reporter.pm line 271
Test::Reporter::send(Test::Reporter=HASH(0x7f88bb97adb8)) called at /opt/perl/lib/site_perl/5.20.0/App/cpanminus/reporter.pm line 314
App::cpanminus::reporter::try {...} () called at /opt/perl/lib/site_perl/5.20.0/Try/Tiny.pm line 81
eval {...} called at /opt/perl/lib/site_perl/5.20.0/Try/Tiny.pm line 72
Try::Tiny::try(CODE(0x7f88bb98cf38), Try::Tiny::Catch=REF(0x7f88bb975f38)) called at /opt/perl/lib/site_perl/5.20.0/App/cpanminus/reporter.pm line 319
App::cpanminus::reporter::make_report(App::cpanminus::reporter=HASH(0x7f88b9af95c8), "http://cpan.metacpan.org/authors/id/A/AM/AMBS/Math/Math-GSL-0"..., "Math-GSL-0.30_5", "PASS", "Building and testing Math-GSL-0.30_5\x{a}", "Building Math-GSL\x{a}", "Process XS files version 1.16 (GSL version 1.16)\x{a}", "xs/BLAS_wrap.1.16.c:3824:11: warning: variable 'arg2' is unin"..., " if (arg2) free(arg2);\x{a}", ...) called at /opt/perl/lib/site_perl/5.20.0/App/cpanminus/reporter.pm line 235
App::cpanminus::reporter::__ANON__("Math-GSL-0.30_5", "http://cpan.metacpan.org/authors/id/A/AM/AMBS/Math/Math-GSL-0"...) called at /opt/perl/lib/site_perl/5.20.0/App/cpanminus/reporter.pm line 206
App::cpanminus::reporter::__ANON__() called at /opt/perl/lib/site_perl/5.20.0/App/cpanminus/reporter.pm line 243
App::cpanminus::reporter::run(App::cpanminus::reporter=HASH(0x7f88b9af95c8)) called at /opt/perl/bin/cpanm-reporter line 25
left Math-GSL-0.30_5, http://cpan.metacpan.org/authors/id/A/AM/AMBS/Math/Math-GSL-0.30_5.tar.gz
Finished.
cpan-reporter dies with the following error:
error opening build log file 'C:\Users\Nathan\Desktop\strawberry-perl-5.18.1.1-64bit-portable\data\.cpanm\build.log' for reading: No such file or directory at C:\Users\Nathan\Desktop\strawberry-perl-5.18.1.1-64bit-portable\perl\site\bin/cpanm-reporter line 22.
I'm using Strawberry Perl Portable, 5.18.1.1. I zipped up my .cpanm folder (minus the sources folder) here.
Hi there, I'm doing this as part of the PR challenge.
There's a bug described in https://rt.cpan.org/Public/Bug/Display.html?id=103866
I believe this bug is actually in CPAN-Testers-Common-Client.
I'm looking at commit ffa25a4 and not finding anything out of place. It'd be nice if the history checking was opt-in instead of opt-out.
My belief is that the issue is in $client->duplicate. I'm justifying my belief on the basis that the only output ether saw was "sending: ", which is triggered around here:
The code in lib/App/cpanminus/reporter.pm
suggests that it is now capable of handling 5 different URI schemes:
my %eligible_schemes = map {$_ => 1} (qw| http https ftp cpan file |);
However, the test suite only exercises 2 of these: http
and file
. If you insert the following debugging statement into the module:
diff --git a/lib/App/cpanminus/reporter.pm b/lib/App/cpanminus/reporter.pm
index eb28667..872878c 100644
--- a/lib/App/cpanminus/reporter.pm
+++ b/lib/App/cpanminus/reporter.pm
@@ -467,6 +467,7 @@ sub parse_uri {
my $uri = URI->new( $resource );
my $scheme = lc $uri->scheme;
+print STDERR "SCHEME: $scheme\n";
my %eligible_schemes = map {$_ => 1} (qw| http https ftp cpan file |);
if (! $eligible_schemes{$scheme}) {
print "invalid scheme '$scheme' for resource '$resource'. Skipping...\n"
... and then run make test
and collate the output, you get the count for each scheme actually tested:
$ make test 2>&1 | grep SCHEME | cut -d ' ' -f2 | uniq -c
1 file
60 http
Now, I have to admit that I don't really know what the cpan
scheme does, and my guess is that https
works just like http
. So I don't know whether the lack of tests of 3 schemes is important or not. Your call.
(originally submitted by @karenetheridge on RT#100337)
CPAN.pm has tests that output "Result: PASS", which are parsed by cpanm-reporter as PASS even if the test itself fails.
$ cpanm --mirror-only --mirror http://mirrors.gossamer-threads.com/CPAN/ CPAN; cpanm-reporter
CPAN
--> Working on CPAN
Fetching http://mirrors.gossamer-threads.com/CPAN/authors/id/A/AN/ANDK/CPAN-2.05.tar.gz ... OK
Configuring CPAN-2.05 ... OK
Building and testing CPAN-2.05 ... FAIL
! Installing CPAN failed. See /Users/ether/.cpanm/work/1415990050.50326/build.log for details. Retry with --force to force install it.
sending: (http://mirrors.gossamer-threads.com/CPAN/authors/id/A/AN/ANDK/CPAN-2.05.tar.gz, ANDK, CPAN-2.05, PASS)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.