I've been trying to debug an issue with a CPAN module which was shown up by CPAN testers. At the moment, the testers' reports are not available on the web. The problem seemed to be with older versions of Perl, but despite much effort I was unable to install them to find out what was wrong. I have never installed or even tried perlbrew before today, but in desperation I tried it out.
Thanks to perlbrew I was able to install a Perl 5.12.5 and find the errors in my CPAN module very quickly. I'm very impressed with how easy it was and how it managed to install the old version of Perl on my system where I wasn't able to. The whole system of shell replacements is just ideal for this kind of work.
This is THE way to have multiple versions of perl installed.
I have 3 versions of perl installed:
1) Latest stable release of perl
2) Version installed on production web servers
3) Older version to test backwards compatibility.
It stops one messing with vendor supplied perl (which could cause issues with system-related tasks) - and allows you to run more modern versions if your vendor insists on providing a horribly out of date version.
The triumvirate of: App::perlbrew, App::cpanminus, and App::cpanoutdated provide a fantastic way of managing your perl environment.
Nice idea, but basically it doesn't work. I tried it on a couple of different platforms (one Linux and the other Darwin) and try as I might I always came across problems, usually associated with paths, perl5libs and the like not being set up so e.g. cpan installations wouldn't work or the wrong version of Perl was used.
Once the bugs are fixed I'm sure it'll be useful, but more work should be put into testing before (a) it's released and (b) new features are added.
Great idea and implementation. This tool makes it really easy for you to install different versions of perl under your home directory and switch from one to another.
This makes your life as a CPAN module developer much easier when you receive bug reports or CPAN testers failure with older version of perl that you might not otherwise have in your system.
It also makes your life as a normal perl user easier if you're using systems that has perl with custom vendor patches such as Mac OS X or Fedora, in which case you might want to avoid installing modules into system lib path that might cause problems with OS software upgrades.
I've always missed a tool to switch perl versions like gcc-config or eselect. Since this installs perl in your home directory, there will be no interaction with the system perl which is a source of many headaches.
I hope that in the future perlbrew can take a local perl git repository and a tag.