NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.
All the Perl that's Practical to Extract and Report
Stories, comments, journals, and other submissions on use Perl; are Copyright 1998-2006, their respective owners.
The Star Trek: Generations Fallacy (Score:1)
I'm not sure how to make it easy for people who don't upgrade their software to upgrade their software, when the defining characteristic of the group of people who don't upgrade their software is that they don't upgrade their software.
There's a point at which helping people do stupid things goes beyond negligence and on toward malice. Supporting ancient versions of Perl gets dangerously close to that lin
Re: (Score:1)
The only challenge is in doing it in a way that isn't stupid.
In essence, if the past is stupid and broken and will hurt them, and they don't realise it, then we drag them into the future unless they actively tell us not to.
Re: (Score:1)
Is your plan then to produce a minimal amount of software that can upgrade an ancient Perl installation into something modern, at which point the entire upgraded toolchain is available?
I'm all for that.
Crippling all of the nice modern tools that take advantage of all of the nice bugfixes and new features developed this millennium in Perl for the sake of people who refuse to upgrade, however, bothers me a little bit.
Re: (Score:1)
If, in the process of doing so, an ancient Perl discovers that part of the toolchain is not longer supported on that version of Perl, it should intentionally stop and tell the user CPAN no longer is supported on Perl version $blah, rather than just crashing.
Re: (Score:1)
Provided that only a minimal amount of code has to be backwards-compatible with, say, 5.004_x, that sounds reasonable.
Re: (Score:1)
From my monitoring of heavily used modules, CPAN as a whole has had a fairly clear dependency on 5.005 for a long time.
And there's been a trend over the previous year to 5.6.1 as a minimum.
Plus of course the 5.8.5 unicode sanity point.
We'll see how it goes, but I don't expect the requirements to be too onerous, and the amount of code should be fairly minimal.
Re: (Score:1)
Re: (Score:1)
Typically what will happen is that some module (say, Catalyst) will have a dependency that uses Module::Build in the Build.PL. But dependencies don't get installed until AFTER Build.PL.
Circular unresolvable dependency. Explode.
Unless you first upgrade Bundle::CPAN, the standard CPAN client doesn't work.
And anyone that isn't a Perl programmer is going to have no idea that they have to upgrade CPAN to unbreak it before they run it.
Re: (Score:1)
Re: (Score:1)
There have been eight stable releases of Perl since 5.8.0. That number will soon be nine. It's ancient.
Re: Fixing CPAN: Part 1 - Toolchain Communication (Score:2)
Is that really what we want to be aiming at? I mean, I think that CPAN (and CPANPLUS) is great, but the only people who know about it are Perl developers. It's great for us that the same method works (for some value of "works") on every platform that we use, but for the average user (or the average adminstrator of a computer with Perl instal
Re: (Score:1)
Yes, newbie programmers on the first day they start Perl should be able to install modules without having to deal with errors they don't yet know.
You are correct that it would be better for users to use binary packages, and solutions for these exist.
Unfortunately, nobody that I'm aware of has managed to find a way to package and maintain up to date a reasonably large subset of Perl. debian is at 3,000ish out of 11
Re: (Score:1)
Is that really what we want to not be aiming at? How does having a working CPAN toolchain preclude binary package repositories? Why should we not aim at having both?
Re: (Score:1)
I'd love to see a way to make it easier for CPAN authors (or perhaps CPAN itself - or another project attached to CPAN) to create packages that can be used to install CPAN modules using packaging mechanisms that are native to various operating systems - whether it's rpm, deb, sis or something else.
Take a look at CPANPLUS::Dist::Deb [cpan.org] and debian.pkgs.cpan.org [cpan.org] and you'll see you and I are on the same page :)
It still needs some more hacking to make it easier to write new C::D::* modules, but the concept works :)
Re: (Score:1)
there is also dh-make-perl in debian. IIRC, cpan2dist works better than dh-make-perl.
Re: (Score:2)
Ooh. Very cool.
Now, of course, personally I don't care at all about Debian packages. Where is CPANPLUS::Dist::RPM.
Or have I just volunteered myself?
Two answers (Score:1)
Perl packagers should install Bundle::CPAN with any new installation -- this is the approach Vanilla Perl takes and the result is quite sane for installing any module. It's reasonable to put this onus on packagers -- it's like ensuring that bugfix packages on any older piece of software are in place.
Don't use Autoinstall -- most of the gyrations you describe are just to fix the problems this creates. The module toolchain should leave it to CPAN/CPANPLUS/etc to resolve dependencies. Makefile.PL just n
Re: (Score:1)
To most of the old Perl distributions out there that predate the invention of the new generation of toolchain modules, they all worked just fine at the time. It was the future that bit them.
And so we need to try to deal with the bugs that we don't know have happened yet in the toolchain.
As for AutoInstall, you are superficially cor
So, let's communicate already. (Score:1)
Where's toolchain@lists.perl.org? If there's an appropriate list already, let's funnel the issues into it and collect them into one place.