1Dist::Zilla::Dist::BuilUdseerr(3C)ontributed Perl DocumeDnitsatt:i:oZnilla::Dist::Builder(3)
2
3
4
6 Dist::Zilla::Dist::Builder - dist zilla subclass for building dists
7
9 version 6.031
10
12 This module should work on any version of perl still receiving updates
13 from the Perl 5 Porters. This means it should work on any version of
14 perl released in the last two to three years. (That is, if the most
15 recently released version is v5.40, then this module should work on
16 both v5.40 and v5.38.)
17
18 Although it may work on older versions of perl, no guarantee is made
19 that the minimum required version will not be increased. The version
20 may be increased for any reason, and there is no promise that patches
21 will be accepted to lower the minimum required perl.
22
24 built_in
25 This is the Path::Tiny, if any, in which the dist has been built.
26
28 from_config
29 my $zilla = Dist::Zilla->from_config(\%arg);
30
31 This routine returns a new Zilla from the configuration in the current
32 working directory.
33
34 This method should not be relied upon, yet. Its semantics are certain
35 to change.
36
37 Valid arguments are:
38
39 config_class - the class to use to read the config
40 default: Dist::Zilla::MVP::Reader::Finder
41
42 build_in
43 $zilla->build_in($root);
44
45 This method builds the distribution in the given directory. If no
46 directory name is given, it defaults to DistName-Version. If the
47 distribution has already been built, an exception will be thrown.
48
49 build
50 This method just calls "build_in" with no arguments. It gets you the
51 default behavior without the weird-looking formulation of "build_in"
52 with no object for the preposition!
53
54 ensure_built_in
55 $zilla->ensure_built_in($root);
56
57 This method behaves like "build_in", but if the dist is already built
58 in $root (or the default root, if no root is given), no exception is
59 raised.
60
61 ensure_built
62 This method just calls "ensure_built_in" with no arguments. It gets
63 you the default behavior without the weird-looking formulation of
64 "ensure_built_in" with no object for the preposition!
65
66 dist_basename
67 my $basename = $zilla->dist_basename;
68
69 This method will return the dist's basename (e.g. "Dist-Name-1.01".
70 The basename is used as the top-level directory in the tarball. It
71 does not include "-TRIAL", even if building a trial dist.
72
73 archive_basename
74 my $basename = $zilla->archive_basename;
75
76 This method will return the filename, without the format extension
77 (e.g. "Dist-Name-1.01" or "Dist-Name-1.01-TRIAL").
78
79 archive_filename
80 my $tarball = $zilla->archive_filename;
81
82 This method will return the filename (e.g. "Dist-Name-1.01.tar.gz") of
83 the tarball of this distribution. It will include "-TRIAL" if building
84 a trial distribution, unless the version contains an underscore. The
85 tarball might not exist.
86
87 build_archive
88 $zilla->build_archive;
89
90 This method will ensure that the dist has been built, and will then
91 build a tarball of the build directory in the current directory.
92
93 release
94 $zilla->release;
95
96 This method releases the distribution, probably by uploading it to the
97 CPAN. The actual effects of this method (as with most of the methods)
98 is determined by the loaded plugins.
99
100 clean
101 This method removes temporary files and directories suspected to have
102 been produced by the Dist::Zilla build process. Specifically, it
103 deletes the .build directory and any entity that starts with the dist
104 name and a hyphen, like matching the glob "Your-Dist-*".
105
106 ensure_built_in_tmpdir
107 $zilla->ensure_built_in_tmpdir;
108
109 This method will consistently build the distribution in a temporary
110 subdirectory. It will return the path for the temporary build location.
111
112 install
113 $zilla->install( \%arg );
114
115 This method installs the distribution locally. The distribution will
116 be built in a temporary subdirectory, then the process will change
117 directory to that subdir and an installer will be run.
118
119 Valid arguments are:
120
121 keep_build_dir - if true, don't rmtree the build dir, even if everything
122 seemed to work
123 install_command - the command to run in the subdir to install the dist
124 default (roughly): $^X -MCPAN -einstall .
125
126 this argument should be an arrayref
127
128 test
129 $zilla->test(\%arg);
130
131 This method builds a new copy of the distribution and tests it using
132 "run_tests_in".
133
134 "\%arg" may be omitted. Otherwise, valid arguments are:
135
136 keep_build_dir - if true, don't rmtree the build dir, even if everything
137 seemed to work
138
139 run_tests_in
140 my $error = $zilla->run_tests_in($directory, $arg);
141
142 This method runs the tests in $directory (a Path::Tiny), which must
143 contain an already-built copy of the distribution. It will throw an
144 exception if there are test failures.
145
146 It does not set any of the *_TESTING environment variables, nor does it
147 clean up $directory afterwards.
148
149 run_in_build
150 $zilla->run_in_build( \@cmd );
151
152 This method makes a temporary directory, builds the distribution there,
153 executes all the dist's BuildRunners (unless directed not to, via
154 "$arg->{build} = 0"), and then runs the given command in the build
155 directory. If the command exits non-zero, the directory will be left
156 in place.
157
159 Ricardo SIGNES 😏 <cpan@semiotic.systems>
160
162 This software is copyright (c) 2023 by Ricardo SIGNES.
163
164 This is free software; you can redistribute it and/or modify it under
165 the same terms as the Perl 5 programming language system itself.
166
167
168
169perl v5.38.0 2023-11-21 Dist::Zilla::Dist::Builder(3)