Yanick Champoux > Dist-Zilla-Plugin-ShareDir-Tarball-0.4.2 > Dist::Zilla::Plugin::ShareDir::Tarball

Download:
Dist-Zilla-Plugin-ShareDir-Tarball-0.4.2.tar.gz

Dependencies

Annotate this POD

Website

CPAN RT

Open  0
View/Report Bugs
Module Version: v0.4.2   Source  

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.

syntax highlighting: