Devel-IPerl-Plugin-Perlbrew

interact with perlbrew in Jupyter IPerl kernel


Keywords
iperl, jupyter, jupyterhub, perl, perlbrew
License
Artistic-2.0

Documentation

NAME

Devel::IPerl::Plugin::Perlbrew - interact with perlbrew in Jupyter IPerl kernel

DESCRIPTION

Sometime analysis requires ...

perlbrew lib create perl-5.26.0@reproducible
perlbrew use perl-5.26.0@reproducible
## assuming a cpanfile
cpanm --installdeps .

SYNOPSIS

IPerl->load_plugin('Perlbrew') unless IPerl->can('perlbrew');
IPerl->perlbrew_list();
IPerl->perlbrew_list_modules();

IPerl->perlbrew('perl-5.26.0@reproducible');

IPerl Interface Method

register

Called by IPerl->load_plugin('Perlbrew').

REGISTERED METHODS

perlbrew

IPerl->perlbrew('perl-5.26.0@reproducible');

perlbrew_list

IPerl->perlbrew_list;

This is identical to perlbrew list and will output the same information.

perlbrew_list_modules

IPerl->perlbrew_list_modules;

This is identical to perlbrew list_modules and will output the same information.

ENVIRONMENT VARIABLES

The following environment variables alter the behaviour of the plugin.

IPERL_PLUGIN_PERLBREW_DEBUG

A logical to control how verbose the plugin is during its activities.

IPERL_PLUGIN_PERLBREW_CLASS

This defaults to App::prelbrew

INTERNAL INTERFACES

These are part of the internal interface and not designed for end user consumption.

brew

$plugin->brew;

Use the perlbrew library specified in "name".

env

$plugin->env({PERLBREW_ROOT => '/sw/perlbrew', ...});
# {PERLBREW_ROOT => '/sw/perlbrew', ...}
$plugin->env;

An accessor that stores the environment from App::perlbrew for a subsequent call to "brew".

new

my $plugin = Devel::IPerl::Plugin::Perlbrew->new();

Instantiate an object.

name

$plugin->name('perl-5.26.0@reproducible');
# perl-5.26.0@reproducible
$plugin->name;

An accessor for the name of the perlbrew library.

saved

$plugin->saved;

An accessor for the previous environment variables so they may be restored as the "brew" "spoil"s.

spoil

$plugin->spoil;

When a "brew" is finished with. This is called automatically during object destruction.

success

$plugin->success;

Was everything a success?