Dear CPAN Tester, Please Join Us in the 21st Century!

chromatic on 2008-06-12T20:59:46

UNIVERSAL::can 1.13_001 fails on Perl 5.005 running on FreeBSD 6.2.

Wrap your head around that for a second -- that's the same FreeBSD 6.2 released in January 2007. There were sixteen stable releases of Perl 5 between the releases of Perl 5.005 and FreeBSD 6.2. Surely in nine years, someone might have had a few moments to try to upgrade to a version of Perl released sometime in the 21st century. Just skip the commercials during a week's worth of television, no?

Or, you know, stick with the modern version of Perl included with FreeBSD 6.2.

Possibly my favorite part is that my Build.PL requires at least Perl 5.6.2, which is in my mind now also ancient Perl (seven stable releases old). This is the last bit of motivation I need to stop coddling this ridiculous situation by writing passthrough Makefile.PL files. What a waste of my time for such an unbelievably stupid situation.


Passthrough Makefile.PL

Ovid on 2008-06-12T21:11:07

I think the main problem with that for most distributions is that you can specify the mininum version of Perl in the Build.PL but it doesn't get translated to the Makefile.PL. Needs a patch from someone to kickstart it, but I imagine that version issues might kick in.

Re:Passthrough Makefile.PL

dagolden on 2008-06-12T21:29:40

I believe that M::B 0.2808_01 (or else the SVN version) have patches for M::B::Compat to put a "use 5.00X" in the generated Makefile.PL if 'perl' is specified in the Build.PL as a prerequisite.

Patches for EU::MM to support 'perl' in PREREQ_PM have been on RT for a while. I think Schwern finally compromised to the need for it at the Oslo hackathon as part of the Oslo Consensus -- don't know if it's been put to code yet though. Version problems apply for back compatibility... which is what configure_requires in META.yml is for... which has bootstrap problems too. Oh, well.

-- dagolden

Re:Passthrough Makefile.PL

chromatic on 2008-06-12T21:43:35

The passthrough Makefile.PL is a hack to work around the fact that CPAN installers several years ago didn't know how to handle Build.PL.

I have the (strong) opinion that dirty hacks should go away eventually. The likelihood that someone will deliberately install a version of Perl almost ten years old (5.005 released on 22 July 1998) and want to install the newest version of one of my distributions is rather low.

Is the FreeBSD part important?

Alias on 2008-06-13T03:20:33

Does the failure have anything at all to do with the OS? Or is it just the Perl version causing it?

I have a testing distro, which is Debian sarge with every production release installed since the last 5.004.

Personally, I consider this extremely useful, since it lets me discover back-compatibility bugs without having to deal with the pain of an actual old system...

Re:Is the FreeBSD part important?

chromatic on 2008-06-13T05:45:51

Does the failure have anything at all to do with the OS? Or is it just the Perl version causing it?

It's the Perl version, which doesn't support lexical warnings, but the test report itself is the opposite of useful. It's useless and worse than a distraction.

It's not interesting to test new CPAN distributions against an ancient Perl on a new operating system. No one supports Perl 5.005 at all, anywhere, for free anyway, and no one sane should install and use a decade-old Perl release on a year-old OS release. This is a useless configuration.

I can understand testing this privately, if you have customers so broken that they consider this technical infrastructure remotely usable, but in that case, you'd better be charging them appropriately and you oughtn't expect your friendly local CPAN author to support that kind of mind-numbing brokenness for free. I can't see p5p wasting its time to listen to bug reports and I have trouble believing that FreeBSD will care either.

Real users

petdance on 2008-06-14T15:02:35

This is a perfect example of why I ignore automated bot testers. I'm interested in problems encountered by Real People. It is a worthless exercise to come up with the scenario "What if someone installs a new BSD, and then goes back to an ancient Perl, and then tries to use such-and-such a module?"

I love the idea of CPAN Testers, and of the CPANTS. What I don't love is how masturbatory it's become.

Default perl?

bart on 2008-06-14T19:28:16

I assume FreeBSD 6.2 comes with Perl, for installer scripts etc... Which version of Perl is that? Could it be 5.005? That, somehow, the maintainers of the installers ignored to update Perl because, well, "it works"?

Re:Default perl?

chromatic on 2008-06-14T22:01:13

I assume FreeBSD 6.2 comes with Perl, for installer scripts etc... Which version of Perl is that? Could it be 5.005?

As best as I can tell (by browsing the FreeBSD perl-5 port), it's Perl 5.8.8 -- the update to 5.8.8 took place in February 2006. FreeBSD 6.2 went stable in January 2007.

I suppose that it's possible that someone has upgraded from a really old version of FreeBSD and managed not to update Perl in a decade, but I really doubt it.