Test::CPAN::Meta and friends
Thanks for your many contributions to CPAN and Perl in general :-) As
a Perl author, I am particularly grateful for the instrumental role
you play in keeping CPAN testers useful and relevant.
I know you've been working hard on some important changes to
Test::CPAN::Meta and friends. To summarize the three modules:
Test::CPAN::Meta - provides tests for META.yml & META.json based on
Parse::CPAN::Meta (core as of perl 5.10.1)
Test::CPAN::Meta::YAML - provides tests for META.yml using a YAML
parser (YAML or YAML::Syck) -- you also mention that this is intended
to provide more complete validation of META.yml
Test::CPAN::Meta::JSON - provides tests for META.json using a JSON
parser (the JSON module)
As you might be aware, Debian currently has some packages for
Test::CPAN::Meta (libtest-cpan-meta-perl) as well as Test::YAML::Meta
(libtest-yaml-meta-perl), the latter of which has now been essentially
renamed to Test::CPAN::Meta::YAML. The last package,
Test::CPAN::Meta::JSON is not currently available as a Debian package.
If I understand these three correctly, then there are some open
questions that we will need to answer in order to move forward:
1. Aside from being required by existing people depending on
Test::YAML::Meta, are there substantial differences in the test output
provided by Test::CPAN::Meta::YAML?
2. You mentioned that the validation is supposed to be more complete,
but is this currently the case?
3. Are there issues where something might pass according to
Test::CPAN::Meta but fail according to Test::CPAN::Meta::YAML?
4. Doesn't testing against something that is available to most users
(Parse::CPAN::Meta) make the most sense?
The current plan is to proceed thusly:
1. Upgrade libtest-yaml-meta-perl as-is (this means it will become a
wrapper around Test::CPAN::Meta::YAML, consistent with upstream)
2. Create and upload Test::CPAN::Meta::YAML (as libtest-cpan-meta-yaml-perl)
3. I suppose at some point we might also want Test::CPAN::Meta::JSON,
but nothing in the archive currently requires it
With respect to #1 of this plan, there are only about 5 packages that
depend on Test::YAML:;Meta, and another option for us would be to
patch those packages to use Test::CPAN::Meta::YAML or
Test::CPAN::Meta. Do you think this would be a good idea, or should we
just do the same thing CPAN has, namely, the transition dummy
I hope you can offer us some insights here. Thanks again for all your
contributions to the CPAN :-)