Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

CPAN Wish List

by tomazos (Deacon)
on Aug 20, 2005 at 20:08 UTC ( [id://485427]=perlmeditation: print w/replies, xml ) Need Help??

IMPORTANT DISCLAIMER: I love Perl! I love CPAN!

In using FreeBSD's ports and packages system I have suddenly noticed a lot of things missing from CPAN.

Or maybe I just don't know enough.

Specifically it would be nice:

  • To get a list of the CPAN modules installed.
  • To get a list of the files that have been installed by a given CPAN module.
  • To get a list of which installed CPAN modules depend on which other installed CPAN modules.
  • To be able to deinstall a CPAN module.

...with as much ease as typing info *, file_list Foo::Bar, dependancies Foo::Bar or deinstall Foo::Bar respectively at the cpan prompt.

  -Andrew.


Andrew Tomazos  |  andrew@tomazos.com  |  www.tomazos.com

Replies are listed 'Best First'.
Re: CPAN Wish List
by itub (Priest) on Aug 20, 2005 at 21:04 UTC
    Have you tried CPANPLUS? It has more features than the regular cpan shell, including uninstall, and listing installed modules that aren't up to date. Perhaps you can send the maintainer the rest of your wishlist. Note, however, that keeping track of the dependencies is not trivial, because not all distributions label them in a standard way (they might even be computed on the fly when running Makefile.PL!).
Re: CPAN Wish List
by jimX11 (Friar) on Aug 21, 2005 at 03:06 UTC

    Comments and questions about the FreeBSD ports collection follow.

    Do you prefer to install modules using the FreeBSD ports collection over the CPAN module install? I do.

    Of course sometimes CPAN modules aren't in the FreeBSD ports collection. Doing a CPAN install will have dependency modules installed by CPAN even if they are in the ports collection.

    An example, in January of 2005 Test::WWW::Mechanize was not in the ports collection. Test::LongString,required by Test-WWW-Mechanize, at that point was already in the ports collection.

    So when I installed Test-WWW-Mech using CPAN, it also pulled in Test::LongString.

    What do you do when you want to test drive a module not in the ports collection? Recently I wanted to test drive CGI::Prototype. It's not in the ports collection, nor is Treemap, another module I've recently played with.

    When I test drive a module, I install using a non root account in ~/myperl via CPAN. I explore the module in question and if I like it, I take a peek in ~/.cpan/build/ and see what else was installed. If it doesn't look to hard, I do the dependencies by hand.

    By the way, Test-WWW-Mech entered the FreeBSD ports collection soon after version 1.0.

    One great automated package management system plus another great automated package management system equals almost the same work as no automated package management system.

      I have found fewer errors after using the FreeBSD-supplied ports of modules. I only use CPAN versions if there aren't FreeBSD versions. Not only do some installs from CPAN not work at all, they don't update the FreeBSD package database properly. 'Package blah has no recorded origin' gets old. :)

      Thanks for your thoughts about non-root 'sandbox installs' for testing. I, too, have run into problems using the automated install+test system, especially modules which try to access the external world, and it's necessary to manually install such things as patches to test scripts get overwritten by the CPAN install.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlmeditation [id://485427]
Approved by phaylon
Front-paged by hsmyers
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (4)
As of 2024-03-28 23:20 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found