NAME
Dist::Zilla::Plugin::Prereqs::MatchInstalled::All - Upgrade ALL your
dependencies to the ones you have installed.
VERSION
version 1.000000
SYNOPSIS
[Prereqs::MatchInstalled::All]
; upgrade_perl = 1 ; if you want to upgrade to your installed perl
; include these too if you don't want to force a perl upgrade indirectly.
exclude = strict
exclude = warnings
DESCRIPTION
This is a special case of "Dist::Zilla::Plugin::Prereqs::MatchInstalled"
that automatically upgrades all versions of all dependencies, unless
asked not to.
PITFALLS
Presently, there is one very large gotcha about using this module, in
that it will upgrade everything, even things that don't make sense to
upgrade.
For instance:
Local Versions
If you have a single dependency on your system you might use, which is
locally patched, and locally patched in such a way the local version is
more recent than any on "CPAN", you should either
a. Not use this module
b. Put that module in the exclusion list
Non-Dual Life modules
This plugin is not very smart, and can't differentiate between modules
that do exist on "CPAN" independent of Perl, and modules that don't.
For instance, if you use "Autoprereqs", its very likely your
distribution will add a dependency on either "strict" or "warnings"
This module will ask your user to upgrade those versions to their latest
versions, which will likely require them to upgrade their Perl
installation to do so.
Which basically means for the mean time, either
a. You must be o.k. with end users needing more recent Perls
b. You should avoid upgrading those dependencies by either
a. Not using this plugin
b. Adding problematic modules to the exclusion list
ATTRIBUTES
"exclude"
This parameter can be specified multiple times, and each time should
represent a single package string to exclude from version upgrades.
[Prereqs::MatchInstalled::All]
exclude = foo
exclude = bar
"upgrade_perl"
If specified, this will permit upgrades on the dependency on "perl" to
the installed version.
[Prereqs::MatchInstalled::All]
upgrade_perl = 1
Note, this has no effect on the modules that may inherently be only
available by upgrading Perl.
Default is false.
See "PITFALLS" for details.
PRIVATE ATTRIBUTES
"_exclude_hash"
PRIVATE METHODS
"_build__exclude_hash"
"_user_wants_excluded"
"_user_wants_upgrade_on"
AUTHOR
Kent Fredric <kentfredric@gmail.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2014 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.