-
Notifications
You must be signed in to change notification settings - Fork 216
Release 0.22
The 0.22 release features these major changes:
- Fix ccache support on Linux
- To compile perl with ccache,
perlbrew install -Dcc=ccache\ gcc' -Dld=gcc perl-5.14.0
- To compile perl with ccache,
- Better installation management
- Fix:
install
command no longer clobber existing installations. - New command: uninstall
- New command: alias
- Fix:
- New command: self-upgrade
The install
command used to clobber existing perl installations without noticing users, now it does not. perlbrew simply stops the installation process when it detects any naming collision. If it is intended to reinstall with the exact same name, you need to explicitly uninstall the old one first.
Yes, finally the uninstall
command is here, to remove the specified perl installation.
perlbrew uninstall perl-5.10.1
Also a mechanism to make aliases is introduced. Which provides a better non-interactive usage.
Let's say you have both perl-5.12.3 and perl-5.14.0 installed, and want to migrate all your programs to use perl-5.14.0 eventually. Previously, you need to put the exact path to perl-5.12.3 in the shebang, like:
#!/Users/gugod/perl5/perlbrew/perls/perl-5.12.3/bin/perl
To migrate your programs to perl-5.14.0, you need to replace that line to
#!/Users/gugod/perl5/perlbrew/perls/perl-5.14.0/bin/perl
Which might not be a big issue, until you have to do that for tens, or hundreds of programs.
The solution to this scenario, is to use alias. First create an alias for perl-5.12.3, here the name of choice is "stable":
perlbrew alias create perl-5.12.3 stable
And the shebang for the "stable" perl is just:
#!/Users/gugod/perl5/perlbrew/perls/stable/bin/perl
Under the hood it is just a symlink that does the trick. Once you need to fullly migrate to perl-5.14.0, just upgrade the symlink with:
perlbrew alias delete stable
perlbrew alias create perl-5.14.0 stable
Or alternatively, do a force create to override the existing alias
perlbrew alias -f create perl-5.14.0 stable
No need to change shebang of programs anymore.
perlbrew used to have a special symlink named current
to keep what's the default perl for users. This current
symlink is no longer special. You may still create an alias named "current" if you need to.
A self-upgrade
command is also introduced for easier upgrading. It essentially just run this line:
curl -L http://xrl.us/perlbrewinstall | bash
However, if the perlbrew executable is installed with CPAN, this command does not do anything at all, but just showing a message telling that it cannot be auto-upgraded. If your perlbrew is installed with CPAN, you need to upgrade it with CPAN.