1Module::Starter(3) User Contributed Perl Documentation Module::Starter(3)
2
3
4
6 Module::Starter - a simple starter kit for any module
7
9 Version 1.76
10
12 Nothing in here is meant for public consumption. Use module-starter
13 from the command line.
14
15 module-starter --module=Foo::Bar,Foo::Bat \
16 --author="Andy Lester" --email=andy@petdance.com
17
19 This is the core module for Module::Starter. If you're not looking to
20 extend or alter the behavior of this module, you probably want to look
21 at module-starter instead.
22
23 Module::Starter is used to create a skeletal CPAN distribution,
24 including basic builder scripts, tests, documentation, and module code.
25 This is done through just one method, "create_distro".
26
28 Module::Starter->create_distro(%args)
29 "create_distro" is the only method you should need to use from outside
30 this module; all the other methods are called internally by this one.
31
32 This method creates orchestrates all the work; it creates distribution
33 and populates it with the all the requires files.
34
35 It takes a hash of params, as follows:
36
37 distro => $distroname, # distribution name (defaults to first module)
38 modules => [ module names ], # modules to create in distro
39 dir => $dirname, # directory in which to build distro
40 builder => 'Module::Build', # defaults to ExtUtils::MakeMaker
41 # or specify more than one builder in an
42 # arrayref
43
44 license => $license, # type of license; defaults to 'artistic2'
45 author => $author, # author's full name (taken from C<getpwuid> if not provided)
46 email => $email, # author's email address (taken from C<EMAIL> if not provided)
47 ignores_type => $type, # ignores file type ('generic', 'cvs', 'git', 'hg', 'manifest' )
48 fatalize => $fatalize, # generate code that makes warnings fatal
49
50 verbose => $verbose, # bool: print progress messages; defaults to 0
51 force => $force # bool: overwrite existing files; defaults to 0
52
53 The ignores_type is a new feature that allows one to create SCM-
54 specific ignore files. These are the mappings:
55
56 ignores_type => 'generic' # default, creates 'ignore.txt'
57 ignores_type => 'cvs' # creates .cvsignore
58 ignores_type => 'git' # creates .gitignore
59 ignores_type => 'hg' # creates .hgignore
60 ignores_type => 'manifest' # creates MANIFEST.SKIP
61
62 It is also possible to provide an array ref with multiple types wanted:
63
64 ignores_type => [ 'git', 'manifest' ]
65
67 Module::Starter itself doesn't actually do anything. It must load
68 plugins that implement "create_distro" and other methods. This is done
69 by the class's "import" routine, which accepts a list of plugins to be
70 loaded, in order.
71
72 For more information, refer to Module::Starter::Plugin.
73
75 Sawyer X, "<xsawyerx at cpan.org>"
76
77 Andy Lester, "<petdance at cpan.org>"
78
79 Ricardo Signes, "<rjbs at cpan.org>"
80
81 C.J. Adams-Collier, "<cjac at colliertech.org>"
82
84 You can find documentation for this module with the perldoc command.
85
86 perldoc Module::Starter
87
88 You can also look for information at:
89
90 · Source code at GitHub
91
92 <https://github.com/xsawyerx/module-starter>
93
94 · AnnoCPAN: Annotated CPAN documentation
95
96 <http://annocpan.org/dist/Module-Starter>
97
98 · CPAN Ratings
99
100 <http://cpanratings.perl.org/dist/Module-Starter>
101
102 · GitHub issue tracker
103
104 <https://github.com/xsawyerx/module-starter/issues>
105
106 · Search CPAN
107
108 <https://metacpan.org/release/Module-Starter>
109
111 Please report any bugs or feature requests to the bugtracker for this
112 project on GitHub at:
113 <https://github.com/xsawyerx/module-starter/issues>. I will be
114 notified, and then you'll automatically be notified of progress on your
115 bug as I make changes.
116
118 Copyright 2005-2009 Andy Lester, Ricardo Signes and C.J. Adams-Collier,
119 All Rights Reserved.
120
121 Copyright 2010 Sawyer X, All Rights Reserved.
122
123 This program is free software; you can redistribute it and/or modify it
124 under the same terms as Perl itself.
125
127 mbtiny
128 Minimal authoring tool to create and manage distributions using
129 Module::Build::Tiny as an installer.
130
131 Dist::Milla
132 Easy to use and powerful authoring tool using Dist::Zilla to create
133 and manage distributions.
134
135 Minilla
136 Authoring tool similar to Dist::Milla but without using
137 Dist::Zilla.
138
139 Dist::Zilla
140 Very complex, fully pluggable and customizable distribution
141 builder.
142
143
144
145perl v5.30.0 2019-07-26 Module::Starter(3)