I have an option 3 that might be usable: Make it test for
$ENV{PERL_MM_USE_DEFAULT} in addition to $ENV{AUTOMATED_TESTING}.

It may still be abuse, but it's less abusive, because that has to be
explicitly configured, and it already implies that the installation
should not be interactive, either. 

--Curtis

On Tue, 25 Aug 2009 06:45 -0400, "David Golden" <[email protected]>
wrote:
> Zefram posted this to perl5-porters and I said I'd redirect it and
> answer here.   I'll top-post my reply to keep his email intact.  Sorry
> that it's inscrutable without reading his email.
> 
> I prefer the alternatives in the order 0 1, 2.  If Andreas is
> convinced, perhaps he can ask Ilya.  Or perhaps there's an alternative
> to 1, which is Andreas and Ilya agreeing on a new method to skip tests
> than abusing AUTOMATED_TESTING.  With respect to 1, that's possible
> now locally with distroprefs.  I wouldn't do that in CPAN.pm for
> T::R::P always but might special case it if it's part of Bundle::CPAN.
> Before 2, I'd rather just fork T::R::P, call it
> "Term::ReadLine::Perl::WithoutTests" or something and fix the test
> script there.
> 
> -- David
> 
> ---------- Forwarded message ----------
> From: Zefram <[email protected]>
> Date: Tue, Aug 25, 2009 at 4:40 AM
> Subject: Term::ReadLine::Perl in Bundle::CPAN
> To: [email protected]
> 
> 
> Term::ReadLine::Perl is pissing me off.  It has an obnoxious install
> process, wherein "make test" starts up a program that uses the readline
> facility and demands input from the tty.  If you've got Term::ReadKey
> installed, it even throws away typeahead.  If you're installing it (as a
> dependency of something else) on many perls consecutively, or from cron,
> the installations grinds to a halt at that point.
> 
> This obnoxious behaviour is a problem because T:RL:P is part of
> Bundle::CPAN.  It gets installed (or at least gets an attempt to install
> it) pretty often.  By proxy, Bundle::CPAN has obnoxious installation
> behaviour.  We need to fix this.  I see three main possibilities for
> doing this:
> 
>    (0) Get T:RL:P itself fixed.
> 
>    (1) Put a workaround into CPAN.pm.
> 
>    (2) Drop T:RL:P from Bundle::CPAN.
> 
> I have so far tried approach 0, and it's not looking good.  I submitted
> a minimal patch, via RT, but the author refuses to believe that anyone
> does "big installs" via automated tools such as CPAN.pm.  Maybe someone
> more diplomatic than I am can talk him round, but I suspect not.
> 
> Approach 1 would be pretty easy, though of course Wrong.  T:RL:P will
> skip
> the interactive test if it sees a true value in $ENV{AUTOMATED_TESTING}.
> CPAN.pm could locally put that in the environment, specifically for
> "make test" on T:RL:P.
> 
> Approach 2 would preferably involve having some alternative full-editing
> T:RL:* to include in the bundle.  T:RL:Gnu is problematic because
> it relies on a C library.  There is a T:RL:Zoid, which on a cursory
> look seems very satisfactory, and it even manages to test most of
> the interactive behaviour without making the test suite interactive.
> Using this automatically in CPAN.pm would require either CPAN.pm to
> detect
> it and set up $ENV{PERL_RL}, or a dual-lifed version of Term::ReadLine
> that includes T:RL:Zoid among the defaults to look for.
> 
> Preferences?
> 
> -zefram
--
Curtis Jewell
[email protected]

%DCL-E-MEM-BAD, bad memory
-VMS-F-PDGERS, pudding between the ears

[I use PC-Alpine, which deliberately does not display colors and pictures in 
HTML mail]

Reply via email to