Packaging CPAN modules for Fedora, the Oslo QA Hackathon, CPAN::Porters

Ralf Corsepius rc040203 at freenet.de
Fri Mar 7 09:55:25 UTC 2008


On Fri, 2008-03-07 at 10:38 +0200, Gabor Szabo wrote:
> On Fri, Mar 7, 2008 at 10:23 AM, Ralf Corsepius <rc040203 at freenet.de> wrote:
> >
> >  On Fri, 2008-03-07 at 09:37 +0200, Gabor Szabo wrote:
> >  > Hi,
> >  >
> >  > I see on http://perl-qa.hexten.net/wiki/index.php/OsloQAWorkshop2008
> >  > that probably non of you is going to participate. That's a pity.
> >  > Anyway I am trying to setup some documentation/system that might help
> >  > all the distros to include more CPAN packages more easily.
> >  >
> >  > For this I setup a page collecting information about the availability of CPAN
> >  > packages in the various distros http://www.szabgab.com/distributions/
> >  > As you can see Fedora is way underrepresented there.
> >  How did you collect these numbers?


> I wish to count CPAN distros (that is tar.gz files from CPAN).
OK, then the figure I gave should be pretty close. I counted packages
using a "perl-" prefix in Fedora's package database. As most CPAN dists
in Fedora are packaged into separate rpms prefixed with "perl-" this
should give a pretty good estimate.

> >  I really have no idea how a distro can be claimed to be supporting
> 8000+
> >  perl-dists, nor how useful such a distro would be. My wild guess is
> they
> >  are counting differently or contain a lot of duplicated CPAN
> modules.
> 
> There are some 13.000 on CPAN so 8000+ is still less than 2/3.
To put it bluntly: Perl-dists in Fedora are more or less community-only
maintained, i.e. inclusion of perl-dists in Fedora is more or less
community demand-driven => There is little demand for these remaining
12000 packages, probably because hardly anybody needs them.

> >  > What if you could have a "wishlist" that you could present to
> CPAN module
> >  > authors? What would that contain? What would make life easier for
> those
> >  > who package CPAN modules for Fedora?
> >  In decreasing priority:
> >
> >  - Improve your versioning scheme - perl's versioning doesn't
> harmonize
> >  well with rpm's versioning.
> 
> Can you elaborate - give a few short examples or at least point me
> where is it described?

Example: A perl-dist using a version number of 0.04.

What does this mean? For rpm, 0.04 equals 0.4. For CPAN this means
something completely different.

This raises version comparison problems when perl-dists jump in their
versions, e.g. 0.04 -> 0.40. 

For rpm, both versions are equal = 0.4 ("null point four"), i.e.
CPAN/Perl versions need special treatment when mapping them to rpm
versions.

> >  - Think about the licenses you apply. Write Free software.
> 
> Do you have examples you encountered where it is not so on CPAN?
I don't have a concrete example at hand, but there have been plenty of
such cases.

Most CPAN dists apparently are maintained by individuals, who actually
don't care much about licensing. 

There are CPAN maintainers who switch from GPL to MIT though their dists
contain loads of user-contributed code. There are CPAN packages which
don't have any license information inside. There are CPAN packages
harvesting code from other packages without thinking about licenses at
all ...


You might not be aware about it, but there are people who considers the
original "Artistic" license to be non-free (One of these groups is the
FSF: http://www.gnu.org/licenses/license-list.html)


> >  - Write better code. There is a lot of junk in CPAN.
> 
> Wow,  do you have a suggestion how to automatically measure this?
No. I consider this simply to be a matter of fact due to the nature of
CPAN. 

IMHO, the fact Fedora, Debian, Ubuntu etc. are getting away by not
shipping 12000+ modules speaks for itself: Most of CPAN is more or less
dead code, for various reasons. 

One reason is modules not making it into mainstream distros due to lack
of quality. Licensing issues, lack of generality and lack of portability
are other reasons.

Ralf





More information about the Fedora-perl-devel-list mailing list