Dist::Zilla::App::Command::regenerate(3)

NAME
Dist::Zilla::App::Command::regenerate - Write content into your source tree from your release staging

VERSION
version 0.001003

SYNOPSIS
  # Have approprite dist.ini
  dzil regenerate  # Source tree updated!

DESCRIPTION
"Dist::Zilla::App::Command::regenerate" provides a "regenerate" command to "Dist::Zilla" that allows some simple tooling to update your source tree when you choose to.

This works by producing a new synthetic target like the "release" target, which happens after the "build" stage, but does not produce a release.

In conjunction with appropriate "plugins" performing "-Regenerator", This means that:

•   You won't be frustrated with "dzil build" constantly tweaking your source tree

•   You won't be forced to ship a release just to update the state of some files that are generated by plugins

•   You won't even have to update your source tree ever if you don't want to.

When calling "dzil regenerate", a full copy of the distribution is built in a temporary directory like it does when you call "dzil test".

Then after "dzil regenerate" has written your built distribution out to the temporary directory, any "plugin"'s that perform the "-Regenerator" role are called and told where your source tree is, and where the build tree is, and they are expected to do the required work.

In effect, "dzil regenerate" is a lot like:

  dzil build --not && \
    DO_STUFF_WITH .build/latest/  && \
    MAYBECOPY .build/latest/stuff ./stuff

Where those last 2 lines are done with "plugins".

SEE ALSO

•   "dzil update"

    This command invokes only the "dzil build" parts of the equation and rely "dzil build" itself doing your source tree modification.

    A goal of "dzil regenerate" is to avoid "dzil build" doing source tree modification.

AUTHOR
Kent Fredric <kentnl@cpan.org>

COPYRIGHT AND LICENSE
This software is copyright (c) 2016-2017 by Kent Fredric <kentfredric@gmail.com>.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.