Skip to content
An analysis of dependencies in the Perl 6 ecosystem
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
data
illos
lib/Perl6
resources/scripts
t
.gitignore
.travis.yml
Changes
LICENSE
META6.json
README.md

README.md

Build Status

NAME

Perl6::Ecosystem - Obtains information from Perl6 modules in the ecosystem

SYNOPSIS

use Perl::Ecosystem;
my $eco = Perl6::Ecosystem.new;

say $eco.modules;
say $eco.depended;
say $eco.depends-on;

DESCRIPTION

A tool to analyze the Perl 6 ecosystem by downloading all modules and finding out how they depend on each other.

METHODS

method new( )

Creates the object, downloading and filling it with information. Error output goes to /tmp/perl6-eco-err.txt

method modules

Returns a hash with module names, dependencies and URLs.

method depended

Returns a hash with module names and the number of other modules it depends on.

method depends-on

Returns a hash with module names and its dependencies.

method river-scores --> Hash

Computes the "river-score" by looking at all dependency chains and giving a score according to the position. That is, if there's this dependenci chain

Foo → Bar → Baz

Foo will have a 0 score for appearing in the first position, up to Baz which will have score equal to 2. The total score of every module is computed by adding all scores.

SEE ALSO

Perl6 module ecosystem.

KNOWN BUGS

It chokes on circular references. Right now they are blacklisted.

AUTHOR

Alex Daniel, JJ Merelo jjmerelo@gmail.com

COPYRIGHT AND LICENSE

Copyright 2018 Alex Daniel, JJ Merelo

This library is free software; you can redistribute it and/or modify it under the Artistic License 2.0.

You can’t perform that action at this time.