On Tue, Apr 22, 2014 at 03:09:05PM -0400, Daniel Staal wrote:
> I actually expect most smokers to
> be running a fairly recent perl, just because it's the type of place
> where it's usually good to run updates.  The ancient versions of
> perl are probably running on secured isolated boxes where upgrading
> is procedurally impossible.

This is counter to my observation -- most of the *serious* smokers (see
http://stats.cpantesters.org/testers.html) perform their tests across a
wide range of perl versions, with lots of representation from 5.8, 5.10 and
5.12.

> Anyone can send a CPAN test report, and anyone can install a module
> without CPAN.  Therefore, I don't think the prereq list (for
> install) should take into account the CPAN smoke test infrastructure
> (a subset of the CPAN testers).

I never suggested that it do so. I raised the possibility of checking in
Makefile.PL/Build.PL for out of date tools *because it would help the
user* (and if it raises the quality of smoke reports, that just comes for
free).

> We have an explicit prereq system.  Use it.  It will help
> both author and user.  *Let me see what you are relying on, don't
> just expect it to be available.*

I've never said anything otherwise. And, indeed, the reports I'm concerned
about do not have anything to do with missing prerequisite declarations.
Because you're coming back to this, it feels like you're not understanding
my original point.

> That includes the toolchain: if
> you need a modern toolchain, say so.

> I get what you are saying (CPAN is *never* needed, I get that), but
> if you really feel that way why are we having this discussion?  You
> suggested the solution to some failures was to upgrade a module to a
> more recent version - My point is that if you think that's
> necessary, why not say so in your module?  (Where others can see
> that requirement, and fulfil it on a case-by-case basis, instead of
> a large scale toolchain modification for all users.)

Because *this is impossible* when the thing we're concerned about is the
CPAN client itself:

- I expressed concern explicitly about 'configure requires' prereqs, and
  that older versions of some CPAN clients don't detect that properly.  If
  I were to declare a prereq on a specific version of a CPAN client,
  configure requires is exactly the place to do it -- which it won't
  understand anyway.
- even if we were somehow able to declare a prereq on a newer CPAN client,
  by the time we're executing Makefile.PL/Build.PL, it's too late, as the
  older version is already running and we can't say "stop, start over and
  use the new version of yourself you just installed".  The best I think we
  can do is simply bail out with an explanation of what to update (either
  perl itself, to get a newer CPAN client via core, or the client
  directly).

If you feel I'm missing something, please say so.

I'm not sure why you cc'd this to beginn...@perl.org. This is not a
beginner topic - this is very much to do with the intricacies of the
toolchain.


Karen Etheridge
et...@cpan.org

Reply via email to