Um alle möglichen Mojolicious, Dancer, Dancer2 und Catalyst Plugins zu testen, wurde eine kleine Anwendung geschrieben, so dass ich mittlerweile bei über 1 Millionen übermittelten CPAN-Tests bin.
ein Nebenprodukt der Arbeit. • Das eigentliche Ziel ist ein ganz anderes • Ich werde hier einige markante Wegstellen zeigen • Das eigentliche Ziel war...
$parser = Parse::CPAN::Packages->new( '/tmp/test.txt.gz' ); my @distributions = $parser->latest_distributions; my %modules; for my $dist ( @distributions ) { my $name = $dist->dist; next if $name !~ m!^Mojo (?:X|licious)?-!x; my $version = $dist->version; $modules{$name} = $version; }
Abhängigkeiten getestet • Wenn zu viele Module schon installiert sind, fallen Fehler in der Liste der Abhängigkeiten nicht auf → Abhängigkeiten werden nicht aufgelistet, sind aber durch andere Plugins schon installiert
Verzeichnissen → Jede Mojolicious-Version wird in ein eigenes Verzeichnis installiert → Jedes Plugin bekommt ein eigenes Verzeichnis, dadurch keine Kenntnis der vorher installierten Plugins
Patchen sehr einfach – Wer einen Account hat, kann auf das Repo gehen, auf Bearbeiten klicken, speichern, PullRequest erstellen • Einige PullRequests wurden innerhalb von „Sekunden“ angenommen, andere warten sein über einem Jahr...