Skip Menu |

This queue is for tickets about the CPAN CPAN distribution.

Report information
The Basics
Id: 98847
Status: open
Priority: 0/
Queue: CPAN

People
Owner: Nobody in particular
Requestors: 'spro^^*%*^6ut# [...] &$%*c
Cc:
AdminCc:

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



Subject: Weird behaviour of ‘force test’
Apologies if this is a false report due to my eccentric setup. After a successful test, repeating the command won’t rerun the tests. So I do ‘force test’ and it regenerates the Makefile instead, without running the tests. Now, I am using an installed copy of bleadperl, and I may tweak it and reinstall it before testing again (just to see whether the change will break a specific module). That may account for the confusion. But still, the message ‘make_test NO but failure ignored because 'force' in effect’ is not correct. It’s just confusing. (As an aside, can’t the shell tell the difference between a user-typed ‘test’ command and a test triggered as a side-effect of other things?) ---------- Show quoted text
cpan> test XML::Fast
Running test for module 'XML::Fast' MONS/XML-Fast-0.11.tar.gz Has already been unwrapped into directory /Users/sprout/.cpan/build/XML-Fast-0.11-_nsN9Z MONS/XML-Fast-0.11.tar.gz Has already been prepared MONS/XML-Fast-0.11.tar.gz Has already been made MONS/XML-Fast-0.11.tar.gz Has already been tested successfully Show quoted text
cpan> force test XML::Fast
Running test for module 'XML::Fast' MONS/XML-Fast-0.11.tar.gz Has already been unwrapped into directory /Users/sprout/.cpan/build/XML-Fast-0.11-_nsN9Z MONS/XML-Fast-0.11.tar.gz Has already been prepared MONS/XML-Fast-0.11.tar.gz Has already been made Running make test Makefile out-of-date with respect to /usr/local/lib/perl5/5.21.4/darwin-2level/Config.pm /usr/local/lib/perl5/5.21.4/darwin-2level/CORE/config.h Cleaning current config before rebuilding Makefile... make -f Makefile.old clean > /dev/null 2>&1 /usr/local/bin/perl5.21.4 Makefile.PL Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for XML::Fast Writing MYMETA.yml and MYMETA.json ==> Your Makefile has been rebuilt. <== ==> Please rerun the make command. <== false make: *** [Makefile] Error 1 MONS/XML-Fast-0.11.tar.gz /usr/bin/make test -- NOT OK //hint// to see the cpan-testers results for installing this module, try: reports MONS/XML-Fast-0.11.tar.gz Failed during this command: MONS/XML-Fast-0.11.tar.gz : make_test NO but failure ignored because 'force' in effect
CC: undisclosed-recipients:;
Subject: Re: [rt.cpan.org #98847] Weird behaviour of ‘force test’
Date: Sat, 13 Sep 2014 13:02:43 +0200
To: bug-CPAN [...] rt.cpan.org
From: Andreas Koenig <andreas.koenig.7os6VVqR [...] franz.ak.mind.de>
Show quoted text
>>>>> On Fri, 12 Sep 2014 19:05:24 -0400, "Father Chrysostomos via RT" <bug-CPAN@rt.cpan.org> said:
Show quoted text
> Apologies if this is a false report due to my eccentric setup.
Thank you for your eccentric setup, I love the challenge:) Show quoted text
> After a successful test, repeating the command won’t rerun the > tests. So I do ‘force test’ and it regenerates the Makefile instead, > without running the tests.
In your case this is correct, not in the general case. Show quoted text
> Now, I am using an installed copy of bleadperl, and I may tweak it > and reinstall it before testing again (just to see whether the > change will break a specific module). That may account for the > confusion.
Yes. Show quoted text
> But still, the message ‘make_test NO but failure ignored because > 'force' in effect’ is not correct. It’s just confusing.
The message needs to be improved, no doubt. But first let me provide the two incantations that I would choose here, marked as (1) and (2) below. Show quoted text
> (As an aside, can’t the shell tell the difference between a > user-typed ‘test’ command and a test triggered as a side-effect of > other things?)
I think, it does that quite well. Not sure whether it applies to the situation here. Let me first mention my all-time favorite I choose whenever I find the cpan shell getting in the way. The command I use then is look XML::Fast # (1) I leave the cpan shell behind and see what makemaker or module build or make or whatever actually does. Show quoted text
> ----------
Show quoted text
cpan> test XML::Fast
Show quoted text
> Running test for module 'XML::Fast' > MONS/XML-Fast-0.11.tar.gz > Has already been unwrapped into directory /Users/sprout/.cpan/build/XML-Fast-0.11-_nsN9Z > MONS/XML-Fast-0.11.tar.gz > Has already been prepared > MONS/XML-Fast-0.11.tar.gz > Has already been made > MONS/XML-Fast-0.11.tar.gz > Has already been tested successfully
Show quoted text
cpan> force test XML::Fast
Show quoted text
> Running test for module 'XML::Fast' > MONS/XML-Fast-0.11.tar.gz > Has already been unwrapped into directory /Users/sprout/.cpan/build/XML-Fast-0.11-_nsN9Z > MONS/XML-Fast-0.11.tar.gz > Has already been prepared > MONS/XML-Fast-0.11.tar.gz > Has already been made > Running make test > Makefile out-of-date with respect to /usr/local/lib/perl5/5.21.4/darwin-2level/Config.pm /usr/local/lib/perl5/5.21.4/darwin-2level/CORE/config.h > Cleaning current config before rebuilding Makefile... > make -f Makefile.old clean > /dev/null 2>&1 > /usr/local/bin/perl5.21.4 Makefile.PL > Checking if your kit is complete... > Looks good > Generating a Unix-style Makefile > Writing Makefile for XML::Fast > Writing MYMETA.yml and MYMETA.json > ==> Your Makefile has been rebuilt. <== > ==> Please rerun the make command. <== > false
Let me explain why 'force test' is insufficient here: because you changed perl and so make(1) recognized there was a new target to run, namely the 'perl Makefile.PL' and the 'false'. So the 'make test' command failed with the message above. Show quoted text
> make: *** [Makefile] Error 1 > MONS/XML-Fast-0.11.tar.gz > /usr/bin/make test -- NOT OK > //hint// to see the cpan-testers results for installing this module, try: > reports MONS/XML-Fast-0.11.tar.gz > Failed during this command: > MONS/XML-Fast-0.11.tar.gz : make_test NO but failure ignored because 'force' in effect
The message put aside, you would now have to run yet another 'force test' and this time the test would be run. So we come to the second command I would probably use here: fforce test XML::Fast # (2) The double ff was meant to provide some extra force to resolve such situations. -- andreas
On Sat Sep 13 07:20:20 2014, andreas.koenig.7os6VVqR@franz.ak.mind.de wrote: Show quoted text
> Let me first mention my all-time favorite I choose whenever I find the > cpan shell getting in the way. The command I use then is > > look XML::Fast # (1) > > I leave the cpan shell behind and see what makemaker or module build > or > make or whatever actually does.
I already use that. However, it really *does* get in the way when it starts following configure dependencies, and I never know where it’s going to open a shell next and I’m just trying to get back to the cpan shell.... Show quoted text
> Let me explain why 'force test' is insufficient here: because you > changed perl and so make(1) recognized there was a new target to run, > namely the 'perl Makefile.PL' and the 'false'. So the 'make test' > command failed with the message above. >
> > make: *** [Makefile] Error 1 > > MONS/XML-Fast-0.11.tar.gz > > /usr/bin/make test -- NOT OK > > //hint// to see the cpan-testers results for installing this module, > > try: > > reports MONS/XML-Fast-0.11.tar.gz > > Failed during this command: > > MONS/XML-Fast-0.11.tar.gz : make_test NO but > > failure ignored because 'force' in effect
> > The message put aside, you would now have to run yet another 'force > test' and this time the test would be run. So we come to the second > command I would probably use here: > > fforce test XML::Fast # (2) > > The double ff was meant to provide some extra force to resolve such > situations.
Aha, I’d forgotten all about fforce, because it is rarely needed. Thank you. Feel free to close this ticket if you want.