File Coverage

blib/lib/Pod/Weaver/PluginBundle/BAREFOOT.pm
Criterion Covered Total %
statement 58 58 100.0
branch 1 2 50.0
condition 1 2 50.0
subroutine 20 20 100.0
pod n/a
total 80 82 97.5


line stmt bran cond sub pod time code
1 1     1   1247607 use 5.012;
  1         4  
2 1     1   8 use MooseX::Declare;
  1         3  
  1         10  
3 1     1   2288 use Method::Signatures::Modifiers;
  1         3  
  1         14  
4              
5             # PODNAME: Pod::Weaver::PluginBundle::BAREFOOT
6             # PODNAME: Pod::Weaver::PluginBundle::BAREFOOT
7             class Pod::Weaver::PluginBundle::BAREFOOT
8 1     1   33458 {
  1     1   3  
  1     1   35  
  1     1   5966  
  1         4  
  1         11  
  1         6620  
  1         2  
  1         13  
  1         116  
9 1     1   57 use autodie 2.00 ;
  1         29  
  1         9  
10 1     1   5591 use MooseX::Has::Sugar ;
  1         2  
  1         12  
11 1     1   135 use MooseX::Types::Moose ':all' ;
  1         4  
  1         18  
12              
13             # Dependencies
14 1     1   9497 use Pod::Weaver 3.101635; # fixed ABSTRACT scanning
  1         24  
  1         33  
15 1     1   9 use Pod::Weaver::Config::Assembler;
  1         3  
  1         35  
16              
17 1     1   688 use Pod::Weaver::Plugin::WikiDoc ();
  1         127163  
  1         47  
18 1     1   568 use Pod::Elemental::Transformer::List 0.101620 ();
  1         20974  
  1         49  
19 1     1   678 use Pod::Weaver::Section::Support 1.001 ();
  1         83163  
  1         120  
20              
21              
22             our $VERSION = '0.06_02'; # TRIAL VERSION
23              
24              
25             my $bugtracker_content = <<'END' =~ s/^\h+//mgr;
26             This module is on GitHub. Feel free to fork and submit patches. Please note that I develop
27             via TDD (Test-Driven Development), so a patch that includes a failing test is much more
28             likely to get accepted (or at least likely to get accepted more quickly).
29              
30             If you just want to report a problem or suggest a feature, that's okay too. You can create
31             an issue on GitHub here: {WEB}.
32             END
33              
34              
35 1 50   1   5283 method _exp { Pod::Weaver::Config::Assembler->expand_package($self) }
  15     15   714  
  15         37  
  15         40  
36              
37             method mvp_bundle_config ($class: ...)
38 1     1   7118 {
  1     1   2313  
39             # get payload (configurable parameters) from the dzil plugin bundle
40 1         45 my $payload = Dist::Zilla::PluginBundle::BAREFOOT->weaver_payload;
41              
42             # now set default values for them
43 1   50     5 $payload->{'repository_link'} //= 'both';
44              
45 1         3 my @plugins;
46 1         5 push @plugins, (
47             [ '@BAREFOOT/WikiDoc', _exp('-WikiDoc'), {} ],
48              
49             [ '@BAREFOOT/CorePrep', _exp('@CorePrep'), {} ],
50             [ '@BAREFOOT/Name', _exp('Name'), {} ],
51             [ '@BAREFOOT/Version', _exp('Version'), {
52             format => "This document describes version %v of %m.",
53             }
54             ],
55              
56             [ '@BAREFOOT/Synopsis', _exp('Generic'), { header => 'SYNOPSIS' } ],
57             [ '@BAREFOOT/Description', _exp('Generic'), { header => 'DESCRIPTION' } ],
58             [ '@BAREFOOT/Overview', _exp('Generic'), { header => 'OVERVIEW' } ],
59             );
60              
61 1         57 for my $plugin (
62             [ 'Attributes', _exp('Collect'), { command => 'attr' } ],
63             [ 'Methods', _exp('Collect'), { command => 'method' } ],
64             [ 'Functions', _exp('Collect'), { command => 'func' } ],
65             ){
66 3         61 $plugin->[2]->{'header'} = uc $plugin->[0];
67 3         7 push @plugins, $plugin;
68             }
69              
70             push @plugins, (
71             [ '@BAREFOOT/Leftovers', _exp('Leftovers'), {} ],
72             [ '@BAREFOOT/Support', _exp('Support'), {
73             perldoc => 1,
74             websites => 'none',
75             bugs => 'metadata',
76             bugs_content => $bugtracker_content,
77 1         4 repository_link => $payload->{'repository_link'},
78             repository_content => 'none',
79             }
80             ],
81             [ '@BAREFOOT/Authors', _exp('Authors'), {} ],
82             [ '@BAREFOOT/Legal', _exp('Legal'), {} ],
83             [ '@BAREFOOT/List', _exp('-Transformer'), { transformer => 'List' } ],
84             );
85              
86 1         57 return @plugins;
87             }
88              
89 1     1   10834 }
90              
91             # ABSTRACT: BAREFOOT's default Pod::Weaver config
92             # COPYRIGHT
93              
94             1;
95              
96             __END__
97              
98             =pod
99              
100             =head1 NAME
101              
102             Pod::Weaver::PluginBundle::BAREFOOT - BAREFOOT's default Pod::Weaver config
103              
104             =head1 VERSION
105              
106             This document describes version 0.06_02 of Pod::Weaver::PluginBundle::BAREFOOT.
107              
108             =head1 DESCRIPTION
109              
110             This is a L<Pod::Weaver> PluginBundle. It is roughly equivalent to the
111             following weaver.ini:
112              
113             [-WikiDoc]
114            
115             [@CorePrep]
116            
117             [Name]
118             [Version]
119            
120             [Generic / SYNOPSIS]
121             [Generic / DESCRIPTION]
122             [Generic / OVERVIEW]
123            
124             [Collect / ATTRIBUTES]
125             command = attr
126            
127             [Collect / METHODS]
128             command = method
129            
130             [Collect / FUNCTIONS]
131             command = func
132            
133             [Leftovers]
134             [Support]
135             perldoc = 1
136             websites = none
137             bugs = metadata
138             bugs_content = ... stuff (web only, email omitted) ...
139             repository_link = both
140             repository_content = none
141            
142             [Authors]
143             [Legal]
144            
145             [-Transformer]
146             transfomer = List
147              
148             =for Pod::Coverage mvp_bundle_config
149              
150             =head1 USAGE
151              
152             This PluginBundle is used automatically with the CE<lt>@BAREFOOTE<gt> L<Dist::Zilla>
153             plugin bundle.
154              
155             =head1 SEE ALSO
156              
157             =over
158              
159             =item *
160              
161             L<Pod::Weaver>
162              
163             =item *
164              
165             L<Pod::Weaver::Plugin::WikiDoc>
166              
167             =item *
168              
169             L<Pod::Elemental::Transformer::List>
170              
171             =item *
172              
173             L<Dist::Zilla::Plugin::PodWeaver>
174              
175             =back
176              
177             =head1 AUTHOR
178              
179             Buddy Burden <barefoot@cpan.org>
180              
181             =head1 COPYRIGHT AND LICENSE
182              
183             This software is Copyright (c) 2020 by Buddy Burden.
184              
185             This is free software, licensed under:
186              
187             The Artistic License 2.0 (GPL Compatible)
188              
189             =cut