in reply to CPAN local data corrupted

Sometimes, it can be difficult to tell what modules are core, or even what modules are dualLived. For example, Term::ReadLine is part of the core, currrently 5.10.1; however, take a module like Module::CoreList. It's part of the core, but it is dualLived in that you can upgrade it without having to upgrade perl. I haven't found an easy way to determine if a module is dualLived, but you can use the corelist script from Module::CoreList to see if a module is indeed core. For an example from the command line:

corelist -a Term::ReadLine

An even better one:

 corelist -a /^Term::/

It'll return all the Term modules that are part of the core.

Replies are listed 'Best First'.
Re^2: CPAN local data corrupted
by cmac (Monk) on Aug 30, 2009 at 21:48 UTC
    Thanks to all three respondents. What happened was that @INC in my 5.10.1 didn't include all of the directories from past versions, such that (as I found out later) I needed an update of Term::ReadLine::Gnu to make one of my scripts work right. I thought the problems was with Term::ReadLine, and didn't check its status. Naturally, when I just said install, perl -MCPAN said it was up to date, so I tried to force it.

    Perl -MCPAN's response of trying to unpack perl was mysterious at the end of a long day. Later I finally got @INC in 5.10.1 right, so that all past module directories are now present and in the right order.