NAME
My::Module::Meta - Information needed to build Astro::SpaceTrack
SYNOPSIS
use lib qw{ inc };
use My::Module::Meta;
my $meta = My::Module::Meta->new();
use JSON;
print "Required modules:\n", to_json(
$meta->requires(), { pretty => 1 } );
DETAILS
This module centralizes information needed to build App::Satpass2. It is private to the App::Satpass2 package, and may be changed or retracted without notice.
METHODS
This class supports the following public methods:
new
use lib qw{ inc };
my $meta = My::Module::Meta->new();
This method instantiates the class.
abstract
This method returns the distribution's abstract.
add_to_cleanup
This method returns a reference to an array of files to be added to the cleanup.
author
This method returns the name of the distribution author
build_requires
use JSON;
print to_json( $meta->build_requires(), { pretty => 1 } );
This method computes and returns a reference to a hash describing the modules required to build the Astro::Coord::ECI package, suitable for use in a Build.PL build_requires key, or a Makefile.PL {META_MERGE}->{build_requires} key.
configure_requires
use YAML;
print Dump( $meta->configure_requires() );
This method returns a reference to a hash describing the modules required to configure the package, suitable for use in a Build.PL configure_requires key, or a Makefile.PL {META_MERGE}->{configure_requires} or CONFIGURE_REQUIRES key.
dist_name
This method returns the distribution name.
distribution
if ( $meta->distribution() ) {
print "Making distribution\n";
} else {
print "Not making distribution\n";
}
This method returns the value of the environment variable MAKING_MODULE_DISTRIBUTION at the time the object was instantiated.
license
This method returns the distribution's license.
meta_merge
use YAML;
print Dump( $meta->meta_merge() );
This method returns a reference to a hash describing the meta-data which has to be provided by making use of the builder's meta_merge functionality. This includes the dynamic_config and resources data.
Any arguments will be appended to the generated array.
module_name
This method returns the name of the module the distribution is based on.
no_index
This method returns the names of things which are not to be indexed by CPAN.
notice
my @exes = $meta->notice( \%opt );
This method prints a notice before building. It returns a list of executables to build.
The argument is the options hash returned by the build system.
provides
use YAML;
print Dump( [ $meta->provides() ] );
This method attempts to load Module::Metadata. If this succeeds, it returns a provides entry suitable for inclusion in meta_merge() data (i.e. 'provides' followed by a hash reference). If it can not load the required module, it returns nothing.
requires
use JSON;
print to_json( $meta->requires(), { pretty => 1 } );
This method computes and returns a reference to a hash describing the modules required to run the App::Satpass2 package, suitable for use in a Build.PL requires key, or a Makefile.PL PREREQ_PM key. Any additional arguments will be appended to the generated hash. In addition, unless distribution() is true, configuration-specific modules may be added.
requires_perl
print 'This package requires Perl ', $meta->requires_perl(), "\n";
This method returns the version of Perl required by the package.
script_files
This method returns a reference to an array containing the names of script files provided by this distribution. This array may be empty.
version_from
This method returns the name of the distribution file from which the distribution's version is to be derived.
ATTRIBUTES
This class has no public attributes.
ENVIRONMENT
MAKING_MODULE_DISTRIBUTION
This environment variable should be set to a true value if you are making a distribution. This ensures that no configuration-specific information makes it into META.yml.
SUPPORT
Support is by the author. Please file bug reports at https://rt.cpan.org/Public/Dist/Display.html?Name=Astro-SpaceTrack, https://github.com/trwyant/perl-Astro-SpaceTrack/issues/, or in electronic mail to the author.
AUTHOR
Thomas R. Wyant, III wyant at cpan dot org
COPYRIGHT AND LICENSE
Copyright (C) 2010-2026 by Thomas R. Wyant, III
This program is free software; you can redistribute it and/or modify it under the same terms as Perl 5.10.0. For more details, see the full text of the licenses in the files LICENSE-Artistic and LICENSE-GPL.
This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.