Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

module::starter::plugin(3pm) [debian man page]

Module::Starter::Plugin(3pm)				User Contributed Perl Documentation			      Module::Starter::Plugin(3pm)

NAME
Module::Starter::Plugin -- how Module::Starter plugins work DESCRIPTION
This document is a guide to writing plugins for Module::Starter. Currently, as is evident, it isn't very comprehensive. It should provide enough information for writing effective plugins, though. After all, Module::Starter's guts are nice and simple. "Module::Starter->import" Module::Starter provides an import method, the arguments to which are plugins, in the order in which they should be loaded. If no plugins are given, Module::Starter::Simple (and only Module::Starter::Simple) is loaded. By default, the given modules are required and arranged in an is-a chain. That is, Module::Starter subclasses the last plugin given, which subclasses the second-to-last, up to the first plugin given, which is the base class. If a plugin provides a "load_plugins" method, however, the remaining plugins to be loaded are passed to that method, which is responsible for loading the rest of the plugins. This architecture suggests two kinds of plugins: engine plugins An engine is a plugin that stands alone, implementing the public "create_distro" method and all the functionality required to carry out that implementation. The only engine included with Module::Starter is Module::Starter::Simple, and I'm not sure any more will be seen in the wild any time soon. plain old plugins Other plugins are designed to subclass an engine and alter its behavior, just as a normal subclass alters its parent class's. These plugins may add features to Module::Starter engines, or may just provide general APIs for other plugins to exploit (like Module::Starter::Plugin::Template.) The template plugin is a simple example of a plugin that alters an engine to accept further plugins. Other plugins like template will probably be written in the near future, and plugins that exploit the API provided by Module::Starter::Plugin::Template will be available on the CPAN. AUTHOR
Ricardo SIGNES "<rjbs at cpan.org>" COPYRIGHT
Copyright 2005, Ricardo SIGNES. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.12.4 2010-05-28 Module::Starter::Plugin(3pm)

Check Out this Related Man Page

Module::Starter(3pm)					User Contributed Perl Documentation				      Module::Starter(3pm)

NAME
Module::Starter - a simple starter kit for any module VERSION
Version 1.58 SYNOPSIS
Nothing in here is meant for public consumption. Use module-starter from the command line. module-starter --module=Foo::Bar,Foo::Bat --author="Andy Lester" --email=andy@petdance.com DESCRIPTION
This is the core module for Module::Starter. If you're not looking to extend or alter the behavior of this module, you probably want to look at module-starter instead. Module::Starter is used to create a skeletal CPAN distribution, including basic builder scripts, tests, documentation, and module code. This is done through just one method, "create_distro". METHODS
Module::Starter->create_distro(%args) "create_distro" is the only method you should need to use from outside this module; all the other methods are called internally by this one. This method creates orchestrates all the work; it creates distribution and populates it with the all the requires files. It takes a hash of params, as follows: distro => $distroname, # distribution name (defaults to first module) modules => [ module names ], # modules to create in distro dir => $dirname, # directory in which to build distro builder => 'Module::Build', # defaults to ExtUtils::MakeMaker # or specify more than one builder in an # arrayref license => $license, # type of license; defaults to 'perl' author => $author, # author's full name (required) email => $email, # author's email address (required) ignores_type => $type, # ignores file type ('generic', 'cvs', 'git', 'manifest' ) verbose => $verbose, # bool: print progress messages; defaults to 0 force => $force # bool: overwrite existing files; defaults to 0 The ignores_type is a new feature that allows one to create SCM-specific ignore files. These are the mappings: ignores_type => 'generic' # default, creates 'ignore.txt' ignores_type => 'cvs' # creates .cvsignore ignores_type => 'git' # creates .gitignore ignores_type => 'manifest' # creates MANIFEST.SKIP It is also possible to provide an array ref with multiple types wanted: ignores_type => [ 'git', 'manifest' ] PLUGINS
Module::Starter itself doesn't actually do anything. It must load plugins that implement "create_distro" and other methods. This is done by the class's "import" routine, which accepts a list of plugins to be loaded, in order. For more information, refer to Module::Starter::Plugin. AUTHORS
Sawyer X, "<xsawyerx at cpan.org>" Andy Lester, "<petdance at cpan.org>" Ricardo Signes, "<rjbs at cpan.org>" C.J. Adams-Collier, "<cjac at colliertech.org>" SUPPORT
You can find documentation for this module with the perldoc command. perldoc Module::Starter You can also look for information at: o Source code at Google Code http://code.google.com/p/module-starter/ <http://code.google.com/p/module-starter/> o AnnoCPAN: Annotated CPAN documentation http://annocpan.org/dist/Module-Starter <http://annocpan.org/dist/Module-Starter> o CPAN Ratings http://cpanratings.perl.org/d/Module-Starter <http://cpanratings.perl.org/d/Module-Starter> o RT: CPAN's request tracker http://rt.cpan.org/NoAuth/Bugs.html?Dist=Module-Starter <http://rt.cpan.org/NoAuth/Bugs.html?Dist=Module-Starter> o Search CPAN http://search.cpan.org/dist/Module-Starter <http://search.cpan.org/dist/Module-Starter> BUGS
Please report any bugs or feature requests to "bug-module-starter at rt.cpan.org", or through the web interface at <http://rt.cpan.org>. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. COPYRIGHT
Copyright 2005-2009 Andy Lester, Ricardo Signes and C.J. Adams-Collier, All Rights Reserved. Copyright 2010 Sawyer X, All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.12.4 2011-07-02 Module::Starter(3pm)
Man Page