Hi,
I have just discovered perlbrew. Thanks for this nifty tool. During my
experimentations, I have discovered that a few areas that could need
improvement.
# Perlbrew is installed and working
$ perlbrew list
perl-5.8.9
# Trying to install perl-5.6.1
$ perlbrew -v install perl-5.6.1
[...]
Failed 6 test scripts out of 251, 97.61% okay.
[...]
u=0.11 s=0.09 cu=3.69 cs=1.34 scripts=251 tests=11152
make: *** [test] Error 1
Installed /home/floflooo/perl5/perlbrew/build/perl-5.6.1 as perl-5.6.1
successfully. Run the following command to switch to it.
perlbrew switch perl-5.6.1
# Despite the success message, it is clear that perl-5.6.1 was not
installed successfully. Without the verbose mode, one would think
everything went according to plan.
$ perlbrew list
perl-5.8.9
# But let's try to use perl-5.6.1 anyway...
$ perlbrew switch perl-5.6.1
Use of uninitialized value $perl_name in concatenation (.) or string at
/usr/share/perl5/App/perlbrew.pm line 1161.
Use of uninitialized value $perl_name in concatenation (.) or string at
/usr/share/perl5/App/perlbrew.pm line 1161.
# Outside a couple of warnings, there are no error messages, even though
perl 5.6.1 was not used
$ perl -v
This is perl 5, version 14, subversion 2 [...]
# Maybe my issues are simply because perl-5.6.1 is not in the available
perl. Let's try an available perl
$ perlbrew available
perl-5.15.8
perl-5.14.2
perl-5.12.4
perl-5.10.1
i perl-5.8.9
perl-5.6.2
perl5.005_04
perl5.004_05
perl5.003_07
$ perlbrew -v install perl-5.6.2
[...]
Failed 6 test scripts out of 353, 98.30% okay.
[...]
u=0.22 s=0.17 cu=8.02 cs=2.68 scripts=353 tests=13096
make: *** [test] Error 1
Installed /home/floflooo/perl5/perlbrew/build/perl-5.6.2 as perl-5.6.2
successfully. Run the following command to switch to it.
perlbrew switch perl-5.6.2
# Still no luck with an available version of perl. Note that without
verbose mode, perlbrew detects that something went wrong
$ perlbrew install perl-5.6.2
Installing /home/floflooo/perl5/perlbrew/build/perl-5.6.2 into
~/perl5/perlbrew/perls/perl-5.6.2
This could take a while. You can run the following command on another
shell to track the status:
tail -f ~/perl5/perlbrew/build.log
Installing /home/floflooo/perl5/perlbrew/build/perl-5.6.2 failed. See
/home/floflooo/perl5/perlbrew/build.log to see why.
If you want to force install the distribution, try:
perlbrew --force install perl-5.6.2
So, here are a few things that could be improved:
1/ 'perlbrew available' is a bit confusing. From the documentation, it
is the list of perl available on CPAN, but not all perls ever released.
Where are the perls not listed that seem to be installable coming from?
If other perls are available, it would be worth it to list them here.
2/ Better detection of cases when the desired perl was not installed
properly when installing with the verbose option.
3/ Have an error message when trying to switch to a perl version that is
not installed (or failed to install succesfully).
Thanks for the hard work and looking forward to seeing how newer
releases of perlbrew evolve.
Florent