
	Expect.pm v1.11

Expect requires IO::Tty and IO::Stty, also available from CPAN.
There is a Bundle::Expect available that installs everything for
you.

If you prefer manual installation, the usual

  perl Makefile.PL
  make
  make install

should work.  I finally started a simple testsuite for Expect, but
it doesn't really test anything deeper right now.

It would probably be wise to read the docs on IO::Tty before
doing a make install with it.

The Expect for Perl module was inspired more by the functionality the
Tcl tool provides than any previous Expect-like tool such as Comm.pl
or chat2.pl.

The Tcl version of expect is a creation of Don Libes (libes@nist.gov).
The Tcl Expect home page is http://expect.nist.gov/.  Don has written
an excellent in-depth tutorial of Tcl/Expect, which is _Exploring
Expect_.  It is the O'reilly book with the monkey on the front.  Don has
several references to other articles on the Expect web page.

I try to stay as close to Tcl/Expect in interface and semantics
as possible (so I can refer questions to the Tcl/Expect docu ;-).
Suggestions for improvement are always welcome.

I started a new FAQ (Expect_FAQ.pod), so please let me know if there's
something you'd like to see answered there that isn't.


From the Changelog:
===================

	Bugs fixed:

! max_accum (match_max) finally really restricts the match-buffer-size.

! expect() didn't return the correct error state upon EOF

! soft_close() was re-reading the filehandle even when an EOF
  had already been detected, resulting in a very long delay.

! exp_continue() returned a value that got truncated with certain
  perl versions (5.6 :-( ) on certain systems.


	Features added:

+ Lee Eakin <leakin@japh.itg.ti.com>contributed a perl version of the
  kibitz script which might be of common interest.  See the
  examples/kibitz subdir.  Thanks Lee!

+ Expect got it's own print() so we can show what's getting
  sent to the spawned program when exp_internal is set.
  (suggested by horos@earth.he.net)

+ a session can now be logged to a file by setting log_file().  Thanks to
  Marcel Widjaja <marcel.widjaja@sun.com> for suggesting this.

+ I added some aliases for certain methods to help Tcl/Expect users
  to a WLIE experience (Work Like I Expect).  'exp_pid', 'match_max',
  'log_file', 'log_user', even 'send' (which is an alias for 'print')
  are all there now.  But I won't make 'send_user' an alias for
  'print STDOUT', you have to draw a line somewhere.

+ some diagnosis messages now use cluck to print a stacktrace
  (suggested by horos@earth.he.net)

+ there is a new option 'restart_timeout_upon_receive', that, when
  set to 1, will restart the timeout within the expect call.  This is
  useful when supervising an application that produces periodic, but
  not well-defined output and you still want to react to certain
  patterns.  Just say

    $exp->restart_timeout_upon_receive(1);
    $exp->expect($timeout,
                 [ timeout => \&report_timeout ],
		 [ qr/pattern/ => \&handle_pattern ]);

  (suggested by horos@earth.he.net)
  

Thanks to everybody who wrote to me, either with bug reports or
enhancement suggestions!

Roland Giersig (Expect.pm maintainer)
RGiersig@cpan.org

2001-02-20
