Provided by: libtest-cpan-meta-json-perl_0.16-1_all bug


       Test::CPAN::Meta::JSON - Validate a META.json file within a CPAN distribution.


       There are two forms this module can be used.

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

         use Test::More;
         eval "use Test::CPAN::Meta::JSON";
         plan skip_all => "Test::CPAN::Meta::JSON required for testing META.json" if $@;

       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.json files, or specify a specific version
       you wish to test against:

         use Test::More test => 6;
         use Test::CPAN::Meta::JSON;

         # specify a file and specification version

         # specify the specification version to validate the local META.json

         # specify a file, where the specification version is deduced
         # from the file itself

       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.

       Also note that the version you are testing against, is the version of the META.yml
       specification, which forms the basis for the contents of a META.json file.



       This module was written to ensure that a META.json 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.


       A test module to validate a CPAN META.json file.


       ·   meta_json_ok([$msg])

           Basic META.json wrapper around meta_spec_ok.

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

       ·   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.


       There are currently 3 distributions to test META files:


       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.


       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 or submit a bug to the RT system
       (  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.




       Barbie, <> for Miss Barbell Productions, <>


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

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