David Wheeler wrote:
On Monday, May 5, 2003, at 05:19  PM, Geoffrey Young wrote:

ok, so it's not like that I don't believe that this is an issue, but I don't believe you - if you have Apache/test.pm and you install 2.0 then Apache/Test.pm would replace the existing file, no? that's why Apache2 is around for all the mod_perl based stuff - to keep Apache::Filter from 2.0 from cloberring Apache::Filter from 1.0


The problem is not when you install mod_perl2 (though it might be, I honestly have no idea). The problem is when you have mod_perl1 and install Apache::Test from CPAN. No mp2 involved.

it could be the same issue when installing mp2, but as you say it's unrelated.

if installing Apache::Test doesn't clobber Apache::test on case-insensitive installations, _that_ seems like a bug to me :)


Agreed. See http://rt.perl.org/rt2/Ticket/Display.html?id=22077

bug or not bug, we have to deal with older perls.

My other suggestion was:

>> I think I have another idea. Remember I was proposing to replace
>> Apache/test.pm with a new Apache/test.pm with the same functionality.
>> The problem you said was that Apache/test.pm from mp1 was installed in
>> a different location. But if we provide both Apache/test.pm and
>> Apache/Test.pm (which would be really the same file, so whichever
>> [Tt]est.pm will be picked it'll just work), won't Makefile.PL deal
>> with that correctly? It will warn a user if there is another
>> Apache/test.pm installed elsewhere and UNINST=1 will nuke it.

And David has replied:

> Hrm, dunno. Given a case-insensitive file system, I would think that
> such a check in Makefile.PL would work correctly, anyway, finding
> Apache::test when installing Apache::Test. OTOH, I recently upgraded
> Locale::Maketext from CPAN, and it didn't overwrite the version
> distributed as part of the core, even though they _are_ named exactly
> the same way.

So it's actually a good thing that you have raised this issue. If it was overriding Apache/test.pm people won't be able to run tests on their mp1 Apache:: modules.

So it seems that the only correct solution (assuming that we don't want to rename Apache::Test), is to provide a back-compatibility functionality inside Apache::Test and install Apache/Test.pm and Apache/test.pm (which should be the same thing, so no matter what OS decides to load it still works the same. And Apache::Test's Makefile.PL has to find any installed Apache/test.pm and nuke it on 'make install', replacing with an imposter version of Apache/test.pm.


__________________________________________________________________ Stas Bekman JAm_pH ------> Just Another mod_perl Hacker http://stason.org/ mod_perl Guide ---> http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com



Reply via email to