Skip Menu |

This queue is for tickets about the Class-C3 CPAN distribution.

Report information
The Basics
Id: 26479
Status: resolved
Priority: 0/
Queue: Class-C3

People
Owner: blblack [...] gmail.com
Requestors: jdhedden [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 0.15_04
Fixed in: (no value)



Subject: Algorithm::C3 should be optional
Algorithm::C3 should be optional as it's not needed if mro.pm is available. Patch attached.
Subject: class_c3.patch
diff -ruN Class-C3-0.15_04/Build.PL Class-C3-patched/Build.PL --- Class-C3-0.15_04/Build.PL 2007-04-17 12:05:46.000000000 -0400 +++ Class-C3-patched/Build.PL 2007-04-18 11:48:24.697737000 -0400 @@ -6,11 +6,11 @@ module_name => 'Class::C3', license => 'perl', requires => { - 'Algorithm::C3' => 0.06, 'Scalar::Util' => 1.10, }, recommends => { 'Class::C3::XS' => 0.02, + 'Algorithm::C3' => 0.06, }, build_requires => { 'Test::More' => '0.47', diff -ruN Class-C3-0.15_04/Makefile.PL Class-C3-patched/Makefile.PL --- Class-C3-0.15_04/Makefile.PL 2007-04-17 12:05:46.000000000 -0400 +++ Class-C3-patched/Makefile.PL 2007-04-18 11:48:35.578487000 -0400 @@ -10,7 +10,6 @@ 'PREREQ_PM' => { 'Test::More' => '0.47', 'Scalar::Util' => '1.1', - 'Algorithm::C3' => '0.06' } ) ;
On Wed Apr 18 12:09:11 2007, JDHEDDEN wrote: Show quoted text
> Algorithm::C3 should be optional as it's not needed if mro.pm is > available. Patch attached.
Well, it is still required for the vast majority of users that are still on stable perl (or blead w/o patch), so I'd rather not remove the dep in the next version. I'd really like to do a conditional dependency only if $^V < 5.9.5, but that would probably require Module::Install or M::B subclassing, either of which makes me a little uneasy (wrt "just working" for most random cpan users). I guess Module::Install is the better choice, but I haven't looked into it yet. -- Brandon
Seems like an easy thing with unaltered Module::Build and MakeMaker: $]<5.009005 ? ('Algorithm::C3' => '0.06') : () Besides that Module::Install asks too many questions, goes into blind recursion, and the user has no chance to upgrade the version you include in your distribution so in the long term makes it more difficult to install things.
For 0.15_06, I've moved to Module::Install, and made all of the deps go away under 5.9.5+ (Test::More 0.47 has been in core forever, and the rest are unnecessary on blead), we'll see how it works out.