Catmandu
view release on metacpan or search on metacpan
"Any::URI::Escape" => 0,
"App::Cmd" => "0.33",
"CGI::Expand" => "2.02",
"Class::Method::Modifiers" => 0,
"Clone" => "0.31",
"Config::Onion" => "1.004",
"Cpanel::JSON::XS" => "3.0213",
"Data::Compare" => "1.22",
"Data::Util" => "0.66",
"Getopt::Long" => 0,
"HTTP::Request" => 0,
"Hash::Merge::Simple" => 0,
"IO::Handle::Util" => "0.01",
"LWP::UserAgent" => 0,
"List::SomeUtils" => "0.59",
"Log::Any" => 0,
"Log::Any::Adapter" => 0,
"MIME::Types" => 0,
"Module::Build" => "0.4229",
"Module::Info" => 0,
"Moo" => "1.004006",
"Any::URI::Escape" : "0",
"App::Cmd" : "0.33",
"CGI::Expand" : "2.02",
"Class::Method::Modifiers" : "0",
"Clone" : "0.31",
"Config::Onion" : "1.004",
"Cpanel::JSON::XS" : "3.0213",
"Data::Compare" : "1.22",
"Data::Util" : "0.66",
"Getopt::Long" : "0",
"HTTP::Request" : "0",
"Hash::Merge::Simple" : "0",
"IO::Handle::Util" : "0.01",
"LWP::UserAgent" : "0",
"List::SomeUtils" : "0.59",
"Log::Any" : "0",
"Log::Any::Adapter" : "0",
"MIME::Types" : "0",
"Module::Build" : "0.4229",
"Module::Info" : "0",
"Moo" : "1.004006",
Any::URI::Escape: '0'
App::Cmd: '0.33'
CGI::Expand: '2.02'
Class::Method::Modifiers: '0'
Clone: '0.31'
Config::Onion: '1.004'
Cpanel::JSON::XS: '3.0213'
Data::Compare: '1.22'
Data::Util: '0.66'
Getopt::Long: '0'
HTTP::Request: '0'
Hash::Merge::Simple: '0'
IO::Handle::Util: '0.01'
LWP::UserAgent: '0'
List::SomeUtils: '0.59'
Log::Any: '0'
Log::Any::Adapter: '0'
MIME::Types: '0'
Module::Build: '0.4229'
Module::Info: '0'
Moo: '1.004006'
requires 'Any::URI::Escape', 0;
requires 'App::Cmd', '0.33';
requires 'Getopt::Long', 0;
requires 'CGI::Expand', '2.02';
requires 'Class::Method::Modifiers', 0;
requires 'Clone', '0.31';
requires 'Config::Onion', '1.004';
requires 'Cpanel::JSON::XS', '3.0213';
requires 'Data::Compare', '1.22';
requires 'Data::Util', '0.66';
requires 'HTTP::Request', 0;
requires 'Hash::Merge::Simple', 0;
requires 'IO::Handle::Util', '0.01';
requires 'LWP::UserAgent', 0;
requires 'List::SomeUtils', '0.59';
requires 'Log::Any', 0;
requires 'Log::Any::Adapter', 0;
requires 'MIME::Types',0;
requires 'Module::Build', '>=0.4229'; # travis ci
requires 'Module::Info', 0;
requires 'Moo', '>=1.004006';
lib/Catmandu/Importer.pm view on Meta::CPAN
package Catmandu::Importer;
use Catmandu::Sane;
our $VERSION = '1.2025';
use Catmandu::Util qw(io is_value is_string is_array_ref is_hash_ref);
use Catmandu::Util::Path qw(as_path);
use LWP::UserAgent;
use HTTP::Request ();
use URI ();
use URI::Template ();
use Moo::Role;
use namespace::clean;
with 'Catmandu::Logger';
with 'Catmandu::Iterable';
with 'Catmandu::IterableOnce';
with 'Catmandu::Fixable';
with 'Catmandu::Serializer';
lib/Catmandu/Importer.pm view on Meta::CPAN
$ua->protocols_allowed([qw(http https)]);
$ua->env_proxy;
$ua;
}
sub _http_request {
my ($self, $method, $url, $headers, $body, $timing_tries) = @_;
my $client = $self->_http_client;
my $req = HTTP::Request->new($method, $url, $headers || []);
$req->content($body) if defined $body;
my $res = $client->request($req);
if ($res->code =~ /^408|500|502|503|504$/ && $timing_tries) {
my @tries = @$timing_tries;
while (my $sleep = shift @tries) {
sleep $sleep;
$res = $client->request($req->clone);
last if $res->code !~ /^408|500|502|503|504$/;
( run in 0.664 second using v1.01-cache-2.11-cpan-de7293f3b23 )