David B
David B

Reputation: 29968

How do I update all my CPAN modules to their latest versions?

How do I update all my CPAN modules to their latest versions?

Upvotes: 153

Views: 132636

Answers (5)

draegtun
draegtun

Reputation: 22560

An alternative method to using upgrade from the default CPAN shell is to use cpanminus and cpan-outdated.

These are so easy and nimble to use that I hardly ever go back to CPAN shell. To upgrade all of your modules in one go, the command is:

cpan-outdated -p | cpanm

I recommend you install cpanminus like the docs describe:

curl -L https://cpanmin.us | perl - App::cpanminus

And then install cpan-outdated along with all other CPAN modules using cpanm:

cpanm App::cpanoutdated

BTW: If you are using perlbrew then you will need to repeat this for every Perl you have installed under it.

You can find out more about cpanminus and cpan-outdated at the Github repos here:

Upvotes: 166

Denis Howe
Denis Howe

Reputation: 2412

For Strawberry Perl, try:

cpan -u

Upvotes: 43

Michael Armbruster
Michael Armbruster

Reputation: 663

An easy way to upgrade all Perl packages (CPAN modules) is the following way:

cpan upgrade /(.*)/

cpan will recognize the regular expression like this and will update/upgrade all packages installed.

Upvotes: 63

Matthias Munz
Matthias Munz

Reputation: 3765

Try perl -MCPAN -e "upgrade /(.\*)/". It works fine for me.

Upvotes: 20

musiKk
musiKk

Reputation: 15189

upgrade

BTW there is a help command.

Upvotes: 18

Related Questions