CPANPLUS::Dist - base class for plugins
- my $dist = CPANPLUS::Dist::YOUR_DIST_TYPE_HERE->new(
- module => $modobj,
- );
CPANPLUS::Dist
is a base class for CPANPLUS::Dist::MM
and CPANPLUS::Dist::Build
. Developers of other CPANPLUS::Dist::*
plugins should look at CPANPLUS::Dist::Base
.
Returns the CPANPLUS::Module
object that parented this object.
Returns the Object::Accessor
object that keeps the status for
this module.
All accessors can be accessed as follows: $deb->status->ACCESSOR
Boolean indicating whether the dist was created successfully.
Explicitly set to 0
when failed, so a value of undef
may be
interpreted as not yet attempted
.
Boolean indicating whether the dist was installed successfully.
Explicitly set to 0
when failed, so a value of undef
may be
interpreted as not yet attempted
.
Boolean indicating whether the dist was uninstalled successfully.
Explicitly set to 0
when failed, so a value of undef
may be
interpreted as not yet attempted
.
The location of the final distribution. This may be a file or directory, depending on how your distribution plug in of choice works. This will be set upon a successful create.
Create a new CPANPLUS::Dist::YOUR_DIST_TYPE_HERE
object based on the
provided MODOBJ
.
*** DEPRECATED ***
The optional argument format
is used to indicate what type of dist
you would like to create (like CPANPLUS::Dist::MM
or
CPANPLUS::Dist::Build
and so on ).
CPANPLUS::Dist->new
is exclusively meant as a method to be
inherited by CPANPLUS::Dist::MM|Build
.
Returns a CPANPLUS::Dist::YOUR_DIST_TYPE_HERE
object on success
and false on failure.
Returns a list of the CPANPLUS::Dist::* classes available
Rescans @INC
for available dist types. Useful if you've installed new
CPANPLUS::Dist::*
classes and want to make them available to the
current process.
Returns true if distribution type $type
is loaded/supported.
Returns true if this prereq is satisfied. Returns false if it's not. Also issues an error if it seems "unsatisfiable," i.e. if it can't be found on CPAN or the latest CPAN version doesn't satisfy it.
Reads the configure_requires for this distribution from the META.yml or META.json file in the root directory and returns a hashref with module names and versions required.
Makes sure prerequisites are resolved
- format The dist class to use to make the prereqs
- (ie. CPANPLUS::Dist::MM)
- prereqs Hash of the prerequisite modules and their versions
- target What to do with the prereqs.
- create => Just build them
- install => Install them
- ignore => Ignore them
- prereq_build If true, always build the prereqs even if already
- resolved
- verbose Be verbose
- force Force the prereq to be built, even if already resolved