Skip Menu |

This queue is for tickets about the CPANPLUS CPAN distribution.

Report information
The Basics
Id: 17568
Status: resolved
Priority: 0/
Queue: CPANPLUS

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

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



Subject: bad diagnostics from checksum errors/cpan2dist
marcus@ds1:~/tt$ sudo cpan2dist --format CPANPLUS::Dist::Deb Catalyst '/home/marcus/.cpanplus/authors/id/M/MR/MRAMBERG/Catalyst-5.64.tar.gz' is an invalid value for 'fetch' at /usr/local/share/perl/5.8.4/CPANPLUS/Module.pm line 441 'ef4da8facfd1e4e71b42ae3a4eb47432' is an invalid value for 'checksum_value' at /usr/bin/ cpan2dist line 271 Use of uninitialized value in open at /usr/lib/perl/5.8/IO/File.pm line 70. [ERROR] Checksum error for 'Catalyst-5.64.tar.gz' -- will not trust package Can't call method "status" on an undefined value at /usr/bin/cpan2dist line 305. marcus@ds1:~/tt$
On Fri Feb 10 05:15:12 2006, KANE wrote: Show quoted text
> marcus@ds1:~/tt$ sudo cpan2dist --format CPANPLUS::Dist::Deb Catalyst > '/home/marcus/.cpanplus/authors/id/M/MR/MRAMBERG/Catalyst-5.64.tar.gz' > is an invalid > value for 'fetch' at /usr/local/share/perl/5.8.4/CPANPLUS/Module.pm > line 441 > 'ef4da8facfd1e4e71b42ae3a4eb47432' is an invalid value for > 'checksum_value' at /usr/bin/ > cpan2dist line 271 > Use of uninitialized value in open at /usr/lib/perl/5.8/IO/File.pm > line 70. > [ERROR] Checksum error for 'Catalyst-5.64.tar.gz' -- will not trust > package
I've not been able to reproduce this on my machine. Perhaps if you can reproduce this with --verbose enabled, the messages will make a bit more sense to me. Show quoted text
> Can't call method "status" on an undefined value at /usr/bin/cpan2dist > line 305.
This part i've fixed by adding an explicit check to see if the dist object exists. It will handle the failure more gracefully now.
On Fri Mar 03 10:21:09 2006, KANE wrote: Show quoted text
> On Fri Feb 10 05:15:12 2006, KANE wrote:
> > marcus@ds1:~/tt$ sudo cpan2dist --format CPANPLUS::Dist::Deb
> Catalyst
> > '/home/marcus/.cpanplus/authors/id/M/MR/MRAMBERG/Catalyst-
> 5.64.tar.gz'
> > is an invalid > > value for 'fetch' at /usr/local/share/perl/5.8.4/CPANPLUS/Module.pm > > line 441 > > 'ef4da8facfd1e4e71b42ae3a4eb47432' is an invalid value for > > 'checksum_value' at /usr/bin/ > > cpan2dist line 271 > > Use of uninitialized value in open at /usr/lib/perl/5.8/IO/File.pm > > line 70. > > [ERROR] Checksum error for 'Catalyst-5.64.tar.gz' -- will not trust > > package
> > I've not been able to reproduce this on my machine. Perhaps if you can > reproduce > this with --verbose enabled, the messages will make a bit more sense > to me. >
I'm seeing something much like the above on Perl 5.8.6 on darwin (OSX 10.4.5) % cpanp CPANPLUS::Shell::Default -- CPAN exploration and module installation (v0.061) *** Please report bugs to <bug-cpanplus@rt.cpan.org>. *** Using CPANPLUS::Backend v0.061. ReadLine support enabled. CPAN Terminal> i File::HomeDir [MSG] Checking if source files are up to date [MSG] Retrieving /Users/chris/.cpanplus/sourcefiles.2.15.stored Installing File::HomeDir [MSG] Trying to get 'http://mirrors.kernel.org/cpan/authors/id/A/AD/ADAMK/File-HomeDir-0.56.tar.gz' '/Users/chris/.cpanplus/authors/id/A/AD/ADAMK/File-HomeDir-0.56.tar.gz' is an invalid value for 'fetch' at /Users/chris/perl/lib/perl5/site_perl/CPANPLUS/Module.pm line 441 [MSG] Trying to get 'http://mirrors.kernel.org/cpan/authors/id/A/AD/ADAMK/CHECKSUMS' '5f1b32a3fb9e4e5267e93e55c0994bc9' is an invalid value for 'checksum_value' at /Users/chris/perl/lib/perl5/site_perl/CPANPLUS/Shell/Default.pm line 812 [ERROR] Checksum error for 'File-HomeDir-0.56.tar.gz' -- will not trust package CPAN Terminal> q Exiting CPANPLUS shell % ls ~/.cpanplus/authors/id/A/AD/ADAMK/ CHECKSUMS Class-Inspector-1.12.tar.gz Config-Tiny-2.02.tar.gz File-HomeDir-0.56.tar.gz PPI-1.003.tar.gz PPI-1.101.tar.gz PPI-1.103.tar.gz PPI-1.109.tar.gz PPI-1.110.tar.gz Params-Util-0.05.tar.gz Params-Util-0.06.tar.gz Params-Util-0.07.tar.gz Params-Util-0.08.tar.gz Params-Util-0.10.tar.gz Perl-Metrics-0.03.tar.gz Test-ClassAPI-1.02.tar.gz Test-SubCalls-0.01.tar.gz Test-SubCalls-0.02.tar.gz Test-SubCalls-0.03.tar.gz -- Chris
More data -- I turned off MD5 checking and get this: CPAN Terminal> i File::HomeDir Installing File::HomeDir '/Users/chris/.cpanplus/authors/id/A/AD/ADAMK/File-HomeDir-0.56.tar.gz' is an invalid value for 'fetch' at /Users/chris/perl/lib/perl5/site_perl/CPANPLUS/Module.pm line 441 [ERROR] You have not fetched 'File::HomeDir' yet -- cannot extract The error message is incorrect. The tarball is definitely there. I'm digging into the source code now. -- Chris
I've tracked the error down. It's a bootstrap problem that only happens on the day you upgrade to CPANPLUS 0.06x. I launched "cpanp" this morning under 0.0562, so my Storable cache had 0.0562 CP::Module instances, but it looks like the format changed somewhat and I was getting Modules with bad status() objects (all had undef ALLOW properties where they should have been instances of the ANYTHING_CLASS), so Param::Check was indicating failures. The workaround was simply to reload via 'x', then all is well. My suggestion: when CPANPLUS upgrades itself, it should always rebuild the indexes. Chris
Show quoted text
> The workaround was simply to reload via 'x', then all is well. > > My suggestion: when CPANPLUS upgrades itself, it should always rebuild > the indexes.
Thanks for looking into this -- i've just checked in a patch that does exactly this. -- Jos