develooper Front page | perl.perl5.porters | Postings from October 1999

Re: [BUG? 5.005_62] Out of date modules in core.

From:
andreas.koenig
Date:
October 26, 1999 13:00
Subject:
Re: [BUG? 5.005_62] Out of date modules in core.
Message ID:
sfcvh7thpjy.fsf@hohenstaufen.in-berlin.de
>>>>> On Tue, 26 Oct 1999 15:09:14 -0400 (EDT), Ilya Zakharevich <ilya@math.ohio-state.edu> said:

 > Andreas J. Koenig writes:
>> > Devel::Peek on CPAN is for backlevel Perls.  Do not know how to
>> > designate this with version numbers.  Just did not want people doing
>> 
>> >   install Devel::Peek
>> 
>> > to get the latest snapshot of 5.005_7? from CPAN.  ;-)
>> 
>> The bug in CPAN.pm you allude to is fixed for quite a while now. (IIRC)

 > Somehow I do not follow.  Perl5.005 requires Devel::Peek from CPAN
 > (the latest version found there).  Perl5.006 does not require
 > Devel::Peek from CPAN, period.  Similarly for Devel::DProf.

 > How should the versions on CPAN and in Perl distribution be organized
 > to allow for this?

By not touching version number nor timestamp. If you have Version 2.7
on CPAN and Graham then includes Version 2.7 without a change in perl
5.00504, the indexer will not index it for the perl version but leave
it indexed for your distributed version.

 >                     Is not it indexer's job, or CPAN.pm's?

The indexer does something like (I hope I got it right):

    if (they have different version){
      if (later arrival has higher version){
        later arrival which is the higher version wins;
      } else {
        earlier arrival wins and warning "falling version number" triggered;
      }
    } elsif (later arrival is distorperlok) {
      if (they have no version){
        if (filemtime is greater or equal){
           Later arrival wins;
        } else {
           Later arrival wins and warning "falling mtime" triggered;
        }
      } elsif (
                later arrival is not a perl dist
                OR
                both are perl dists
              ) {
        Later arrival wins
      } else {
        ignore later arrival, don't touch the database
      }
    } else {
      ignore later arrival, don't touch the database
    }

If after all that it still happens for some insane reasons that the
indexer points to a perl version against our intention, CPAN.pm
nowadays doesn't try to install perl. In that case it leaves the user
with a warning that latest version is in the perl distribution.

-- 
andreas



nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About