# from Adam Kennedy
# on Wednesday 23 May 2007 12:15 am:
>The case of the virgin perl install, all the way up to the current
>production release of perl, is fundamentally and irrevocable broken
> now.
>
>There is nothing that can be done to fix it.
Except `perl -MCPAN -e "install CPAN"`, right?
>And most of the workarounds cause more harm than good.
I agree. Why are we still talking about possible workarounds?
Any problems people are having with Module::Build can be solved by
upgrading CPAN. So, wouldn't the answer be "upgrade CPAN"?
Maybe it's a little tricky to communicate "you must upgrade CPAN.pm" to
the world (hey, we can chop it down to "Upgrade CPAN.pm" to save
space-time.) But it really is the *only* good answer and yet nobody is
discussing it as an option. The testers' attitude just underscores
that.
So, we've tried these alternatives:
* no Makefile.PL - breaks when CPAN(PLUS) tries to "invent one".
* traditional Makefile.PL - is not Module::Build (requires make)
* passthrough Makefile.PL - too many levels of CPAN
And, we've determined that CPAN(PLUS) must read META.yml and satisfy
configure_requires before running any code for anything to be sane.
So, given all of that, my preferred compatibility Makefile.PL is like:
die 'This distribution requires Module::Build.
Please run "perl Build.PL" instead.
Perhaps you want to upgrade CPAN:
perl -MCPAN -e "install Bundle::CPAN"
or CPANPLUS:
perl -MCPAN -e "install Bundle::CPANPLUS"
';
Yeah, I get the "20 levels deep and nobody will see it" thing. Maybe
anything using Module::Install with a lot of dependencies should
require Module::Build. Bundle::CPAN and Bundle::CPANPLUS both do.
--Eric
--
Chicken farmer's observation: Clunk is the past tense of cluck.
---------------------------------------------------
http://scratchcomputing.com
---------------------------------------------------