Skip Menu |

This queue is for tickets about the Module-CPANTS-Analyse CPAN distribution.

Report information
The Basics
Id: 88215
Status: open
Priority: 0/
Queue: Module-CPANTS-Analyse

People
Owner: Nobody in particular
Requestors: ether [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: Module::CPANTS::Kwalitee::MetaYML is improperly falling back to META.json
As seen in the errors here (for Class::Tiny 0.004): http://cpants.cpanauthors.org/dist/Class-Tiny/errors The META.yml "has errors" (due to encoding issues), and is falling back to reading META.json, but that's using the v2.0 spec and the code isn't checking for the version -- so it explodes trying to interpret v2.0 data in the 'resources' section as if it was v1.4.
Also we probably shouldn't be classifying any errors from parsing META.json under the yml metrics -- just mark the META.yml parsing as a failure and move on to checking META.json as its own, separate, metric.
This seems to be affecting all the metayml metrics -- e.g. http://cpants.cpanauthors.org/dist/MooseX-Storage (version 0.40) claims there is no perl version specified in prereqs, when it is actually there in both META.json and META.yml -- only because the META.json data is being used as if it were in 1.4 format, the prereq information is in the wrong place. META.json and META.yml data cannot be used interchangably - they are in different formats. It would be better to have separate metajson metrics, that are calculated entirely separately from metayml.
On Sat Aug 31 01:00:24 2013, ETHER wrote: Show quoted text
> This seems to be affecting all the metayml metrics -- e.g. > http://cpants.cpanauthors.org/dist/MooseX-Storage (version 0.40) > claims there is no perl version specified in prereqs, when it is > actually there in both META.json and META.yml -- only because the > META.json data is being used as if it were in 1.4 format, the prereq > information is in the wrong place. > > META.json and META.yml data cannot be used interchangably - they are > in different formats. It would be better to have separate metajson > metrics, that are calculated entirely separately from metayml.
There are several topics in this thread, but for the moment, META.json and META.yml should be used interchangeably. See https://github.com/andk/pause/blob/master/lib/PAUSE/dist.pm#L905 and around. It's true we need to take more care about the spec version in the META.(json|yml), though (ie. by using CPAN::Meta when necessary). That said, it's nice to have metrics (or analysis) dedicated to META.json in the future, especially because the contents of META.yml and META.json may differ sometimes.