manpagez: man pages & more
man Test::CPAN::Meta(3)
Home | html | info | man
Test::CPAN::Meta(3)   User Contributed Perl Documentation  Test::CPAN::Meta(3)



NAME

       Test::CPAN::Meta - Validate your CPAN META.yml files.


SYNOPSIS

       There are two forms this module can be used.

       The first is a standalone test of your distribution's META.yml file:

         use Test::More;
         eval "use Test::CPAN::Meta";
         plan skip_all => "Test::CPAN::Meta required for testing META.yml" if $@;
         meta_yaml_ok();

       Note that you may provide an optional label/comment/message/etc to the
       function, or one will be created automatically.

       The second form allows you to test other META.yml files, or specify a
       specific version you wish to test against:

         use Test::More tests => 6;
         use Test::CPAN::Meta;

         # specify a file and specification version
         meta_spec_ok('META.yml','1.3',$msg);

         # specify the specification version to validate the local META.yml
         meta_spec_ok(undef,'1.3',$msg);

         # specify a file, where the specification version is deduced
         # from the file itself
         meta_spec_ok('META.yml',undef,$msg);

       Note that this form requires you to specify the number of tests you
       will be running in your test script. Also note that each 'meta_spec_ok'
       is actually 2 tests under the hood.


DESCRIPTION

       This distribution was written to ensure that a META.yml file, provided
       with a standard distribution uploaded to CPAN, meets the specifications
       that are slowly being introduced to module uploads, via the use of
       package makers and installers such as ExtUtils::MakeMaker,
       Module::Build and Module::Install.

       See CPAN::Meta for further details of the CPAN Meta Specification.


FUNCTIONS

       o   meta_yaml_ok([$msg])

           Basic META.yml wrapper around meta_spec_ok.

           Returns a hash reference to the contents of the parsed META.yml

       o   meta_spec_ok($file, $version [,$msg])

           Validates the named file against the given specification version.
           Both $file and $version can be undefined.

           Returns a hash reference to the contents of the given file, after
           it has been parsed.


TESTING META FILES

       There are currently 3 distributions to test META files:

         Test-CPAN-Meta
         Test-CPAN-Meta-JSON
         Test-CPAN-Meta-YAML

       All three have slightly different requirements and are intended to be
       used in slightly different environments.

       Test-CPAN-Meta-YAML requires a YAML parser, and currently looks for the
       YAML or YAML::Syck modules. This is the original variant of the 3 and
       was intended to provide a more complete YAML validation of a META.yml.

       Test-CPAN-Meta requires the Parse::CPAN::Meta module, which is now part
       of Perl Core as of perl-5.10.1. This version is intended to be used by
       those only wishing to rely on core modules to test their META.yml
       files.

       Test-CPAN-Meta-JSON is the most recent addition to the family, and is
       specifically aimed at those distributions that use a META.json Meta
       file. The distribution requires the JSON module to parse the Meta file.


BUGS, PATCHES & FIXES

       There are no known bugs at the time of this release. However, if you
       spot a bug or are experiencing difficulties that are not explained
       within the POD documentation, please send an email to barbie@cpan.org
       or submit a bug to the RT system
       (http://rt.cpan.org/Public/Dist/Display.html?Name=Test-CPAN-Meta).
       However, it would help greatly if you are able to pinpoint problems or
       even supply a patch.

       Fixes are dependent upon their severity and my availability. Should a
       fix not be forthcoming, please feel free to (politely) remind me.


SEE ALSO

         Test::YAML::Valid(3)


AUTHOR

       Barbie, <barbie@cpan.org> for Miss Barbell Productions,
       <http://www.missbarbell.co.uk>


COPYRIGHT AND LICENSE

         Copyright (C) 2007-2015 Barbie for Miss Barbell Productions

         This distribution is free software; you can redistribute it and/or
         modify it under the Artistic Licence v2.

perl v5.34.1                      2015-05-06               Test::CPAN::Meta(3)

test-cpan-meta 0.250.0 - Generated Tue Apr 16 13:55:38 CDT 2024
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.