Skip to content
something that will interact with MetaCPAN's API
Perl Perl6
Find file
Latest commit e6018cb Apr 7, 2015 @SineSwiper Merge pull request #3 from leejo/leejo/increase_test_coverage
Increase test coverage
Failed to load latest commit information.
lib/Dist/Zilla/Role provide fallback for POSIX::PATH_MAX for platforms without it Feb 20, 2014
t increase test coverage Mar 1, 2015
.gitignore Initial commit Jul 19, 2012
.mailmap DZIL cleanup Feb 27, 2014
.travis.yml
README.pod Release v0.97 Feb 27, 2014
dist.ini DZIL cleanup Feb 27, 2014

README.pod

NAME

Dist::Zilla::Role::MetaCPANInterfacer - something that will interact with MetaCPAN's API

SYNOPSIS

    # in your plugin/etc. code
    with 'Dist::Zilla::Role::MetaCPANInterfacer';
 
    my $obj = $self->mcpan->fetch(...);

DESCRIPTION

This role is simply gives you a MetaCPAN::API object to use with caching, so that other plugins can share that cache. It uses the awesome example provided in the "SYNOPSIS" in MetaCPAN::API, contributed by Kent Fredric.

ATTRIBUTES

All of these attributes are f'ing lazy, because they like to sit around the house. They are also read-write, as this is a role, and you might want to change around the defaults.

mcpan

  • Type: A MetaCPAN::API object
  • Default: A new object, using mcpan_ua as the Tiny user agent

mcpan_ua

  • Type: A HTTP::Tiny compatible user agent
  • Default: A new HTTP::Tiny::Mech object, using mcpan_mechua as the Mechanized user agent

mcpan_mechua

mcpan_cache

  • Type: A caching object
  • Default: A new CHI object, using the CHI::Driver::File driver pointing to ~/.dzil/.webcache

TODO

The caching stuff could potentially be split, but frankly, none of the existing plugins really need caching all that much. I've at least called the .webcache directory a generic name, so feel free to re-use it.

(Honestly, the only reason why this is a DZ module IS the caching directory name...)

SEE ALSO

Dist::Zilla::PluginBundle::Prereqs, which uses this quite a bit.

AVAILABILITY

The project homepage is https://github.com/SineSwiper/Dist-Zilla-Role-MetaCPANInterfacer.

The latest version of this module is available from the Comprehensive Perl Archive Network (CPAN). Visit http://www.perl.com/CPAN/ to find a CPAN site near you, or see https://metacpan.org/module/Dist::Zilla::Role::MetaCPANInterfacer/.

SUPPORT

Internet Relay Chat

You can get live help by using IRC ( Internet Relay Chat ). If you don't know what IRC is, please read this excellent guide: http://en.wikipedia.org/wiki/Internet_Relay_Chat. Please be courteous and patient when talking to us, as we might be busy or sleeping! You can join those networks/channels and get help:

  • irc.perl.org

    You can connect to the server at 'irc.perl.org' and talk to this person for help: SineSwiper.

Bugs / Feature Requests

Please report any bugs or feature requests via https://github.com/SineSwiper/Dist-Zilla-Role-MetaCPANInterfacer/issues.

AUTHOR

Brendan Byrd <BBYRD@CPAN.org>

CONTRIBUTOR

Christian Walde <walde.christian@googlemail.com>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2014 by Brendan Byrd.

This is free software, licensed under:

  The Artistic License 2.0 (GPL Compatible)
Something went wrong with that request. Please try again.