Weirdness in Devel::Cover Report

jonasbn on 2008-06-11T21:02:56

I am working on the next release of Business::DK::CVR. The release is almost ready I just wanted to examine the test coverage. Last release was at 100%, but my newest additions will have changed this fact significantly.

So starting the Devel::Cover integration from Module::Build gives me the following report:

---------------------------- ------ ------ ------ ------ ------ ------ ------
File                           stmt   bran   cond    sub    pod   time  total
---------------------------- ------ ------ ------ ------ ------ ------ ------
/sw/lib/perl5/IO/String.pm      4.3    0.0    0.0    9.1   20.8    0.1    4.3
blib/lib/Business/DK/CVR.pm    97.1   95.0   33.3  100.0  100.0   78.6   95.2
...raints/Business/DK/CVR.pm   87.8   50.0   33.3   91.7  100.0   21.3   81.8
Total                          35.1   17.2    7.1   45.6   32.1  100.0   30.4
---------------------------- ------ ------ ------ ------ ------ ------ ------


Ok, the statistics are all crazy and the coverage is worse that anticipated, considering we where at 100% with the last release.

But hey what is this?

/sw/lib/perl5/IO/String.pm

I am not using IO::String or am I, what does ack say?

Hmmm and it is even a version installed via fink

% ack IO::String   
cover_db/-sw-lib-perl5-IO-String-pm.html
28:1package IO::String;

hyperstation ~/develop/cvs-logicLAB/modules/Business-DK-CVR %


As expected it is in the report. Hmmm, when I do a ./Build clean and re-run the coverage report, it disappears

---------------------------- ------ ------ ------ ------ ------ ------ ------
File                           stmt   bran   cond    sub    pod   time  total
---------------------------- ------ ------ ------ ------ ------ ------ ------
blib/lib/Business/DK/CVR.pm    97.1   95.0   33.3  100.0  100.0   79.5   95.2
...raints/Business/DK/CVR.pm   87.8   50.0   33.3   91.7  100.0   20.5   81.8
Total                          93.6   82.1   33.3   95.8  100.0  100.0   90.1
---------------------------- ------ ------ ------ ------ ------ ------ ------


I can make it appear by issuing the coverage test commands from Komodo... I created that command myself and it is a simply a button for running: ./Build testcover.

Hey wait a minute, IO::String is written by Gisle Aas, is he not an employee of ActiveState, the company behind Komodo??? - what is he doing in my report?

Suggestions are welcome!