The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Module::Install::ProvidesClass - provides detection in META.yml for 'class' keyword

SYNOPSIS

 use inc::Module::Install 0.79;

 all_from 'lib/My/Module/Which/Uses/MooseXDeclare';

 auto_provides_class;
 WriteAll;

DESCRIPTION

This class is designed to populate the provides field of META.yml files so that the CPAN indexer will pay attention to the existance of your classes, rather than blithely ignoring them. It does this for Module::Install based Makefile.PL files. If you use Module::Build then look at Class::Discover which does all the effort of searching for the classes.

USAGE.

Simply add the following lines to your Makefile.PL before the WriteAll;:

 auto_provides_class;

Its that simple. By default we look for 'class' and 'role' keywords. If you are using something that provides packages using a different keyword, such as CatalystX::Declare then you can pass a list of keywords to look for to auto_provides_class:

 auto_provides_class(qw/
   class
   role
   application
   controller
   controller_role
   view
   model
 /);

Make sure you include 'class' and 'role' if you are still using them.

The version parsing is basically the same as what M::I's ->version_form does, so should hopefully work as well as it does.

This module attempts to be author side only, hopefully it does it correctly, but Module::Install is scary at times.

SEE ALSO

MooseX::Declare for the main reason for this module to exist.

Class::Discover for the version extraction logic.

AUTHOR

Copyright (C) Ash Berlin <ash@cpan.org>, 2009-2010.

LICENSE

Licensed under the same terms as Perl itself.