NAME
Dist::Zilla::Plugin::MetaProvides::Package - Extract namespaces/version
from traditional packages for provides
VERSION
version 2.001003
SYNOPSIS
In your dist.ini:
[MetaProvides::Package]
inherit_version = 0 ; optional
inherit_missing = 0 ; optional
meta_noindex = 1 ; optional
QUICK REFERENCE
->new(options={})
finder => ?attr
A>finder # ArrayRef[Str]
->dumpconfig # HashRef
->has_finder # via finder
->mvp_multivalue_args # List
->provides
A>_finder_objects # ArrayRef[FileFinder]
A>_package_blacklist # HashRef[Str]
->_blacklist_contains # via _package_blacklist ( exists )
->_build_finder_objects # for _finder_objects
->_found_files # ArrayRef[ File ]
->_packages_for(options=[]) # List[Record]
0 => $filename
1 => $content
2 => $encoding
->_vivify_installmodules_pm_finder # Plugin
-~- Dist::Zilla::Role::MetaProvider::Provider
->new(options={})
inherit_version => ?attr
inherit_missing => ?attr
meta_noindex => ?attr
[>] provides
A>inherit_missing # Bool = 1
A>inherit_version # Bool = 1
A>meta_noindex # Bool = 1
->dumpconfig # HashRef
->metadata # { provides => ... }
->_apply_meta_noindex(options=[]) # Modified @items
0..$# => @items
->_resolve_version(options=[]) # ( 'version' , $resolved )
0 => $version # ()
# ()
->_try_regen_meta # HashRef
-~- Dist::Zilla::Role::MetaProvider
[>] metadata
-~- Dist::Zilla::Role::Plugin
->new(options={})
plugin_name => ^attr
zilla => ^attr
logger => ?attr
A>logger #
A>plugin_name # Str
A>zilla # DZil
->log # via logger
->log_debug # via logger
->log_fatal # via logger
->mvp_multivalue_args # ArrayRef
->mvp_aliases # HashRef
->plugin_from_config(options=[]) # Instance
0 => $name
1 => $arg
2 => $section
->register_component(options=[])
0 => $name
1 => $arg
2 => $section
CONSUMED ROLES
Dist::Zilla::Role::MetaProvider::Provider
ROLE SATISFYING METHODS
provides
A conformant function to the Dist::Zilla::Role::MetaProvider::Provider
Role.
signature: $plugin->provides()
returns: Array of Dist::Zilla::MetaProvides::ProvideRecord
ATTRIBUTES
finder
This attribute, if specified will
* Override the FileFinder used to find files containing packages
* Inhibit autovivification of the .pm file finder
This parameter may be specified multiple times to aggregate a list of
finders
PRIVATE ATTRIBUTES
_package_blacklist
_finder_objects
PRIVATE METHODS
_packages_for
signature: $plugin->_packages_for( $filename, $file_content )
returns: Array of Dist::Zilla::MetaProvides::ProvideRecord
_vivify_installmodules_pm_finder
_build_finder_objects
_found_files
OPTIONS INHERITED FROM Dist::Zilla::Role::MetaProvider::Provider
inherit_version
How do you want existing versions ( Versions hard-coded into files
before running this plug-in )to be processed?
* DEFAULT: inherit_version = 1
Ignore anything you find in a file, and just probe DZIL->version()
for a value. This is a sane default and most will want this.
* inherit_version = 0
Use this option if you actually want to use hard-coded values in your
files and use the versions parsed out of them.
inherit_missing
In the event you are using the aforementioned "inherit_version" = 0,
this determines how to behave when encountering a module with no
version defined.
* DEFAULT: inherit_missing = 1
When a module has no version, probe DZIL->version() for an answer.
This is what you want if you want to have some files with fixed
versions, and others to just automatically be maintained by
Dist::Zilla.
* inherit_missing = 0
When a module has no version, emit a versionless record in the final
metadata.
meta_noindex
This is a utility for people who are also using MetaNoIndex, so that
its settings can be used to eliminate items from the 'provides' list.
* meta_noindex = 0
By default, do nothing unusual.
* DEFAULT: meta_noindex = 1
When a module meets the criteria provided to MetaNoIndex, eliminate
it from the metadata shipped to Dist::Zilla
SEE ALSO
* Dist::Zilla::Plugin::MetaProvides
AUTHOR
Kent Fredric <kentnl@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2014 by Kent Fredric
<kentfredric@gmail.com>.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.