Dist::Zilla::Plugin::Test::ReportPrereqs - Report on prerequisite
    versions during automated testing

    version 0.029

      # in dist.ini
      include = Acme::FYI
      exclude = Acme::Dont::Care

    This Dist::Zilla plugin adds a t/00-report-prereqs.t test file and an
    accompanying t/00-report-prereqs.dd data file. It reports the version of
    all modules listed in the distribution metadata prerequisites (including
    'recommends', 'suggests', etc.). However, any 'develop' prereqs are not
    reported (unless they show up in another category).

    If a MYMETA.json file exists and CPAN::Meta is installed on the testing
    machine, MYMETA.json will be examined for prerequisites in addition, as
    it would include any dynamic prerequisites not set in the distribution

    Versions are reported based on the result of "parse_version" from
    ExtUtils::MakeMaker, which means prerequisite modules are not actually
    loaded (which avoids various edge cases with certain modules). Parse
    errors are reported as "undef". If a module is not installed, "missing"
    is reported instead of a version string.

    Additionally, if CPAN::Meta is installed, unfulfilled required
    prerequisites are reported after the list of all versions based on
    either MYMETA (preferably) or META (fallback).

    An "include" attribute can be specified (multiple times) to add modules
    to the report. This can be useful if there is a module in the dependency
    chain that is problematic but is not directly required by this project.
    These modules will be listed in an "Other Modules" section at the end of
    the report.

    An "exclude" attribute can be specified (multiple times) to remove
    modules from the report (if you had a reason to do so).

    When set, installed versions of all 'requires' prerequisites are
    verified against those specified. Defaults to true, but requires
    CPAN::Meta to be installed.

    Specifies the module to use to extract each installed prerequisite's
    version. Defaults to ExtUtils::MakeMaker, which is recommended for most
    situations. It can also be specified as Module::Metadata, which can be
    useful if ExtUtils::MakeMaker's mechanism is too naive, or if
    ExtUtils::MakeMaker is not already a prerequisite of the distribution.

    Other Dist::Zilla::Plugins do similar things in slightly different ways
    that didn't suit my style and needs.

    *   Dist::Zilla::Plugin::Test::PrereqsFromMeta -- requires prereqs to be

    *   Dist::Zilla::Plugin::Test::ReportVersions -- bundles a copy of
        YAML::Tiny, reads prereqs only from META.yml, and attempts to load
        them with "require"

    *   Dist::Zilla::Plugin::ReportVersions::Tiny -- static list only, loads
        modules with "require"

  Bugs / Feature Requests
    Please report any bugs or feature requests through the issue tracker at
    >. You will be notified automatically of any progress on your issue.

  Source Code
    This is open source software. The code repository is available for
    public review and contribution under the terms of the license.


      git clone

    David Golden <>

    *   Brendan Byrd <>

    *   Dave Rolsky <>

    *   Karen Etheridge <>

    *   Kent Fredric <>

    *   Randy Stauner <>

    *   Ricardo Signes <>

    *   Yanick Champoux <>

    This software is Copyright (c) 2012 by David Golden.

    This is free software, licensed under:

      The Apache License, Version 2.0, January 2004