summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2013-09-03 01:22:24 -0400
committerJesse Luehrs <doy@tozt.net>2013-09-03 01:25:09 -0400
commit29e46e95343b5791050b9f840bb2f2020a821733 (patch)
treedf54992da31ed3ac4021bc665febe33300d67e89 /lib
parenta62c3512cf2c90f69520d41344d6cb91a503bf7c (diff)
downloaddist-zilla-pluginbundle-doy-29e46e95343b5791050b9f840bb2f2020a821733.tar.gz
dist-zilla-pluginbundle-doy-29e46e95343b5791050b9f840bb2f2020a821733.zip
updates
Diffstat (limited to 'lib')
-rw-r--r--lib/Dist/Zilla/PluginBundle/DOY.pm65
1 files changed, 51 insertions, 14 deletions
diff --git a/lib/Dist/Zilla/PluginBundle/DOY.pm b/lib/Dist/Zilla/PluginBundle/DOY.pm
index 971dc51..5f4d244 100644
--- a/lib/Dist/Zilla/PluginBundle/DOY.pm
+++ b/lib/Dist/Zilla/PluginBundle/DOY.pm
@@ -152,21 +152,55 @@ has _repository_host_map => (
},
);
-has bugtracker_web => (
+has bugtracker => (
is => 'ro',
isa => 'Str',
lazy => 1,
- default => sub {
- sprintf('http://rt.cpan.org/Public/Dist/Display.html?Name=%s',
- shift->dist);
- },
+ default => sub { shift->repository eq 'github' ? 'github' : 'rt' },
);
-has bugtracker_mailto => (
+for my $attr (qw(bugtracker_web bugtracker_mailto)) {
+ has $attr => (
+ is => 'ro',
+ isa => 'Maybe[Str]',
+ lazy => 1,
+ default => sub {
+ my $self = shift;
+ my $data = $self->_bugtracker_data;
+ return unless $data;
+ return $data->{$attr};
+ },
+ );
+}
+
+sub _bugtracker_data {
+ my $self = shift;
+
+ my $host = $self->bugtracker;
+ return unless defined $host;
+
+ die "Unknown bugtracker host $host"
+ unless exists $self->_bugtracker_host_map->{$host};
+
+ return $self->_bugtracker_host_map->{$host};
+}
+
+has _bugtracker_host_map => (
is => 'ro',
- isa => 'Str',
+ isa => 'HashRef[HashRef[Str]]',
lazy => 1,
- default => sub { sprintf('bug-%s@rt.cpan.org', lc shift->dist); },
+ default => sub {
+ my $self = shift;
+ return {
+ 'github' => {
+ bugtracker_web => sprintf('https://github.com/%s/%s/issues', $self->github_user, $self->github_name),
+ },
+ 'rt' => {
+ bugtracker_web => sprintf('http://rt.cpan.org/Public/Dist/Display.html?Name=%s', $self->dist),
+ bugtracker_mailto => sprintf('bug-%s@rt.cpan.org', lc $self->dist),
+ },
+ }
+ },
);
has homepage => (
@@ -250,6 +284,9 @@ has _plugins => (
Git::Commit
Git::Tag
Git::NextVersion
+ AutoPrereqs
+ ContributorsFromGit
+ MetaProvides::Package
),
($self->is_task ? 'TaskWeaver' : 'PodWeaver'),
($self->is_test_dist ? 'FakeRelease' : 'UploadToCPAN'),
@@ -353,21 +390,21 @@ You can also look for information at:
=over 4
-=item * AnnoCPAN: Annotated CPAN documentation
+=item * MetaCPAN
-L<http://annocpan.org/dist/Dist-Zilla-PluginBundle-DOY>
+L<https://metacpan.org/release/Dist-Zilla-PluginBundle-DOY>
-=item * CPAN Ratings
+=item * Github
-L<http://cpanratings.perl.org/d/Dist-Zilla-PluginBundle-DOY>
+L<https://github.com/doy/dist-zilla-pluginbundle-doy>
=item * RT: CPAN's request tracker
L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=Dist-Zilla-PluginBundle-DOY>
-=item * Search CPAN
+=item * CPAN Ratings
-L<http://search.cpan.org/dist/Dist-Zilla-PluginBundle-DOY>
+L<http://cpanratings.perl.org/d/Dist-Zilla-PluginBundle-DOY>
=back