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
* Type: A WWW::Mechanize compatible user agent
* Default: A new WWW::Mechanize::Cached::GZip object, using
"mcpan_cache" as the cache attribute, and some UA string changes.
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 <
[email protected]>
CONTRIBUTOR
Christian Walde <
[email protected]>
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)