Tests fail on Ubuntu 13.04 on a perl-5.18.1 installed from perlbrew #2

shlomif opened this Issue Oct 24, 2013 · 5 comments


None yet

3 participants



the tests fail on an x86-64 Ubuntu 13.04 machine on a perl-5.18.1 installed from perlbrew with all the default options. Furthermore, they leave the terminal in an unusable state:

WARNING: the following files are missing in your kit:
Please inform the author.

Created MYMETA.yml and MYMETA.json
Creating new 'Build' script for 'Term-ReadLine-Perl5' version '1.0901'
shlomif@shlomif-apply-desktop:~/progs/cpan/p5-Term-ReadLine-Perl5$ ./Build
Building Term-ReadLine-Perl5
shlomif@shlomif-apply-desktop:~/progs/cpan/p5-Term-ReadLine-Perl5$ ./Build test
test.pl ..................... Features present: stiflehistory 1 autohistory 1 preput 1 getHistory 1 attribs 1 appname 1 ornaments 1 newTTY 1 minline 1 readHistory 1 addHistory 1 writeHistory 1 tkRunning 1 setHistory 1

  Flipping rl_default_selected each line.

        Hint: Entering the word
        would exit the test. ;-)  (If feature 'preput' is present,
        this word should be already entered.)

                                                                             Can't ioctl TIOCGETP: Inappropriate ioctl for device
Consider installing Term::ReadKey from CPAN site nearby
        at http://www.perl.com/CPAN
Or use
        perl -MCPAN -e shell
to reach CPAN. Falling back to 'stty'.
        If you do not want to see this warning, set PERL_READLINE_NOWARN
in your environment.
 at lib/Term/ReadLine/readline.pm line 1514.
        readline::SetTTY() called at lib/Term/ReadLine/readline.pm line 1352
        eval {...} called at lib/Term/ReadLine/readline.pm line 1352
        readline::readline('Enter arithmetic or Perl expression: ', 'exit') called at lib/Term/ReadLine/Perl5.pm line 66
        Term::ReadLine::Perl5::readline('Term::ReadLine::Perl5=ARRAY(0x181e810)', 'Enter arithmetic or Perl expression: ', 'exit') called at test.pl line 77
Enter arithmetic or Perl expression: exitCan't call method "get_c" on an undefined value at lib/Term/ReadLine/readline.pm line 1882.
test.pl ..................... Dubious, test returned 25 (wstat 6400, 0x1900)
                                                                            Failed 1/1 subtests 
t/00test-pod.t .............. skipped: Test::Pod 1.44 required for testing POD
t/10test-basic.t ............ ok   
t/10test-changecase.t ....... ok   0test-changecase.t ....... 
t/10test-history.t .......... ok     est-history.t .......... 
t/10test-motion.t ........... ok    test-motion.t ........... 
t/10test-readline.t ......... ok   0test-readline.t ......... 
t/15test-unescape.t ......... ok    test-unescape.t ......... 
t/20test-read-input-file.t .. ok   0test-read-input-file.t .. 

                                Test Summary Report
                                                                      test.pl                   (Wstat: 6400 Tests: 0 Failed: 0)
                                                     Non-zero exit status: 25
  Parse errors: Bad plan.  You planned 1 tests but ran 0.
                                                         Files=9, Tests=105,  0 wallclock secs ( 0.04 usr  0.02 sys +  0.35 cusr  0.03 csys =  0.44 CPU)
                                                                           Result: FAIL
          Failed 1/9 test programs. 0/105 subtests failed.
                                                          shlomif@shlomif-apply-desktop:~/progs/cpan/p5-Term-ReadLine-Perl5$ d: command not found


OK, I was able to run them successfully after I installed Term::ReadKey. Still it should require it.


The code would be simplified if Term::ReadKey were a requirement, but that might limit availability for for something billed as a (not very good) "Pure Perl" implementation of GNU Readline.

So how available is Term::ReadKey on different OS's?

I'd like to see what others feel about this.

Suggest a forum for soliciting thoughs. Perl Monks?


I don't know to what measure Term::ReadKey is available on different operating systems - I just know that the tests break without it. I'm not very active on Perl Monks but I have an account there, and can take part in the discussion. I am more active on Freenode's #perl channel (I am "rindolf" there) and on some mailing lists (@perl.org , @pm.org etc.).


Commit a7e339f simplifies the code because Term::ReadKey is now required. See if this works for you.


This seems to fail fine (without Term::ReadKey) on my Mageia Linux Cauldron machine. Thanks!

@rocky rocky closed this Oct 29, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment