I think there are times when a distribution should be removed from CPAN entirely. If a distribution doesn't appear to be used, and there are other dists providing the same functionality which are being used, then I think we can consider removing it from CPAN. In this post I'll describe why it's good for CPAN if appropriate distributions are removed, how to decide what distributions should be removed, and suggest a process for distribution removal.

Read more ...

I've extended the CPAN adoption list to factor in results from CPAN Testers. This caused 6 dists to move up into the top 20.

Read more ...

I've added an adoption leaderboard to my CPAN adoption list. Kudos to Ron Savage who chipping away at the adoption list.

Read more ...

I had a patch accepted which adds an is_core() function to Module::CoreList. This was my first attempt at modifying a core module. This post describes the function, why I wanted it, and my experience adding it to a core module. And then fixing the bug I introduced!

Read more ...

The Perl release graph

corevisualization Fri 20 September 2013

While playing with Module::CoreList I realised that the history of Perl releases is not a straight line, but a tree or graph. So I immediately wanted to draw it, and here it is.

Read more ...

Iterating over all dists on CPAN

CPANPAUSEiteratorsJSON Sat 14 September 2013

I recently released a new version of my PAUSE::Packages module, which caches information about releases on CPAN and makes it easy to iterate over it. In this post I'll cover the motivation for this module, why I decided to transform the existing PAUSE export file, and how David Golden nudged me to use JSON.

Read more ...

Perl 6 isn't Perl

namingversionsopinion Fri 6 September 2013

Until today I had thought of Perl 6 as the successor to Perl 5 that hadn't turned up. That the problem was mainly that it hadn't had a production-ready release yet, and there was no drive for one. But after watching a video of a Larry Wall talk, I realised that Perl 6 isn't the next version of Perl, it's a whole new language, inspired by Perl 5, amongst other things. Calling it Perl anything is not only a disservice to Perl 5, I think it's a disservice to Perl 6.

Read more ...

When creating a CPAN distribution, all the modules should come under a single namespace. If your Foo-Bar distribution has a lead module Foo::Bar, then in almost all cases, all other modules in your distribution should be in the Foo::Bar::* namespace. In this post I'll explain why.

Read more ...

As I described in a recent post, I discovered that my Module::Path module has rather more dependent distributions than I thought. Awareness of this has changed my behaviour, for the good.

Read more ...

CPAN in one sentence

CPANfunny Wed 21 August 2013

This line, taken from the documentation for Class::Tiny, sums up one facet of CPAN perfectly!

Read more ...
1 2 3 4 5 6 7 8 9 10 11 12 13 14