Skip Menu |

This queue is for tickets about the CPANPLUS CPAN distribution.

Report information
The Basics
Id: 55541
Status: resolved
Worked: 30 min
Priority: 0/
Queue: CPANPLUS

People
Owner: BINGOS [...] cpan.org
Requestors: APOCAL [...] cpan.org
Cc:
AdminCc:

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



Subject: CPANPLUS aborts the install of a module if it requires a perl-core module
Hello, I'm helping the CPANTesters 2.0 effort by installing the new Metabase transport and smoking perls with it. However, trying to install Metabase::Fact::Hash on an old perl install will cause CPANPLUS to abort the entire install. Trying to do it with "--force" made no difference. I tried to install it via CPAN.pm and it worked! It simply printed a warning about the perl-core module and skipped it as a prereq. I decided to make CPANPLUS behave the same way, and attached is the patch. Running [/home/cpan/perls/perl-5.8.9-default/bin/perl /home/cpan/CPANPLUS-0.9002/bin/cpanp-run-perl /home/cpan/CPANPLUS-0.9002/.cpanplus/cpan/5.8.9/build/Metabase-Fact-0.003002/Makefile.PL]... Checking if your kit is complete... Looks good Warning: prerequisite overload 1.07 not found. We have 1.06. Writing Makefile for Metabase::Fact [MSG] Module 'Metabase::Fact::Hash' requires 'overload' version '1.07' to be installed [ERROR] Prerequisite 'overload' is perl-core (perl-5.10.1.tar.gz) -- not installing that. Aborting install [ERROR] Unable to satisfy prerequisites for 'Metabase::Fact::Hash' -- aborting install [ERROR] Unable to create a new distribution object for 'Metabase::Fact::Hash' -- cannot continue [ERROR] Failed to install 'Metabase::Fact::Hash' as prerequisite for 'CPAN::Testers::Report' [ERROR] Unable to satisfy prerequisites for 'CPAN::Testers::Report' -- aborting install [ERROR] Unable to create a new distribution object for 'CPAN::Testers::Report' -- cannot continue [ERROR] Failed to install 'CPAN::Testers::Report' as prerequisite for 'Test::Reporter::Transport::Metabase' [ERROR] Unable to satisfy prerequisites for 'Test::Reporter::Transport::Metabase' -- aborting install [ERROR] Unable to create a new distribution object for 'Test::Reporter::Transport::Metabase' -- cannot continue -- ~Apocalypse
Subject: cpanplus.patch
--- lib/CPANPLUS/Dist.pm.orig 2010-03-13 19:43:13.000000000 -0700 +++ lib/CPANPLUS/Dist.pm 2010-03-13 19:46:03.000000000 -0700 @@ -611,10 +611,10 @@ ### part of core? if( $modobj->package_is_perl_core ) { error(loc("Prerequisite '%1' is perl-core (%2) -- not ". - "installing that. Aborting install", + "installing that. -- Note that the overall ". + "install may fail due to this.", $modobj->module, $modobj->package ) ); - $flag++; - last; + next; } ### circular dependency code ###
To clarify - the patch is against CPANPLUS-0.9002 :) Applying it, I am able to install Metabase::Fact::Hash as seen here: Running [/home/cpan/perls/perl-5.8.9-default/bin/perl /home/cpan/CPANPLUS-0.9002/bin/cpanp-run-perl /home/cpan/CPANPLUS-0.9002/.cpanplus/cpan/5.8.9/build/Metabase-Fact-0.003002/Makefile.PL]... Checking if your kit is complete... Looks good Warning: prerequisite overload 1.07 not found. We have 1.06. Writing Makefile for Metabase::Fact [MSG] Module 'Metabase::Fact::Hash' requires 'overload' version '1.07' to be installed [ERROR] Prerequisite 'overload' is perl-core (perl-5.10.1.tar.gz) -- not installing that. -- Note that the overall install may fail due to this. Running [/usr/bin/make]... cp lib/Metabase/User/FullName.pm blib/lib/Metabase/User/FullName.pm ... # And it successfully installs Metabase::Fact And the output from CPAN.pm looks like this: CPAN.pm: Going to build D/DA/DAGOLDEN/Metabase-Fact-0.003002.tar.gz Checking if your kit is complete... Looks good Warning: prerequisite JSON 2.17 not found. We have 2.16. Warning: prerequisite overload 1.07 not found. We have 1.06. Writing Makefile for Metabase::Fact Show quoted text
---- Unsatisfied dependencies detected during ---- ---- DAGOLDEN/Metabase-Fact-0.003002.tar.gz ---- overload [requires] JSON [requires] Running make test Delayed until after prerequisites Running make install Delayed until after prerequisites Running install for module 'overload' The most recent version "1.07" of the module "overload" is part of the perl-5.10.1 distribution. To install that, you need to run force install overload --or-- install D/DA/DAPM/perl-5.10.1.tar.gz Running make test Can't test without successful make Running make install Make had returned bad status, install seems impossible Running install for module 'JSON' Running make for M/MA/MAKAMAKA/JSON-2.17.tar.gz ... # and it successfully installs Metabase::Fact -- ~Apocalypse
Thanks for the patch. Applied and CPANPLUS-0.9003 released to CPAN. Cheers.