This queue is for tickets about the App-cpanminus-reporter CPAN distribution.

Report information
The Basics
Id:
100467
Status:
open
Priority:
Low/Low

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



Subject: App-cpanminus-reporter does not send UNKNOWN results for failed compilations
In the case of failed compilations CPAN::Reporter sends UNKNOWN reports, where App::cpanminus::reporter makes this into a FAIL. Here's an example: * http://www.cpantesters.org/cpan/report/d937eebc-5616-11e4-acef-b75a82024ea0 * http://www.cpantesters.org/cpan/report/f242119a-703c-11e4-83cf-8272e0bfc7aa Until this is fixed I urge every tester to NOT use App::cpanminus::reporter anymore. I marked this as critical because sending inconsistent results makes analysis (e.g. using http://analysis.cpantesters.org) difficult.
To add some research to this: cpanm-reporter at the moment uses cpanm installation status. CPAN::Reporter seems to have various heuristics inside. In this very case, CPAN/Reporter.pm has its _compute_make_grade routine, which makes "unknown" out of anything with non-zero exit value. For cpanm-reporter it is more difficult to know that make was used and that it failed with some status, as information must be parsed out, and actual text is volatile. Here is how the relevant part looks on my machine (Polish locale): ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~` cc -c -I/usr/lib/perl5/EV -I/usr/lib/perl5 -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -DVERSION=\"2.2\" -DXS_VERSION=\"2.2\" -fPIC "-I/usr/lib/perl/5.18/CORE" ADNS.c ADNS.xs:6:18: fatal error: adns.h: Nie ma takiego pliku ani katalogu #include <adns.h> ^ compilation terminated. make: *** [ADNS.o] Błąd 1 -> FAIL Installing EV::ADNS failed. See /home/marcink/.cpanm/work/1422749568.24337/build.log for details. Retry with --force to force install it. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Still, I suppose make: *** [...] [...] 1 present in the very last line before test FAIL is clear enough...
On 2015-01-31 19:26:04, Mekk wrote:
Show quoted text
> To add some research to this: cpanm-reporter at the moment uses cpanm > installation status. CPAN::Reporter seems to have various heuristics > inside. In this very case, CPAN/Reporter.pm has its > _compute_make_grade routine, which makes "unknown" out of anything > with non-zero exit value. > > For cpanm-reporter it is more difficult to know that make was used and > that it failed with some status, as information must be parsed out, > and actual text is volatile. Here is how the relevant part looks on my > machine (Polish locale): > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~` > cc -c -I/usr/lib/perl5/EV -I/usr/lib/perl5 -D_REENTRANT -D_GNU_SOURCE > -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe > -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g > -DVERSION=\"2.2\" -DXS_VERSION=\"2.2\" -fPIC "- > I/usr/lib/perl/5.18/CORE" ADNS.c > ADNS.xs:6:18: fatal error: adns.h: Nie ma takiego pliku ani katalogu > #include <adns.h> > ^ > compilation terminated. > make: *** [ADNS.o] Błąd 1 > -> FAIL Installing EV::ADNS failed. See > /home/marcink/.cpanm/work/1422749568.24337/build.log for details. > Retry with --force to force install it. > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > > Still, I suppose > make: *** [...] [...] 1 > present in the very last line before test FAIL is clear enough...
Well, for GNU make. Different makes have different output here: - FreeBSD make: *** [fail] Error code 1 Stop in /tmp. - GNU make, English version: Makefile:2: recipe for target 'fail' failed gmake: *** [fail] Error 1 - GNU make, German version, latin1 locale: Makefile:2: die Regel für Ziel "fail" scheiterte gmake: *** [fail] Fehler 1 - GNU make, German version, utf8 locale (note the different quotes): Makefile:2: die Regel für Ziel „fail“ scheiterte gmake: *** [fail] Fehler 1 - dmake on FreeBSD: dmake: Error code 1, while making 'fail' At least nmake output should be also checked for, and are there any other popular makes?
On 2015-02-01 02:30:26, SREZIC wrote:
Show quoted text
> On 2015-01-31 19:26:04, Mekk wrote:
> > To add some research to this: cpanm-reporter at the moment uses cpanm > > installation status. CPAN::Reporter seems to have various heuristics > > inside. In this very case, CPAN/Reporter.pm has its > > _compute_make_grade routine, which makes "unknown" out of anything > > with non-zero exit value. > > > > For cpanm-reporter it is more difficult to know that make was used > > and > > that it failed with some status, as information must be parsed out, > > and actual text is volatile. Here is how the relevant part looks on > > my > > machine (Polish locale): > > > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~` > > cc -c -I/usr/lib/perl5/EV -I/usr/lib/perl5 -D_REENTRANT > > -D_GNU_SOURCE > > -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe > > -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 > > -g > > -DVERSION=\"2.2\" -DXS_VERSION=\"2.2\" -fPIC "- > > I/usr/lib/perl/5.18/CORE" ADNS.c > > ADNS.xs:6:18: fatal error: adns.h: Nie ma takiego pliku ani katalogu > > #include <adns.h> > > ^ > > compilation terminated. > > make: *** [ADNS.o] Błąd 1 > > -> FAIL Installing EV::ADNS failed. See > > /home/marcink/.cpanm/work/1422749568.24337/build.log for details. > > Retry with --force to force install it. > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > > > > > Still, I suppose > > make: *** [...] [...] 1 > > present in the very last line before test FAIL is clear enough...
> > Well, for GNU make. Different makes have different output here: > > - FreeBSD make: > *** [fail] Error code 1 > > Stop in /tmp. > > - GNU make, English version: > Makefile:2: recipe for target 'fail' failed > gmake: *** [fail] Error 1 > > - GNU make, German version, latin1 locale: > Makefile:2: die Regel für Ziel "fail" scheiterte > gmake: *** [fail] Fehler 1 > > - GNU make, German version, utf8 locale (note the different quotes): > Makefile:2: die Regel für Ziel „fail“ scheiterte > gmake: *** [fail] Fehler 1 > > - dmake on FreeBSD: > dmake: Error code 1, while making 'fail' > > At least nmake output should be also checked for, and are there any > other popular makes?
Another one, a make on Solaris: *** Error code 255 make: Fatal error: Command failed for target `fail'
Hi everyone, I'm sorry I didn't reply to this sooner, and I really appreciate your patience. cpanm-reporter is indeed unable to see the return value of make. However, we do rely on the output of cpanm and in this case, it looks like it's returning FAIL instead of UNKNOWN. Since this is mostly likely an error in the build.log parser, could you please send me the relevant "~/.cpanm/build.log" file so I can create test cases and fix the issue? Thanks!
From: twata_1@yahoo.co.jp
Hi garu, Here is ~/.cpanm/build.log. ( Windows 7, Strawbery Perl v5.10.1 cpanm-reporter v0.17 ) Thnan you, -- twata On 2016-4月-23 土 11:28:06, GARU wrote:
Show quoted text
> Hi everyone, > > I'm sorry I didn't reply to this sooner, and I really appreciate your > patience. > > cpanm-reporter is indeed unable to see the return value of make. > However, we do rely on the output of cpanm and in this case, it looks > like it's returning FAIL instead of UNKNOWN. Since this is mostly > likely an error in the build.log parser, could you please send me the > relevant "~/.cpanm/build.log" file so I can create test cases and fix > the issue? > > Thanks!
Subject: build.log

Message body not shown because it is not plain text.

From: twata_1@yahoo.co.jp
Hi garu, Here is other build logs. ( Windows 7, Strawbery Perl v5.10.1 cpanm-reporter v0.17 ) a dmake above: dmake.exe: Error code 129, while making (The rest is omitted.) Thank you, -- twata On 2016-12月-17 土 07:41:55, twata_1@yahoo.co.jp wrote:
Show quoted text
> Hi garu, > > Here is ~/.cpanm/build.log. > ( > Windows 7, Strawbery Perl v5.10.1 > cpanm-reporter v0.17 > ) > > Thnan you, > > -- > twata > > > On 2016-4月-23 土 11:28:06, GARU wrote:
> > Hi everyone, > > > > I'm sorry I didn't reply to this sooner, and I really appreciate your > > patience. > > > > cpanm-reporter is indeed unable to see the return value of make. > > However, we do rely on the output of cpanm and in this case, it looks > > like it's returning FAIL instead of UNKNOWN. Since this is mostly > > likely an error in the build.log parser, could you please send me the > > relevant "~/.cpanm/build.log" file so I can create test cases and fix > > the issue? > > > > Thanks!
> >
Subject: 002-build.log

Message body not shown because it is not plain text.

Subject: 003-build.log

Message body not shown because it is not plain text.

Subject: 001-build.log

Message body not shown because it is not plain text.



This service runs on Request Tracker, is sponsored by The Perl Foundation, and maintained by Best Practical Solutions.

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