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.77
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 Dan Book, "<dbook at cpan.org>"
76
77 Sawyer X, "<xsawyerx at cpan.org>"
78
79 Andy Lester, "<petdance at cpan.org>"
80
81 Ricardo Signes, "<rjbs at cpan.org>"
82
83 C.J. Adams-Collier, "<cjac at colliertech.org>"
84
86 You can find documentation for this module with the perldoc command.
87
88 perldoc Module::Starter
89
90 You can also look for information at:
91
92 • Source code at GitHub
93
94 <https://github.com/xsawyerx/module-starter>
95
96 • CPAN Ratings
97
98 <http://cpanratings.perl.org/dist/Module-Starter>
99
100 • GitHub issue tracker
101
102 <https://github.com/xsawyerx/module-starter/issues>
103
104 • Search CPAN
105
106 <https://metacpan.org/release/Module-Starter>
107
109 Please report any bugs or feature requests to the bugtracker for this
110 project on GitHub at:
111 <https://github.com/xsawyerx/module-starter/issues>. I will be
112 notified, and then you'll automatically be notified of progress on your
113 bug as I make changes.
114
116 Copyright 2005-2009 Andy Lester, Ricardo Signes and C.J. Adams-Collier,
117 All Rights Reserved.
118
119 Copyright 2010 Sawyer X, All Rights Reserved.
120
121 This program is free software; you can redistribute it and/or modify it
122 under the same terms as Perl itself.
123
125 mbtiny
126 Minimal authoring tool to create and manage distributions using
127 Module::Build::Tiny as an installer.
128
129 Dist::Milla
130 Easy to use and powerful authoring tool using Dist::Zilla to create
131 and manage distributions.
132
133 Minilla
134 Authoring tool similar to Dist::Milla but without using
135 Dist::Zilla.
136
137 Dist::Zilla
138 Very complex, fully pluggable and customizable distribution
139 builder.
140
141
142
143perl v5.38.0 2023-07-20 Module::Starter(3)