++ed by:
Yanick Champoux

NAME

Dist::Zilla::Plugin::ShareDir::Tarball - Bundle your shared dir into a tarball

VERSION

version 0.4.2

SYNOPSIS

    # in dist.ini

    [ShareDir::Tarball]

DESCRIPTION

Using File::ShareDir to deploy non-Perl files alongside a distribution is great, but it has a problem. Just like for modules, upon installation CPAN clients don't remove any of the files that were already present in the /lib directories beforehand. So if version 1.0 of the distribution was sharing

    share/foo
    share/bar

and version 1.1 changed that to

    share/foo
    share/baz

then a user installing first version 1.0 then 1.1 will end up with

    share/foo
    share/bar
    share/baz

which might be a problem (or not).

Fortunately, there is a sneaky workaround in the case where you don't want the files of past distributions to linger around. The trick is simple: bundle all the files to be shared into a tarball called shared-files.tar.gz. As there is only that one file, any new install is conveniently clobbering the old version.

But archiving the content of the share directory is no fun. Hence Dist::Zilla::Plugin::ShareDir::Tarball which, upon the file munging stage, gathers all files in the share directory and build the shared-files.tar.gz archive with them. If there is no such files, the process is simply skipped.

OPTIONS

dir

The source directory to be bundled into the shared tarball. Defaults to share.

SEE ALSO

Dist::Zilla::Plugin::ShareDir, which is similar to this module, but without the conversion of the shared directory into a tarball.

File::ShareDir::Tarball - transparently extract the tarball behind the scene so that the shared directory can be accessed just like it is in File::ShareDir.

Module::Build::CleanInstall - A subclass of Module::Build which deinstall the files from previous installations via their packlist.

AUTHOR

Yanick Champoux <yanick@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2012 by Yanick Champoux.

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




Hosting generously
sponsored by Bytemark