Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Bundle your shared dir into a tarball
Perl Perl6

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib/Dist/Zilla/Plugin/ShareDir
t
xt/release
AUTHOR_PLEDGE
Build.PL
Changes
INSTALL
LICENSE
MANIFEST
META.json
META.yml
README
README.mkdn
SIGNATURE

README.mkdn

NAME

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

VERSION

version 0.2.1

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.

SEE ALSO

Dist::Zilla::Plugin::ShareDir, which you want to use in tandem with this module.

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@babyl.dyndns.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.

Something went wrong with that request. Please try again.