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





NAME

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


SYNOPSIS

       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 $@;
         meta_json_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.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
         meta_spec_ok('META.json','1.3',$msg);

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

         # specify a file, where the specification version is deduced
         # from the file itself
         meta_spec_ok('META.json',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.

       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.

       <http://www.nntp.perl.org/group/perl.module.build/2008/06/msg1360.html>


DESCRIPTION

       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.


ABSTRACT

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


FUNCTIONS

       o   meta_json_ok([$msg])

           Basic META.json wrapper around meta_spec_ok.

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

       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-JSON).
       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

         JSON


AUTHOR

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


COPYRIGHT AND LICENSE

         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.



perl v5.34.1                       2015-01-11          Test::CPAN::Meta::JSON(3)

test-cpan-meta-json 0.160.0 - Generated Sat Feb 11 06:16:00 CST 2023
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.