metacpan / MetaCPAN-Client

Home of the official MetaCPAN Perl API client.
21 stars 23 forks source link

How to fetch kwalitee metrics? #116

Closed szabgab closed 1 year ago

szabgab commented 1 year ago

I could not find this in the docs of MetaCPAN::Client. If it is possible, it would be nice to have an example.

haarg commented 1 year ago

That information is not included in the API, so the client can't give it to you.

szabgab commented 1 year ago

Would it be a good idea to mention this in the POD so others who might look for this will be able to find this information easily? I'd be glad to send a PR.

oalders commented 1 year ago

Is there an API for Kwalitee metrics that we could get the scores from?

szabgab commented 1 year ago

Oh, I thought it was part of MetaCPAN. I just realized that the kwalitee links on MetaCPAN lead to cpants.cpanauthors.org and the data is not coming from MetaCPAN. My bad. Sorry.

oalders commented 1 year ago

That clears it up. I was confused. 😄

szabgab commented 1 year ago

If we are talking about this, why is there no (easy) way to get the data from cpants? Was that some refusal or just lack of tuits?

oalders commented 1 year ago

I don't think we've ever tried to do this. Maybe it's possible? I believe @charsbar would be the person to answer this.

charsbar commented 1 year ago

@szabgab

Visit https://api.cpanauthors.org/v5 .

Adding .json at the end of a CPANTS URL would also give you some data but the structure may change at any time.

szabgab commented 1 year ago

@charsbar Thanks, I am working on it. I think I found a few issues with the API and reported them on https://github.com/cpants/www-cpants is that the right place do so?

szabgab commented 1 year ago

I've managed to fetch all the data from CPANTS and display the overall metric on CPAN Digger https://cpan-digger.perlmaven.com/ There were about 1,000 of the 40,000 distributions that returned some error indicating a crash on the server.

Tux commented 1 year ago

From https://cpants.cpanauthors.org/dist/$dist I can retrieve metrics like coverage and kwalitee, which are not available from https://api.cpanauthors.org/v5/dist/$dist/overview, so I like to see your approach. I use https://github.com/Tux/Release-Checklist/blob/master/scripts/makewww.pl to generate https://tux.nl/perl.html To you that might not show as fancy, but I like it better. I'm open to improvements and modernizations content-wise (not presentation-wise). My CI part is outdated

Reading the docs, I'd expect https://api.cpanauthors.org/v5/kwalitee/$dist to return me those metrics, but all I get is errors: {"errors":[{"message":"Expected object - got string.","path":"\/errors\/0"}],"status":400}

szabgab commented 1 year ago

@Tux Thanks for you comment. Your page looks nice.

I am fetching data from https://api.cpanauthors.org/v5/release/$author/$dist/metadata but actually currently I am only interested and only display the core_kwalitee field which, if I understand correctly, is an aggregation of all the kwalitee metrics. Full source code is at https://github.com/szabgab/CPAN-Digger/