App-Rakubrew
view release on metacpan or search on metacpan
lib/App/Rakubrew.pm view on Meta::CPAN
}
}
else {
my $version = shift @args;
if ($version ne '--unset') {
verify_version($version);
}
}
} elsif ($arg eq 'local') {
validate_brew_mode();
if (!@args) {
my $version = get_local_version();
if ($version) {
say $version;
}
else {
say "$brew_name: no local version configured for this directory";
}
}
else {
lib/App/Rakubrew.pm view on Meta::CPAN
set_local_version(shift);
});
}
}
} elsif ($arg eq 'nuke' || $arg eq 'unregister') {
my $version = shift @args;
$self->nuke($version);
} elsif ($arg eq 'rehash') {
validate_brew_mode();
rehash();
} elsif ($arg eq 'list-available' || $arg eq 'available') {
my ($cur_backend, $cur_rakudo) = split '-', (get_version() // ''), 2;
$cur_backend //= '';
$cur_rakudo //= '';
my @downloadables = App::Rakubrew::Download::available_precomp_archives();
say "Available Rakudo versions:";
map {
lib/App/Rakubrew/VersionHandling.pm view on Meta::CPAN
get_versions
get_version
version_exists
verify_version
is_version_broken is_version_path_broken
is_registered_version
get_version_path clean_version_path
get_shell_version
get_local_version set_local_version
get_global_version set_global_version
set_brew_mode get_brew_mode get_brew_mode_shell validate_brew_mode
get_raku
which whence
get_bin_paths
rehash
);
use strict;
use warnings;
use 5.010;
use Encode::Locale qw(env);
lib/App/Rakubrew/VersionHandling.pm view on Meta::CPAN
if ($mode ne 'env' && $mode ne 'shim') {
say STDERR 'Invalid mode found: ' . $mode unless $silent;
say STDERR 'Resetting to env-mode' unless $silent;
set_brew_mode('env');
$mode = 'env';
}
return $mode;
}
sub validate_brew_mode {
if (get_brew_mode() eq 'env') {
say STDERR "This command is not available in 'env' mode. Switch to to 'shim' mode using '$brew_name mode shim'";
exit 1;
}
}
sub version_exists {
my $version = shift;
return undef if !defined $version;
my %versionsMap = map { $_ => 1 } get_versions();
( run in 0.407 second using v1.01-cache-2.11-cpan-4d50c553e7e )