develooper Front page | perl.perl5.porters | Postings from March 2003

rfc: a generic solution for dual-life CPAN packages

Stas Bekman
March 25, 2003 19:45
rfc: a generic solution for dual-life CPAN packages
Message ID:
Currently has a special logic to make sure that if a requested package 
is found in the core perl distribution and in another package, that another 
package takes the precedence if its VERSION number is the same or higher than 
the VERSION number of that package in the core perl distro.

Now I working on a helper package for mod_perl CPAN modules (to reduce the 
craft in Makefile.PL) and I want it to be on CPAN, but also include it in the 
mod_perl 1.0 and 2.0 core (also living on CPAN). I foresee a problem with, as it's going to see the same package in 3 different packages and 
which is going to be picked by is undefined, since we have no special 
case logic for mod_perl-core packages. And we don't want to try to 
install mod_perl 1.0, when I just want to fetch that single package.

I suppose that this will always do the right thing if the standalone package 
will have a higher version, than the one in the core, but that's not a good 
solution, since it'll require an unnecessary update on user's behalf and it 
creates a lot of confusion.

What should be the right approach?

Perhaps, we have to introduce a new special package variable, recognized by 
CPAN and CPANPLUS (and, to designate the MASTER package. e.g. 
if the master package name is ModPerl-Foo, ModPerl/ will include:


notice that this is 'ModPerl-Foo' and not 'ModPerl::Foo', because it lets CPAN 
to make the right choice between these three packages that include ModPerl::Foo:


we want ModPerl-Foo-0.01.tgz to be picked.

Once we have this logic in place, we no longer need to make a special case for 
the perl core, but let every package that has a dual (or a ternary) life 
define its master package.

Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker     mod_perl Guide ---> Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About