Kent Fredric > Dist-Zilla-Plugin-MetaProvides-Package-2.001002 > Dist::Zilla::Plugin::MetaProvides::Package

Download:
Dist-Zilla-Plugin-MetaProvides-Package-2.001002.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Module Version: 2.001002   Source  

NAME ^

Dist::Zilla::Plugin::MetaProvides::Package - Extract namespaces/version from traditional packages for provides

VERSION ^

version 2.001002

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

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?

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.

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.

SEE ALSO ^

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.

syntax highlighting: