use strict;
use warnings;
use MetaCPAN::Client;
use Ref::Util qw< is_arrayref >;
my $mcpan = MetaCPAN::Client->new;
my $all_authors = $mcpan->all('authors');
AUTHOR: while ( my $author = $all_authors->next ) {
BLOG: for my $blog ( @{ $author->blog || [] } ) {
$blog and exists $blog->{url} or next BLOG;
my $url = $blog->{url};
my $blogs_csv = is_arrayref($url)
? join q{,} => @$url
: $url;
printf "%-10s: %s\n", $author->pauseid, $blogs_csv;
}
}