> > 1. Compose a list of CPAN distros starting with those farthest up river,
> i.e., distros that only depend on the perl 5 core. Within that set of
> distros I'd like to order them from most reverse dependencies to fewest.
> Then go down river from there.
>
> David Golden has a script for generating the CPAN river heirarchy -- the
> last run of this that I know of (at least, it's the data I've been working
> off of) is at https://gist.github.com/xdg/af7a32c5b21d45a6b255
> <https://gist.github.com/xdg/af7a32c5b21d45a6b255>. It lists the
> distributions in their position on the CPAN river, and their top 5 users
> (reverse dependencies). This would be a natural place to start testing, and
> determining which branches of the river have blockages (the first instance of
> a no-dot-in-INC issue). David, can you generate a fresh copy?
I am generating the river data roughly weekly. You can get it from here:
http://neilb.org/river-of-cpan.json.gz
<http://neilb.org/river-of-cpan.json.gz>
The file is a big array of hashes, one hash per distribution. Here’s an
example, for Try-Tiny:
{
"dist" : "Try-Tiny”,
"total" : 13045,
"bucket" : 5,
"immediate" : 1077
},
The keys are:
“immediate” is the number of directly dependent CPAN distributions.
“total” is the total number of dists dependent on it.
“bucket” chunks the river: bucket 5 is dists with 10k or more total dependents.
Bucket 4 is 1k up to 9999, and so on until bucket 0, which is dists that have
no dependents.
At the moment there are 56 dists in bucket 5 (“the head of the river”).
This file is being imported into MetaCPAN. For example, for Try-Tiny, have a
look at:
https://fastapi.metacpan.org/distribution/Try-Tiny
<https://fastapi.metacpan.org/distribution/Try-Tiny>
At the moment this is being generated as a by-product of my scripts that run
the PRC, generate the adoption list, etc. I’m currently working on a
stand-alone generator for this data, which I’m hoping to have complete by PTS,
so I can work on productising it with Leo Lapworth.
Neil