view release on metacpan or search on metacpan
"Mastodon::Client" : "0",
"Moose" : "0",
"Moose::Role" : "0",
"MooseX::NonMoose" : "0",
"MooseX::Role::Parameterized" : "0",
"Net::Async::HTTP" : "0.43",
"POE" : "0",
"Twitter::API" : "0",
"URI" : "0",
"URI::Escape" : "0",
"namespace::autoclean" : "0",
"open" : "0",
"perl" : "5.014",
"utf8" : "0"
}
},
"test" : {
"requires" : {
"File::Spec" : "0",
"FindBin" : "0",
"IO::Handle" : "0",
Mastodon::Client: '0'
Moose: '0'
Moose::Role: '0'
MooseX::NonMoose: '0'
MooseX::Role::Parameterized: '0'
Net::Async::HTTP: '0.43'
POE: '0'
Twitter::API: '0'
URI: '0'
URI::Escape: '0'
namespace::autoclean: '0'
open: '0'
perl: '5.014'
utf8: '0'
resources:
bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=App-SpreadRevolutionaryDate
homepage: http://search.cpan.org/dist/App-SpreadRevolutionaryDate/
repository: git://github.com/gibus/SpreadRevolutionaryDate.git
version: '0.50'
x_generated_by_perl: v5.32.1
x_serialization_backend: 'YAML::Tiny version 1.73'
Makefile.PL view on Meta::CPAN
"Mastodon::Client" => 0,
"Moose" => 0,
"Moose::Role" => 0,
"MooseX::NonMoose" => 0,
"MooseX::Role::Parameterized" => 0,
"Net::Async::HTTP" => "0.43",
"POE" => 0,
"Twitter::API" => 0,
"URI" => 0,
"URI::Escape" => 0,
"namespace::autoclean" => 0,
"open" => 0,
"utf8" => 0
},
"TEST_REQUIRES" => {
"File::Spec" => 0,
"FindBin" => 0,
"IO::Handle" => 0,
"IPC::Open3" => 0,
"Test::More" => 0,
"Test::NoWarnings" => 0,
lib/App/SpreadRevolutionaryDate/BlueskyLite.pm view on Meta::CPAN
# ABSTRACT: Simple Class to post status to BlueSky.
use LWP::UserAgent;
use DateTime;
use JSON qw(encode_json decode_json);
use URI;
use Encode qw(decode_utf8);
use File::Type;
use File::Basename;
use namespace::autoclean;
sub _fetch_embed_url_card {
my $self = shift;
my $url = shift || return;
my $card = {uri => $url};
my $ua = LWP::UserAgent->new(env_proxy => 1, timeout => 10, agent =>'App::SpreadRevolutionaryDate bot');
my $response = $ua->get($url);
return unless $response->is_success;
lib/App/SpreadRevolutionaryDate/Config.pm view on Meta::CPAN
use MooseX::NonMoose;
extends 'AppConfig';
use Getopt::Long;
use AppConfig qw(:argcount);
use File::HomeDir;
use Class::Load ':all';
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
BEGIN {
unless ($ENV{PERL_UNICODE} && $ENV{PERL_UNICODE} =~ /A/) {
use Encode qw(decode_utf8);
@ARGV = map { decode_utf8($_, 1) } @ARGV;
}
}
sub new {
lib/App/SpreadRevolutionaryDate/MsgMaker.pm view on Meta::CPAN
use utf8;
package App::SpreadRevolutionaryDate::MsgMaker;
$App::SpreadRevolutionaryDate::MsgMaker::VERSION = '0.50';
# ABSTRACT: Role providing interface for crafting a message to be spread by L<App::SpreadRevolutionaryDate>.
use Moose::Role;
use Locale::Util qw(set_locale);
use Locale::Messages qw(LC_ALL nl_putenv);
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has locale => (
is => 'ro',
isa => 'Str',
required => 1,
default => 'en',
trigger => sub {
# Set locale to $val, see https://metacpan.org/pod/Locale::TextDomain::FAQ#How-do-I-switch-languages-or-force-a-certain-language-independently-from-user-settings-read-from-the-environment?
my ( $self, $val, $old_val ) = @_;
if ($val) {
lib/App/SpreadRevolutionaryDate/MsgMaker/Gemini.pm view on Meta::CPAN
use Moose;
with 'App::SpreadRevolutionaryDate::MsgMaker';
use DateTime;
use File::ShareDir ':ALL';
use LWP::UserAgent;
use JSON;
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has 'api_key' => (
is => 'ro',
isa => 'Str',
required => 1,
);
has 'process' => (
is => 'ro',
isa => 'Str',
lib/App/SpreadRevolutionaryDate/MsgMaker/PromptUser.pm view on Meta::CPAN
with 'App::SpreadRevolutionaryDate::MsgMaker';
use open qw(:std :encoding(UTF-8));
use IO::Prompt::Hooked;
use File::Spec;
use File::Basename;
use File::Temp qw/tempfile/;
use LWP::UserAgent;
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has 'default' => (
is => 'ro',
isa => 'Str',
required => 1,
default => 'Goodbye old world, hello revolutionary worlds',
);
has 'img_path' => (
is => 'rw',
lib/App/SpreadRevolutionaryDate/MsgMaker/RevolutionaryDate.pm view on Meta::CPAN
package App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate;
$App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::VERSION = '0.50';
# ABSTRACT: MsgMaker class for L<App::SpreadRevolutionaryDate> to build message with revolutionary date
use Moose;
with 'App::SpreadRevolutionaryDate::MsgMaker';
use App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Calendar;
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has '+locale' => (
default => 'fr',
);
has 'acab' => (
is => 'ro',
isa => 'Bool',
required => 1,
default => 0,
lib/App/SpreadRevolutionaryDate/MsgMaker/RevolutionaryDate/Calendar.pm view on Meta::CPAN
use utf8;
package App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Calendar;
$App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Calendar::VERSION = '0.50';
# ABSTRACT: Subclass overloading L<DateTime::Calendar::FrenchRevolutionary> to allow language extension
use Moose;
use MooseX::NonMoose;
extends 'DateTime::Calendar::FrenchRevolutionary';
use Class::Load ':all';
use namespace::autoclean;
sub set {
my $self = shift;
my %args = @_;
my $locale_arg = delete $args{locale};
my $locale_class;
if ($locale_arg) {
lib/App/SpreadRevolutionaryDate/MsgMaker/RevolutionaryDate/Locale.pm view on Meta::CPAN
use utf8;
package App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Locale;
$App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Locale::VERSION = '0.50';
# ABSTRACT: Role providing interface for localization of revolutionary date built by L<App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate>.
use Moose::Role;
use DateTime::Calendar::FrenchRevolutionary;
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has months => (
is => 'ro',
isa => 'ArrayRef[Str]',
required => 1,
);
has decade_days => (
is => 'ro',
isa => 'ArrayRef[Str]',
lib/App/SpreadRevolutionaryDate/MsgMaker/RevolutionaryDate/Locale/en.pm view on Meta::CPAN
use 5.014;
use utf8;
package App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Locale::en;
$App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Locale::en::VERSION = '0.50';
# ABSTRACT: English localization of (part of) L<DateTime::Calendar::FrenchRevolutionary::Locale::en>
use Moose;
with 'App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Locale';
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has '+months' => (
default => sub {[
'Vintagearious', 'Fogarious', 'Frostarious',
'Snowous', 'Rainous', 'Windous',
'Buddal', 'Floweral', 'Meadowal',
'Reapidor', 'Heatidor', 'Fruitidor',
'additional day',
]},
lib/App/SpreadRevolutionaryDate/MsgMaker/RevolutionaryDate/Locale/es.pm view on Meta::CPAN
use 5.014;
use utf8;
package App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Locale::es;
$App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Locale::es::VERSION = '0.50';
# ABSTRACT: Spanish localization of (part of) L<DateTime::Calendar::FrenchRevolutionary::Locale::fr>
use Moose;
with 'App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Locale';
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has '+months' => (
default => sub {[
'Vendemiario', 'Brumario', 'Frimario',
'Nivoso', 'Pluvioso', 'Ventoso',
'Germinal', 'Floreal', 'Pradial',
'Mesidor', 'Termidor', 'Fructidor',
'dÃa complementario',
]},
lib/App/SpreadRevolutionaryDate/MsgMaker/RevolutionaryDate/Locale/fr.pm view on Meta::CPAN
use 5.014;
use utf8;
package App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Locale::fr;
$App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Locale::fr::VERSION = '0.50';
# ABSTRACT: French localization of (part of) L<DateTime::Calendar::FrenchRevolutionary::Locale::fr>
use Moose;
with 'App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Locale';
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has '+months' => (
default => sub {[
'Vendémiaire', 'Brumaire', 'Frimaire',
'Nivôse', 'Pluviôse', 'Ventôse',
'Germinal', 'Floréal', 'Prairial',
'Messidor', 'Thermidor', 'Fructidor',
'jour complémentaire',
]},
lib/App/SpreadRevolutionaryDate/MsgMaker/RevolutionaryDate/Locale/it.pm view on Meta::CPAN
use 5.014;
use utf8;
package App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Locale::it;
$App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Locale::it::VERSION = '0.50';
# ABSTRACT: Italian localization of (part of) L<DateTime::Calendar::FrenchRevolutionary>
use Moose;
with 'App::SpreadRevolutionaryDate::MsgMaker::RevolutionaryDate::Locale';
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has '+months' => (
default => sub {[
'Vendemmiaio', 'Brumaio', 'Frimaio',
'Nevoso', 'Piovoso', 'Ventoso',
'Germile', 'Fiorile', 'Pratile',
'Messidoro', 'Termidoro', 'Fruttidoro',
'giorni supplementari',
]},
lib/App/SpreadRevolutionaryDate/MsgMaker/Telechat.pm view on Meta::CPAN
# ABSTRACT: MsgMaker class for L<App::SpreadRevolutionaryDate> to build message with Téléchat date
use Moose;
with 'App::SpreadRevolutionaryDate::MsgMaker';
use DateTime;
use File::ShareDir ':ALL';
use App::SpreadRevolutionaryDate;
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has '+locale' => (
default => 'fr',
);
around BUILDARGS => sub {
my ($orig, $class, %args) = @_;
$args{locale} = 'fr';
return $class->$orig(%args);
lib/App/SpreadRevolutionaryDate/Target.pm view on Meta::CPAN
use 5.014;
use utf8;
package App::SpreadRevolutionaryDate::Target;
$App::SpreadRevolutionaryDate::Target::VERSION = '0.50';
# ABSTRACT: Role providing interface for targets of L<App::SpreadRevolutionaryDate>.
use MooseX::Role::Parameterized;
use LWP::Protocol::https;
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
parameter worker => (
isa => 'Str',
default => 'Any',
);
role {
my $p = shift;
has obj => (
lib/App/SpreadRevolutionaryDate/Target/Bluesky.pm view on Meta::CPAN
# ABSTRACT: Target class for L<App::SpreadRevolutionaryDate> to handle spreading on Bluesky.
use Moose;
with 'App::SpreadRevolutionaryDate::Target'
=> {worker => 'App::SpreadRevolutionaryDate::BlueskyLite'};
use App::SpreadRevolutionaryDate::BlueskyLite;
use Encode qw(encode decode is_utf8);
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has 'identifier' => (
is => 'ro',
isa => 'Str',
required => 1,
);
has 'password' => (
is => 'ro',
isa => 'Str',
lib/App/SpreadRevolutionaryDate/Target/Freenode.pm view on Meta::CPAN
# ABSTRACT: Target class for L<App::SpreadRevolutionaryDate> to handle spreading on Freenode.
use Moose;
with 'App::SpreadRevolutionaryDate::Target'
=> {worker => 'App::SpreadRevolutionaryDate::Target::Freenode::Bot'};
use App::SpreadRevolutionaryDate::Target::Freenode::Bot;
use POE;
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has 'nickname' => (
is => 'ro',
isa => 'Str',
required => 1,
);
has 'password' => (
is => 'ro',
isa => 'Str',
lib/App/SpreadRevolutionaryDate/Target/Freenode/Bot.pm view on Meta::CPAN
use utf8;
package App::SpreadRevolutionaryDate::Target::Freenode::Bot;
$App::SpreadRevolutionaryDate::Target::Freenode::Bot::VERSION = '0.50';
# ABSTRACT: Subclass overloading L<Bot::BasicBot> to post a message on some Freenode channels
use Moose;
use MooseX::NonMoose;
extends 'Bot::BasicBot';
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has 'nb_said' => (
traits => ['Counter'],
is => 'rw',
isa => 'Num',
default => 0,
handles => {
inc_said => 'inc',
},
);
lib/App/SpreadRevolutionaryDate/Target/Liberachat.pm view on Meta::CPAN
# ABSTRACT: Target class for L<App::SpreadRevolutionaryDate> to handle spreading on Liberachat.
use Moose;
with 'App::SpreadRevolutionaryDate::Target'
=> {worker => 'App::SpreadRevolutionaryDate::Target::Liberachat::Bot'};
use App::SpreadRevolutionaryDate::Target::Liberachat::Bot;
use POE;
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has 'nickname' => (
is => 'ro',
isa => 'Str',
required => 1,
);
has 'password' => (
is => 'ro',
isa => 'Str',
lib/App/SpreadRevolutionaryDate/Target/Liberachat/Bot.pm view on Meta::CPAN
use utf8;
package App::SpreadRevolutionaryDate::Target::Liberachat::Bot;
$App::SpreadRevolutionaryDate::Target::Liberachat::Bot::VERSION = '0.50';
# ABSTRACT: Subclass overloading L<Bot::BasicBot> to post a message on some Liberachat channels
use Moose;
use MooseX::NonMoose;
extends 'Bot::BasicBot';
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has 'nb_said' => (
traits => ['Counter'],
is => 'rw',
isa => 'Num',
default => 0,
handles => {
inc_said => 'inc',
},
);
lib/App/SpreadRevolutionaryDate/Target/Mastodon.pm view on Meta::CPAN
use Moose;
with 'App::SpreadRevolutionaryDate::Target'
=> {worker => 'Mastodon::Client'};
use Mastodon::Client;
use Encode qw(encode decode is_utf8);
use File::Basename;
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has 'instance' => (
is => 'ro',
isa => 'Str',
required => 1,
);
has 'client_id' => (
is => 'ro',
isa => 'Str',
lib/App/SpreadRevolutionaryDate/Target/Twitter.pm view on Meta::CPAN
$App::SpreadRevolutionaryDate::Target::Twitter::VERSION = '0.50';
# ABSTRACT: Target class for L<App::SpreadRevolutionaryDate> to handle spreading on Twitter.
use Moose;
with 'App::SpreadRevolutionaryDate::Target'
=> {worker => 'Twitter::API__WITH__Twitter::API::Trait::ApiMethods'};
use Twitter::API;
use Locale::TextDomain 'App-SpreadRevolutionaryDate';
use namespace::autoclean;
has 'consumer_key' => (
is => 'ro',
isa => 'Str',
required => 1,
);
has 'consumer_secret' => (
is => 'ro',
isa => 'Str',
t/new_target.t view on Meta::CPAN
}
binmode(DATA, ":encoding(UTF-8)");
use Test::More tests => 5;
use Test::Output;
use Test::NoWarnings;
package App::SpreadRevolutionaryDate::Target::Ezln;
use Moose;
with 'App::SpreadRevolutionaryDate::Target' => {worker => 'Bool'};
use namespace::autoclean;
has 'subcomandantes' => (is => 'ro', isa => 'ArrayRef[Str]', required => 1);
has 'land' => (is => 'ro', isa => 'Str', required => 1);
around BUILDARGS => sub {
my ($orig, $class) = @_;
# App::SpreadRevolutionaryDate::Target consumer classes
# should have a mandatory 'obj' parameter valued by an
# instance of the 'worker' class.
view all matches for this distributionview release on metacpan - search on metacpan