Edit: /usr/share/doc/expect/HISTORY (144922B)
This is the HISTORY file for Expect. Modifications made by Cygnus
support are in ChangeLog. - Don
Date Version Description
------- ------- ------------------------------------------------------
1/31/06 5.44.1 Marius Schamsula
reported tclconfig
missing, evidentally for new TEA.
1/20/06 5.44.0 Lots of massaging to fix TEAification of Makefile and configure
including that version numbers will now be full three part.
Daniel Wong noted the home page
should note that Wikipedia has a very readable entry for
Expect.
Andre Alves noted passmass needed some
fixes to handle Solaris 9 passwd prompt changes.
Andreas fixed several things: changes to better support TEA,
fix debugger interaction with nonblocking mode, and probably
other things I'm overlooking.
Martin Dietze noted that autoconf 2.59 is
confused by C comment after undefs in expect_cf.h.in.
Added additional code to unbuffer -p so that if a process
earlier in the pipeline exits, unbuffer attempts to
recover any remaining output from the spawned proc before
unbuffer itself exits.
Jeffrey Hobbs noted that once stty was called, a bg'd script
would be suspended at exit. Turned out to be overaggressive
code in stty that recorded what 'damage' the user might have
caused when calling stty in the first place.
Jens Petersen provided patch to make setpgrp configure better
on some Linux systems.
Added example/getpassck script to test for getpass bug.
multixterm had debugging stuff leftover ("hello").
2/7/05 5.43.0 Martin Forssen fixed bug in ExpOutputProc
that caused misbehavior during partial writes.
Someone noted that gets stdin behaves differently (returns -1
immediately) from tclsh because with 5.42, stdin is unblocked
by defaults.
Robroy Gregg noted that expect_background
ignores timeouts. Added to documentation.
Jens Petersen provided patch for
"mkpasswd -vo".
Gary Bliesener noted that
multixterm failed on his system which had an old Tk that didn't
support the Tk package.
8/3/04 5.42.1 Removed beta designation.
Daniel A. Steffen provided patch for
MacOS to avoid panic-redefinition.
7/6/04 5.42b0 Releasing as beta because nonblocking mode is a big change in
the code. http://expect.nist.gov/beta.tar.gz
Alexander Doktorovich
wanted to use Expect as a filter. This is possible but 'too
hard'. To make it easier, added close_on_eof command to
control whether expect/interact automatically close the
channel on eof. This should simplify/enable other scripts.
Kurt Heberlein noted that Expect would
hang. Andreas tracked it down to a change in Tcl such that
when Tcl had data left in its buffers, it would check for more
data rather than returning what it had to Expect first. If
no data was forthcoming then Tcl would hang because the pty
driver runs in blocked mode. Recoded to use nonblocking mode.
Yi Luo noted that multixterm xterms were
reporting the parent's X window ids (via the WINDOWID env
variable) instead of the new ones.
Dick Van Deun noted that kibitz expects
to find write in /bin but it is in /usr/bin on Slackware.
Seems safe to drop the prefix.
Steve Lee noted that building Expect
failed on Linux when built from scratch because stty ends up
in /usr/local/bin rather than the assumed /bin. Added code to
support this.
4/20/04 5.41.0 Simon Taylor provided fix for
interact -o which was completely broken by 5.40.1.
4/6/04 5.40.1 Added scroll support to official tkterm. Copied all fixes
from/to term_expect to/from tkterm.
Kiran Madabhushi encountered interact
diagnostics incorrectly pointing to expect_background. Also,
found multiple -o flags behaving unexpectedly. Added diag.
Kristoffer Eriksson noted typo in SIMPLE code
in exp_inter.c. However, this is extremely unlikely to affect
any machines.
Reinhard Max noted that "make test" failed when
run in the background. The log testcase was testing the
send_tty command. Added code in both Expect and in the test
to handle this.
1/30/04 5.40.0 Eric Raymond provided troff-related
fixes for the expect, lib, and dislocate man pages.
Rich Kennedy noted a bug having to do
with our caching of whether we have registered a filehandler.
This broke when Tcl was setting a handler on the same file.
Ken Pizzini provided patch for
leak in spawn error handling.
Pete Lancashire noted autopasswd
example broke on Solaris which capitalized prompts.
7/31/03 5.39.0 Poorva Gupta noted that grantpt/unlockpt
order was backward. Strange that this was never a prob before!
Andreas Kupries noted that
in exp_command.c, Tcl_GetChannelHandle expected a ClientData*,
but got an int*. sizeof(int) != sizeof(ClientData) on 64bit
platforms. Crashed the command on a PA-RISC 2.0 machine with
--enable-64bit set. Fix: Use temp. variables of type ClientData
to retrieve the fd's, and copy this into the actual variables,
with a cast to int.
More fixes from Andreas to sync this version with SF.
Fixed: exp_chan, weather, exp_main_tk.
Eric Raymond provided a troff-related
fix for the multixterm man page.
7/29/03 5.38.4 Nicolas Roeser noted confusion with md5 so
I made the Expect page more explicit about which file that hash
was based on.
7/11/03 5.38.3 Josh Purinton noted that earlier fix wasn't quite right. Exit
on INT/TERM should cause Expect to exit with signal embedded in
status. He also requested I obfuscate email addresses in this
file.
7/7/03 5.38.2 Guido Ostkamp and Igor Sobrado
noted that fixline1
rewrote scripts to be expect scripts even if they were expectk
scripts.
5/27/03 5.38.1 Dirk Petera noted that any_spawn_id
used to work but did no longer. Looks like a bug left over
from the the I18L conversion. Fixed.
Steve Szabo noted exp_log_file -open channel failed. Fixed.
Fixed bug from 5.31 that prevent stty from returning messages
from underlying program.
Thomas Dickey noted that ncurses
ignores 2-char term names because of, well, poor assumptions
and coding. Changed tkterm to use longer names.
Heath Moore noted that exp_clib could
lock up if remtime happened to be precisely 0. Recoded to
avoid.
At request of Per Otterholm , wrote
script to read from stdin and echo passwords (exercise 9 in Tk
chapter of Expect book). Added to example directory as
passwdprompt.
Josh Purinton pointed out that
by default, SIGINT/TERM should cause expect's return status to
be 1, not 0.
Paul Reithmuller noted that
unbuffer shouldn't postprocess its output. Added stty_init.
Mordechai T. Abzug noted that
log_file wasn't recording -append status.
James Kelly noted weather example
needed new source.
Dimitar Haralanov noted that
interact dumped core with interact { timeout 1 }
7/18/02 5.38.0 At request of Hugh Sasse added md5 hash of gz
to homepage.
Dave Schooler reported that send -s wasn't
handling certains chars correctly. Turned out to be those
that had multibyte UTF8 reps. send -s was just pumping out
hunks of bytes without regard to UTF boundaries and evidentally
Tcl's I/O engine thought that it should translate a partial
UTF8 character into, uh, something else.
Curt Shroeder fixed bug in rftp - a
a filename looked enough like a 3-digit diagnostic that the
script got confused.
4/16/02 5.37.2 Multixterm couldn't find man page all the time.
4/16/02 5.37.1 Made multixterm handle user-supplied args.
4/15/02 5.37.0 Added multixterm to example directory.
4/8/02 5.36.1 Backed out CONST qualifiers. Too much trouble with older
versions of Tcl. I'll let someone else worry about them.
4/8/02 5.36.0 Made first cut at multixterm, a replacement for crlogin.
Fixed bug in background handler. If an action waited on the
same spawn id, esPtr would become invalidated.
Ryan Schmidt noted configure didn't
recognize MacOS X. Downloaded new config.guess.
Andreas Kupries provided CONST
patches to accomodate Tcl changes per TIP 27.
2/25/02 5.35.0 Joe Eggleston noted bug in full_buffer test.
The test hadn't been I18'd properly and was testing chars
instead of bytes. Also fixed diagnostics so it printed when
it was testing full buffer even if there wasn't one.
2/7/02 5.34.1 Bruce Hartweg noted that direct spawn
ids were not being tested so something like "expect -i exp9999"
would dump core. Evidentally a bug from the 5.31 transition.
12/20/01 5.34.0 Don Porter provided package-related
fixes for test suite.
Brian Theado noted that interact's -re
support broke when offsets kicked in. Turned out that the
regexp engine supports them during execution but the results
are delivered RELATIVE to the offset. (I suspect this was done
due to expediency.)
10/1/01 5.33.0 found that expect's diagnostics
didn't include the "no" after testing for a full buffer.
Hemang Lavana noted that "debug" (Dbg_On)
calls didn't always force the debugger into step mode.
Martin Kammerhofer noted that the man
page neglected to document interpreter -eof.
Chris Clare provided fix for
multiple decl in C lib.
Sheng Wang found interact's
can-match code had broken. It was missing the special hook
that Henry had added just for this purpose. How strange.
Dieter Fiebelkorn requested addition
to config.guess for Power*Macintosh:Darwin for MacOSX.
Aside - to download latest config.guess:
cvs -d :pserver:anoncvs@subversions.gnu.org:/cvs co \
autoconf/config
Added pipeline example to unbuffer man page.
8/4/00 5.32.2 Allen J. Newton provided code for
generating passwords with special characters in mkpasswd.
Brent Welch changed the fix1line
install script so that "autoexpect" and other scripts that
get installed into the platform-independent bin directory
generically invoke "expect" from the users PATH instead
of hardwiring the platform-specific expect pathname.
TclPro 1.4 released with 5.32.2 bundled.
7/13/00 5.32.1 Uwe Klein reported segfaults from reading
nulls. Due to code rewrite in 5.30->5.31 transition.
5/14/00 5.32.0 New version for timing with Ajuba TclPro 1.4. This version
of Expect has no new features or behaviors but a lot has been
fixed since 5.31.0.
Martin Buchholz noted that his
alphaev56-dec-osf4.0e has ptmx and ptmx_bsd (and ptm, pts,
pty, ptym). He suggested that BSD things are now usually
deprecated so to skip ptmx_bsd if ptmx avail.
Chang Li noted that debugger's bp cmd
broke on every command. Was a bug in breakpoint_trace from
when we installed the new regexp engine.
Jonathan Kamens fixed printf formats in several pty diags.
rm_nulls -d was set to wrong value.
5/12/00 5.31.8 After receiving yet another request for fully versioned
archives, gave in.
Signal handler sometimes sent error to stderr inappropriately.
4/27/00 5.31.7 Rob Savoye fixed Debian ptys and properly checking of libpt.
3/8/00 5.31.6 Petrus Vloet noted that Expect
installed tclRegexp.h which included regex.h which of course
misbehaves when it reads the system's version. This is new
since 8.0. Since I need to revise the Clib anyway (which
is what this install was for), I'll back this out for now.
3/6/00 5.31.5 Larry Virden noted that configure checked for threads twice.
2/19/00 5.31.4 Omer Azmon note errors in
pty_termios.c in exp_pty_test that caused problems during
pty testing.
Jeffrey Hobbs recommended having configure accept and warn
about --enable-threads.
John Ellson noted configure's autoconf
testing had leftover debugging code. Also provided a fix for
building w/shared libs on HP - appeared to be leftover from
earlier Tcl-required configuration that has now disappeared.
Susan Muston noted that exp_wait with
no spawned processes exited immediately which is different
than 5.29 behavior which reported "no children". This new
behavior was evidentally a gratuitous change during the
channel driver addition. Backed out. At the same time,
neither behavior matches documentation - doc should be fixed
and improved except I'm not sure if the behavior should yet
be something else (depending if stdin closed or not).
istvan.nadas@epfl.ch reported "spawn cat;exp_open" failed.
Uninited variable.
Scriptics reported memory leak. Was bug in parse_expect_args.
"Michael P. Reilly" noted clib was hanging
in spawn code. status_pipe wasn't being closed.
Egil Kvaleberg provided fix due to new gcc
which defines strchr as a macro.
Dave Morrison noted some printfs
in exp_log.c that misinterpreted embedded %'s with resulting
core dumps.
Dick Goodwin noted that "system echo
foo" returned with no apparent effect. Due to closeonexec
in expect's channel driver. Added skip if std channel.
Fixed similar bug in stty command. Minor bug left in stty
which isn't passing output back from underlying exec.
Stacy W. Smith provided patch that uses
sigsetjmp instead of setjmp that he says fixes a problem he
encountered with C lib where it stopped timing out in expect()
as if the signals were corrupted. The man page doesn't
explain the difference between these calls in a way that makes
sense as to why they should make a difference, but I'll the
names are certainly suggestive so I'll try it. He says "it
appears that the linux setjmp behaves a little differently
compared to setjmp on some other OSs. Specifically, setjmp
on linux does not save the signal context. It seems most
BSDish OSs do save the signal context with setjmp. On those
machines, it appears setjmp(env) is equivalent to
sigsetjmp(env,1) whereas on linux, setjmp(env) is equivalent
to sigsetjmp(env,0). My patch made a (probably bad)
assumption that if siglongjmp() exists that we should use
the sigXXX versions. I specifically tested for siglongjmp
rather than sigsetjmp because on linux, sigsetjmp is just a
#define for __sigsetjmp. It appears that linux will give
the BSD behaviour if __FAVOR_BSD is defined, but I didn't
know what other implications that might have.
Michael Schumacher provided fix so that test for whether
configure was out-of-date worked when not using the default
build dir.
11/1/99 5.31.3 Shlomi Mahlab noted all.tcl in CVS
but not distribution.
More notes from Keith Brown on HP cc complaints in exp_pty.c.
10/28/99 5.31.2 "Keith Brown" noted that HP cc
objected to auto aggregate initialization in
expLogChannelOpen.
10/22/99 5.31.1 Official release!
P Darcy Barnett noted Makefile could
produce "autoconf not found" for non-developers using CVS.
Made configure detect and provide advice on workaround.
Fixed bug in interact -echo exhibited in rftp example.
Ryan Murray noted Expect wasn't
handling handling 8-bit bytes correctly. I had accidentally
used Tcl_Write instead of Tcl_WriteChar.
Ashley Pittman noted that digital unix
V5.0 prefers openpty (4000 ptys) over ptmx (60 ptys), so I'm
reversing the login in pty_termios.c. This also controls
linux, but no linux hackers have weighed in on this subject
yet.
Andrew Tannenbaum noted exp_internal
command and "expect -exact" were broken.
6/29/99 5.31.0 See the NEWS file for this date for an overview. (I'm
too tired to add all the details. Maybe later.)
Fixed exp_clib so that it immediately reported failure of
exec (in spawn) rather than passing it back through pipe.
Removed error checking from ioctl(TIOCSCTTY) to pacify the
variety of (but not all) Linux systems and a few others which
define TIOCSCTTY but return an error although seem to work
anyway.
Added configure test for 0 vs 2-arg setpgrp.
Kenji Kamizono noted it was possible
to compile Linux (2.2.5) so that it recognized both openpty
and ptmx leading to conflicts. I arbitrarily chose ptmx.
10/15/99 5.30.2 Herve Tireford noted extraneous
sleep(20) in clib. Apparently left over from debugging, oops.
8/18/99 5.30.1 Added test for newer versions of Tcl that are incompatible.
Kenji Kamizono noted it was possible
to compile Linux (2.2.5) so that it recognized both openpty
and ptmx leading to conflicts. I arbitrarily chose ptmx.
4/1/99 5.30.0 Martin Forssen provided fix to allow configure
to start with LDFLAGS from environment.
Paul Tazzyman noted that log_file
didn't check for logging twice without turning off logging
first.
Ben provided updated host for
weather example.
Jonathon Kamens noted that Expect didn't build properly if
Tcl and/or Tk used build/install directories out of the usual
hierarchy. At the same time, I fixed a number of other related
problems in Makefile/configure.
Pierre Pomes provided fix
to ftp-inband. It blew up from an unprotected send that
was handed a uuencoded line that started with a -.
Autoexpect was thrown off by simple-minded [file executable]
test picking up expect directory while searching for
executable.
1/21/99 5.29.0 Martin Forssen provides mods to support INSTALL_ROOT.
Bryan Surles modified configure.in to
map DBGX to the same value as TCL_DBGX so the .so is named
correctly.
Suresh Sastry forced $LIBS to be
added to EXP_SHLIB_LD_LIBS. It's not clear to me why this is
necessary (since Tk doesn't) but he was having a problem
with openpty not being found during runtime on Linux.
Martin Forssen noted expectk was crashing if a Tcl error was
encountered. He found that exp_exit_handlers() was trying
to write into interp->result after interp had been deleted.
Added another copy to distribution site - with version number.
Stanislav Shalunov closed race in pty
code.
Fixed man page: -brace should be -nobrace.
Dan O'Brien noted that Expect needed to
call Tcl_FindExecutable at startup for info nameofexecutable.
Robbie Gilbert noted indirect spawn
ids occasionally failed. Fixed.
9/30/98 5.28.1 Brian France noted that his compiler
rejected label with no statement.
9/28/98 5.28.0 Fixed two bugs in tcl-debugger (see that HISTORY file).
Submitted Expect documentation for official NIST review. At
their request, modified a couple things.
9/21/98 5.27.0 Added support for Tcl 8.0.3. Simple compiles already work
fine but exotic things break. In particular, Expect needed to
understand new TCL_DBGX feature. Massaged debugger interface
which was recently revised.
Karun Krishnaswamy noted that pine didn't
run in term_expect. The problem was that pine uses curses
(or terminfo) directly (!!) and insists on clear-to-eol (a
really dumb thing to insist on since it's so easily emulated).
bert@xpilot.org (Bert Gijsbers) (of xpilot fame) provided patch
to passmass to handle ssh protocol and explanation of how to
create new password entries.
6/15/98 5.26.1 Dean Sauder noted C-preprocessor lines in
configure must start in column 0.
5/18/98 5.26.0 Kevin Schleicher noted xkibitz leaves xterms
if first xterm is HUP'd. Kevin also noticed a resource leak
in dislocate. Both problems fixed.
Robbie Gilbert noted expect_devtty was logging
devtty (twice) to stdout. Fixed.
Added support inttypes.h, required on Solaris 5.6 for termios.h
Kristina noted that tip failed when
spawned from a cgi script (BSDI BSD/OS 3.1 i386) because tip
didn't see a definition for SHELL and HOME. They need to be
set. (Doesn't have to be anything useful; the empty string is
fine!) Solution: documented this in Expect man page.
Zachariah Baum noted that
config.sub didn't recognize Intel 686. Found a newer version
that did in autoconf-2.11.
POTENTIAL INCOMPATIBILITY: Changed interact so that it observes
parity while matching. It used to ignore parity. This impacts
people who use interact to connect through to a real serial
device that generates parity. If matches don't work, use the
exp_parity command. (This fix should have been made years ago,
when the exp_parity command was added. It is now absolutely
necessary now that people are doing matching with 8 bits.)
After the second occurrence of a system admin who broke grantpt
by removing setuid from the relevant system util, I added an
explicit test and explanation.
Disabled history in xkibitz. There seems to be some new
incestuous relationship between history and unknown now so that
redefining unknown leaves Tcl calling history but without
knowing what it is because it's never been defined (as it would
be by the traditional unknown).
Fixed quoting bug in passwd.cgi example.
9/28/97 5.25.0 Switched back to hand-generating pkgIndex.tcl file after too
many complaints about problems running pkg_mkIndex.
8/12/97 5.24.1 Chris Schanzle pointed out that
install fails on a virgin file system because install_shared_
lib depends on a directory that hasn't yet been created.
Larry Virden gave corrections to URLs in README.
8/21/97 5.24.0 Bo Johansson noted TclWordEnd
had changed and provided fix. This caused crash in expect.
8/18/97 5.23.0 This version supports Tcl 8.0 and continues support for 7.6.
Refs to Tcl_Files dropped. inter_return and close became
obj cmds. Rewrote notifier (again) to accomodate new notifier
model. Lots of other miscellaneous tweaks. Also see debugger
HISTORY file.
Finally removed long-deprecated commands "continue -expect",
"send_spawn", and "getpid" and their exp_ versions.
Harold Brauer reported problem
with an old SCO system (i386-unknown-sco3.2v5.0) that turned
out to be due to a typo in the configure script.
Jimmy Aitken supplied mods to config.guess for brand new and
very old Pyramid systems.
Buz Owen noted memory leak in use of expect_background (with
no args).
Jonathon Kamens noted provided patch for pty_termios.c for
modern Sequent (which ptmx).
Jonathon Kamens noted that TCL defined RANLIB for shared lib
(if --enabled-shared) which isn't appropriate when Expect tries
to build both shared and unshared libs.
Jonathon Kamens noted that shared lib config didn't work on
SunOS. I had used Tcl's SHLIB_SUFFIX instead of its
SHARED_LIB_SUFFIX.
Qingyi Liao encountered core dump when
exp_bg -i $exp_spawn_any was retracted. Bug in ecmd_remove_fd.
Fixed a bunch of bugs in example/gethostbyaddr.
Josef Sachs noted that stty cannot be caught when no /dev/tty.
It calls exit instead of returning an error.
Gordon Chaffee patched
Exp_WaitCmd - it was zeroing pid element instead of wait.
Bob Manson provided fix for HP on which it
was possible for timer to be mistakenly deleted in
exp_get_next_event while processing a pty open event.
Jeff Slonaker noted that exp_poll.c
had wrong signature and poll had arguments out of order! That
would suggest that no one has ever used exp_poll.c before...
5.22.1 Larry Virden noted that TCL_BUILD_LIB_SPEC can't be used if
build directory has been removed. Added check to configure.
Worked more on package command. Buz Owen pointed out that my
code wouldn't support redefinition of TCL_LIBRARY. Bumped up
minor version to avoid package loading mishaps.
Nigel Standing noted lack of C-u binding in
tkpasswd - must be due to change in tk4.2.
Forced env(SHELL) to be defined inside kibitz for when using
with CGI.
Charles Packer noted that
CRAY-YMP needed sys/types.h in exp_console.c
Extra / when developing defn of TCL_LIBRARY. Shouldn't
actually cause any problems though.
2/3/97 5.22.0 Fixed package support - again. Sigh.
David Pasirstein noted that RedHat
Linux 2nd passwd prompt requires slightly different pattern -
modified mkpasswd and tkpasswd.
Toshiaki Nomura provided patch to
config.guess for Fujitsu DS/90.
Roger Brooks noted C lib passed
argv[0] instead of file to first arg of execvp.
Cary D. Renzema noted that a simple puts -nnl
might never appear - Expect closes all of its fds before Tcl
gets a chance to flush. Stdout is the obvious problem since
Expect thinks it can cavalierly close that too. Hmm.
At request of Tom Tromey, solved possible missing tclRegexp.h
problem by having Expect install it. Cleaned up TCLHDIR and
TCL_LIBRARY hackery in Makefile.
12/27/96 5.21.7 Nelson Beebe noted unset is not portable in /bin/sh. Removed
and converted everything to understand CONFIG_SHELL.
Modified cryptdir to strip out shell metachars from filenames.
12/10/96 5.21.6 Michael Schumacher noted that some systems cannot build
unshared libs from shared objects. Chose to go with BLT's
approach of building shared objs in separate shared directory.
Buz Owen noted that "package require Expect"
didn't work because it looked for Expect lib in the wrong
place (well, the "documented" place). The problem is that Tcl
insists libraries should be in the same directory as the
pkgIndex.tcl file while the natural thing to do would be to
split them up and put the .tcl file in the arch-indepent
app-specific scripts dir and the lib in the arch-dependent
common dir. Sigh. If this is ever fixed/changed, the
instructions in the Makefile should be fixed.
noted that expect library name
exceed filename max on some systems - like his old SCO.
12/4/96 5.21.5 Michael Schumacher noted new configure wasn't passing on Tcl's
shared lib cflags.
10/26/96 5.21.4 Achyutram Bhamidipaty ran into bugs in Expect's
file event handler which prevented expectk from entering
implied event loop. Also found one memory problem - thanks
to CenterLine.
Tom Tromey fixed handling of --enable-shared when overriding
Tcl's value et al. Tom also added missing "else true" to
Makefile: "In a Makefile, you have to always supply an "else"
clause for an "if", to work around a bug in certain versions of
sh. In some versions of sh, an "if" whose test fails will
return the status of the test if there is no "else" clause --
causing spurious make failures." See ChangeLog.
10/18/96 5.21.3 Example directory was missing several examples.
10/17/96 5.21.2 Debugger section of configure file corrupted.
10/10/96 5.21.1 Oops, distribution unpacked into wrong version.
Tom Tromey provided patch for stty to understand OSF 4.0.
9/28/96 5.21.0 Official Expect release for Tcl 7.5.
Junio Hamano provided fixes for aclocal
for with_tcl/tkconfig.
Roger Billau noted that C library
didn't work on Solaris 2.5. Turns out Solaris requires fflush
be called between input and output operations on FILE pointers.
Lots of Cygnus mods - see ChangeLog.
Sid Cowles and Hans Riethmann
noted relative path specs of
tcl-includes (and others) caused debugger config to fail since
it is at a different directory level.
Al Snow noted -C failed due to typo.
8/17/96 5.20b18 Andrew Rakowski noted no defn of
LIB_RUNTIME_DIR, a creation of Tcl7.5p1.
Tom Tromey added -v to Expect and -version to Expectk.
Ben Boule noted that Interactive (IUNIX)
requires 9 char max length after -l. Looks like squeezing out
the "." is sufficient. He also noted that IUNIX needs -Xp in
LIBS to find strftime. This test should really be done by Tcl.
8/12/96 5.20b17 Glen Biagioni noted interact -re "A(xx)"
failed to match. Problem turned out to be that Tcl 7.5 changed
a constant which in the regexp code, which Expect didn't see
because it provides its own defn for interact. Alas, the one
thing Expect reuses from Tcl was where the change was. This
should really be fixed so Expect doesn't rely on Tcl in this
way, but there's no point in putting in a lot of work on regexp
when we're anticipating a new one soon anyway.
Bjorn S. Nilsson noted fixcat hangs.
Turned out that new Tcl (7.5p1) now waits for all children to
disappear. But Expect still had a handle to a child. I added
an exit handler to close the connections before Tcl's exit
handler.
Tom Tromey provided patch to support augmenting CFLAGS on
Makefile invocation.
Gary Merinstein noted that configure failed
on his linux unless it had --enabled-shared. Not quite sure
about how this can be, but the flag wasn't being passed to the
debugger's configure, so I've fixed that and hopefully this
will cure the original prob.
Added initial announcement of full version at beginning of
configure. This should ease my pain in responding to people
sending me config output without including version numbers.
Tom Tromey noted expect_cf.h was machine dependent. Fixed
expect_comm.h so that it no longer required expect_cf.h (which
should be renamed to indicate it is no longer public).
Bart Robinson provides mods to support
openpty() in FreeBSD/NetBSD. Without openpty, Expect doesn't
see the full pty namespace (ptyX[0-v]).
7/15/96 5.20b16 Nathan Estey noted that Makefile failed
on SunOS when shared libs were enabled due to incomplete dot
stripping in lib prefix.
7/6/96 5.20b15 Malcolm Tredinnick noted that shared
lib has to be installed before building expect. Also noted
that ldconfig should be run on Linux 2.0 systems and maybe
others.
6/25/96 5.20b14 Tim Mooney provided fixes to obey --includedir and similar
configure conventions.
6/25/96 5.20b13 A bug when installing Expect using new _installed targets.
6/24/96 5.20b12 Numerous complaints from Solaris users about shared libraries.
Unfortunately, no one is giving me configure-ready fixes so
(and Tk's configure seems to have bugs as well) so fixing
these is like throwing darts.
Stan Brown noted noidle example broke when
fed "-".
Gordon Irlam noted typo in install-sh.
David Sheinberg noted no
args test for spawn -open/leaveopen.
Misc patches from Tim Mooney to pacify much of gcc -wall.
Kayvan Sylvan insists Linux stty reads from stdin so added
hardcoding to configure.in for that. In xkibitz, Linux stty
-raw didn't disable all post-processing. How odd that it is
not a problem in interact. In the meantime, added extra stty
to xkibitz to do what was missed.
5/30/96 5.20b11 Kayvan Sylvan noted quoting bug in
autoexpect.
5/22/96 5.20.b10 Patches from Larry Virden in Makefile.in and exp_int.h
5/20/96 5.20.b9 Too many substitutions in configure caused sed failures on
DEC (limit 99) and HP (100). Commented out definitions
that weren't absolutely critical. Hopefully, this gets us
under the limit but can't be sure since there's no easy way
of knowing.
Numerous mods from Mark Diekhans to support clist-style ptys
on SCO OpenServer. (He says SVR4 ptys are broken on that
platform.)
Simon J. Gerraty says that write()
returns 0 inside of exact_write on SunOS. This is outside the
SunOS spec so of course we have no idea what's going on. So I
added code to try and recover from (or at least warn of) this.
Tom Tromey unified decls of errno to #includes.
5/13/96 5.20b8 Tim Mooney pointed out
backwards stty test - this would have corrupted every platform!
He also pointed out that alpha-dec-osf3.2 (3.2c) complained
too many args to sed. Someone earlier said similarly about
HPUX 10, but I assumed it was the quotes in the weird stty
flag I was passing, so that "fix" wasn't. GNU sed has no
problem, but obviously this is not sufficient for many people.
5/10/96 5.20b7 Renamed/numbered versions so that it's easier for others to
track.
Upgraded to autoconf 2.10.
Matthias Kurz noted Makefile problems
with final Tcl7.5.
Blair Zajac noted configure mishandled
stty defaults on HP and shared lib must be installed executable
on HP.
autoconf insists on adding -O to CFLAGS when using gcc. Ack!
3/23/96 5.20b1 Beta release 1 of Expect for Tcl 7.5.
Michael Hunter provided misc mods for QNX.
Various people reported problems with IRIX. Removing from the
stty list fixed the problem. Similar problem with Solaris.
Added explicit close to autoexpect. Added a mechanism for
enabling conservative mode after script is generated.
Hal Schechner pointed out passwd.cgi must
meet passwd's requirement that it not be run by an unrelated
user. Easy enough - just do an su first.
3/26/96 5.20a5 Alpha release 5 of Expect for Tcl 7.5b3.
Added example passwd.{html,cgi} to change a password.
Many fixes from Stephen Williams
and Jonathon Kamens for Makefile and configure.
3/22/96 5.20a4 Alpha release 4 of Expect for Tcl 7.5b3.
Added version number to lib directories (POTENTIAL
INCOMPATIBILITY).
Revised gethostbyaddr example - evidentally hadn't worked for
some time!
Jan Nijtmans provided pkgIndex.tcl.in.
Renamed Exp_Init to Expect_Init to support package cmd.
Provided #define so that Exp_Init will continue to work.
Revised exit handling so that it works if Expect is dynamically
loaded.
aclocal.m4 Patches from Tom Tromey.
3/15/96 5.20a3 Alpha release 3 of Expect for Tcl 7.5b3.
Edward Haletky noted that Machten required
inclusion of types.h in exp_tty_in.h.
Added various patches from Rob Savoye. One incompatibility
is that the static lib now ends with the version number.
Added support for TCL_SHLIB_{LD_LIBS,VERSION} in Tcl b3.
Jonathan Karges found that clib
was timing out immediately on -1.
3/6/96 5.20a2 Alpha release 2 of Expect for Tcl 7.5b2.
Leland Joseph noted
expect-tests.exp exceeds the 14 character filename length.
Added config.{sub,guess} to support AC_CANONICAL_....
Rewrote much of aclocal, configure.in, and Makefile.in
to handle Tcl/Tk config.sh files and shared/dl support.
Simplified varargs/stdarg mess for Expect's C library.
Threw away closetcl junk. No longer required because
Tcl finally started doing close-on-exec.
Incorporated various fixes from Tom Tromey at Cygnus.
See ChangeLog for details.
Added require/provide support.
Rejiggered event handling to support new Tcl_File interface.
Removed libexpectk. Because event loop was moved into Tcl, it
is no longer necessary for it to be different than libexpect.
Removed all support for earlier versions of Tcl and Tk.
Numerous misc patches from Paul Eggert
most to support Tcl 7.5.
Arnold Robbins supplied yet another patch to fix earlier
problem noted by Hume Smith.
David Engel reported problem with Linux
dumping core. CenterLine, of course, immediately found the
problem - uninit'd lowercase buffer.
Peter Haggerty noted that his Next
died in cron. It seems that Next doesn't support O_NOCTTY
(even though the man pages says it does) and so during pty
testing, control terminal would get allocated and then kill
the process (by generating a HUP) when deallocated. Avoid
by ignoring HUP when doing pty testing on such machines.
1/3/96 5.19.0 Fixed bug that made expect report wrong string when using
a terminating anchor in a positive-length glob match,
reported by Graham L. Randall .
Added rlogin-display to included examples. rlogin-display
automatically propagates your $DISPLAY when you rlogin.
Hume Smith noted problem
with day of the week calc at year end/start. Arnold Robbins
supplied fixes.
Jonathan Kamens provided fix to make sync byte reads
recover from EINTR.
Henry Spencer noted errant line of spaces in Makefile.
10/21/95 5.18.1 Began adding support for tcl7.5a1/tk4.1a1. (not finished!!)
- Make aclocal understand new Tcl/Tk directory layout
for finding tclInt.h and private libraries.
- Added support for Tcl_AsyncReady.
Paul Townsend noted that distclean did
not remove some config cruft. Also recommended unsetting
M*FLAGS that cause make called from configure to fail.
Various fixes from Cygnus. See Changelog.
Deleted "-" before rm in loop in deinstall in Makefile as per
Doug Claar . Doug also found prob
involving recent STTY fix. Symptom was that pty wasn't
correctly inited in cgi scripts on HPs - and Cray pty support
blew up entirely.
Added exp_ prefix to tests so that they can be run with other
extensions.
Seth Ornstein noted bug in the
way rftp detected symlinks.
Upgraded to autoconf 2.4. This fixes a bug in AC_PROC_CPP
which blew up when CPP was defined in the environment. Noted
by John Pfuntner.
Jonathan Kamens noted that library didn't check return pipe()
return value.
Added vrfy example.
Przemek Klosowski Irix 6.0 fails
to use ptys that have been used by someone else. SGI admitted
this is a bug and the solution is to upgrade to 6.1.
Yoad Grinberg noted "expect -timeout" mistakenly ate next arg
as pattern.
8/24/95 5.18.0 Wayne Christopher noted that the way exp_eval_with_one_arg
modifies the original argv makes the ICEM Tcl compiler unhappy
so I rewrote it to avoid that.
Ian Zimmerman found that a braced arg list of
a single pattern beginning with a \n caused expect to reeval
for multiple args twice. I added a -nobrace flag that expect
and/interact can use internally to prevent this.
Florian La Roche noted a few
glitches in the way -ltcl was searched for in aclocal.
Joachim Posegga noted lack of Tcl
internal includes should be an error during configure.
8/10/95 5.17.8 Martin Wunderli found missing
quote in config.
Danny Faught noted problems in Makefile when passing STTY defn
with quotes. Created another a STTY-less CPPFLAGS for cases
where additional reexpansion occurs.
Danny Faught noted bug in error handling for checking
permission problem with /tmp.
8/1/95 5.17.7 Todd Rimmer noted that HP 10 with
optional streams package has both PTYM and PTMX which conflict
in pty_termios.
Rainer Wilcke provides fixes: scripts not listed as dependency.
distclean target used Makefile after deleting, and many fixes
to man pages.
Saad Mufti noted bug in how C library
handled polling (when handling multiple fds).
Jeff Bowyer noted more autoexpect bugs.
7/22/95 5.17.6 More features added to autoexpect (now version 1.3).
Sanjay noted bug in TCLH config
macro which caused it to use 7.3 instead of 7.4.
Rodney Barnett noted expectd.proto had a
few refs to interact_out where it should've had expect_out.
Terry Rhodes noted that Expect returned a 0
exit status upon syntax error unlike tclsh and wish.
Fred Obermann noted that Unixware 2.01
native development tools don't permit configure to find memcpy
because memcpy is handled specially by the compiler and it
complains when it finds configure's default test with no args.
Changed to a hand-crafted test with args.
7/12/95 5.17.5 Jeff Bowyer noted minor bugs in autoexpect.
Rob Saul noted that configure failed on SCO
OSR5 because trap requested by Cygnus (to allow config in bg)
used higher traps than SCO sh knows about.
Changed "can't happen" to "xmkmf is broken" when configure
fails to compile simple C-Tk program.
John H. Chauvin noted exp_tty_current
and cooked raised multiple def errors on SGI 5.3 with native
cc.
7/9/95 5.17.4 Wolfhardt Lotz noted Solaris
doesn't do case-insensitive man page lookups so I lowerized
the beginning of the .SH lines.
Henry Spencer noted unbackslashed quotes in the autoexpect
boilerplate.
7/3/95 5.17.3 Modified VARARGS decls to support new Tcl 7.4 definitions.
Fine-tuned aclocal so that it would prefer later versions.
Added autoexpect example and man page.
6/30/95 5.17.2 select-based dsleep() was returning an internal expect-style
return code instead of a Tcl-style.
6/30/95 5.17.1 Kannan Varadhan noted aclocal didn't
look in right directories to find Tk.
6/30/95 5.17.0 Modified regexp interfaces to support Tcl 7.4b4.
Mods from Tony Isles for Sequent Dynix/ptx
V2.1.5 (which is really old).
Michael Schumacher noted that Solaris
2.4 header files require __EXTENSIONS__ for all sorts of
traditional but non-standard definitions.
Modified aclocal to support new Tcl/Tk library names.
George Forman requested support in
C lib for fds that already exist. I added exp_spawnfd.
Fixed bug preventing signal rearming on Linux (using SV-style
signal handling).
Wayne Christopher noted missing
interp in call to exp_error.
Added null support to interact's exact matching.
Bruce Jerrick noted INSTALL was being used rather than
INSTALL_PROGRAM/DATA.
Dennis Ferguson noted that on Solaris 2.4
close(pty) occasionally returns EINVAL.
Added tests so that if we can't get a pty, we can give the user
much more help with what to do about it.
Steven Byrnes noted that Solaris has replaced TIOCCONS with
SRIOCISREDIR interface.
Technically speaking, interact shouldn't do buffer-shuffling
but I've added as a fail-safe mechanism to catch people who
use preposterous patterns.
Alan Heckert noted missing decl in
Convex pty support.
Fixed all expectk examples for Tk4.
Bryan S. So noted that interact -o eof failed
if an unbuffered pattern was partially in progress.
Added -timeout flag to expect command to override timeout var.
John Pfuntner noted that OpenMVS did
not notice @ inside of Makefile SETUID macro as suppression
but instead treated it as part of the program name.
Jim Porter noted that exp_free_i
freed the variable name even if not allocated.
Yet more mods to aclocal and various .in files from Rob Savoye.
4/21/95 5.16.3 Matija Grabnar noted that sleep maxed
out after about 36 minutes. Turned out to be a poor assumption
in some interfacing code.
4/19/95 5.16.2 rbd noted tcl_RcFileName multiply defined
when compiling with Tk4.
4/16/95 5.16.1 Robert Nicholson noted NextStep's
sys/wait.h is not POSIX-like so WNOHANG fails to get a defn.
Alexandre Rafalovitch discovered
example on dislocate man page didn't work. I fixed it.
4/8/95 5.16.0 gcc 2.3.3 complains about internal errors so I figure: time to
upgrade. Switched to Cygnus 2.6-95q1. Works now but now
complains about wait status. I trashed all the gory wait
status configure code and adopted autoconf's suggestion about
refusing to use sys/wait.h if not POSIX.1 compatible. Nice!
Jeffrey C Honig requested a -gmt
flag for timestamp command.
Chuck Ocheret noted that expect -pty
fails. Problem is that Tcl's exec blindly closes all the fds
between 3 and its own highest fd. See comments in code.
Loris Caren noted eof in fg bombs on
Linux. Turns out to be analogous to eof in bg problem fixed
in 5.14.0.
Upgraded to autoconf 2.3. Continued making changed to config
script to take advantage of autoconf 2 capabilities.
4/1/95 5.15.4 Steve Simmons noted .x remnant from earlier dir install proc.
3/31/95 5.15.3 Forgot to export TCLHDIR defn when configuring debugger.
3/29/95 5.15.2 Steve Simmons noted Makefile multiple defined
distclean and it might be nice to provide aclocal.m4 even
though it isn't normally used.
cevans@resdev1.ppco.com added prompts to passmass for AIX.
3/27/95 5.15.1 Fixed tkterm script - inadvertently left tic debugging on.
Also add support for Ctrl-space and Ctrl-@ as requested by
Zbigniew Wieckowski .
Larry Virden asked that configure also check for .so libs.
3/23/95 5.15.0 Everitt Beers noted that Linux doesn't
support kill -STOP 0. Changed 0 to [pid].
zhengping (z.) you found bug where a bg expect
did not rearm a spawn id after a first bg expect (and another
one) to clear it.
Elliott Wolin noted that tkterm
complained if tic wasn't found. I'll have it override the
user misconfig in that case. Also noted that interact failed
on AIX. Evidentally, my new config tests for ISC found that
AIX looked just like it. Added additional test for tcsetattr
to distinguish them.
Rob Savoye asked for Dbg config.in to be distributed. Rob
supplied numerous other mods: install-sh replaced install.sh,
mkinstalldirs, testsuite mods, new aclocal.m4, support for
recursive make.
Fixed bugs in configuration of debugger.
Disabled configure's file-caching.
Kannan Varadhan noted incorrect diag
reporting TCLHDIR in configure.
Marty Olevitch noted that DEC Alpha
did not sleep correctly because configure didn't find sleep
and found poll (which is broken). Problem turned out to be a
bug in autoconf's AC_CHECK_FUNC. Got patch from Jim Meyering
Fixed config probs for Edward Huie on Mac
SE/30, System 7.1, Tenon Intersystems' MachTen 2.1.1-G (BSD 4.3
on Mach kernel) and MachTen X11R4 3.1.
Moved libraries forward in configure to allow for AC_CHECK_FUNC
to succeed when funcs are in other libraries.
Made configure test for Linux and unset CFLAGS=-g if so.
2/25/95 5.14.3 Larry Virden noted configure was missing brackets in raw shell
cmds evidentally due to m4 interpretation.
2/24/95 5.14.2 Larry Virden noted configure was not correctly rewriting from
--(exec-)prefix. Due to new autoconf. Also noted glob was
finding tclX directory.
Hal Peterson noted that because configure now actually attempts
a link before using a library, the code to check for -ltk would
have to worry about all the other utility libraries first.
2/23/95 5.14.1 Hal Peterson noted that configure.in checked incorrectly for
tcllib.
2/22/95 5.14.0 Jamal noted Linux has tic in a
different place than on my system - affected tkterm script.
Xiaokun Zhu noted problem on DEC
Alpha OSF/1.3 evidentally due to backwards decl of index macro.
Greg McFarlane noted that large args in
send cmd cannot be passed blindly to exp_error.
david d `zoo' zuhn requested modifying
configure so that it did not require Tcl/Tk to be built - only
configured. This means that it may not find installed
libraries. Hopefully, this won't cause anyone problems but its
not my preference.
Fixed error which caused spurious eof when changing patterns
in expect_bg.
Moved to autoconf-2.1 and m4-1.4. Rewrote a LOT of the config
file. Finally got my hands on an ISC box and fixed configure
for that.
Tony Booker provides mods for Sequent ptx 2
and 4.
Jeffrey Friedl provided fixes
for timezone handling in config and exp_strf.c.
David Schmitt noted that library did
not detect eof on HP. I didn't think this was necessary for
read() but it evidentally is. I added the support for raw fds
although it is not obvious to me how to do it for FILEs.
James Carter noted expect_after couldn't
worked in the exp_bg because I had accidentally written BEFORE
instead of AFTER when checking the cases. He also found that
the eof body could be trashed in an exp_bg.
Ousterhout apologized for the Tcl7.4 change I noted in 5.13.1
and said he will undo it.
Eric Frias found library bombed after
timeouts. exp_match_end was not updated - which makes sense
since there was no match - however the following expect call
assumed that exp_match_end was meaningful in order to do its
buffer shuffling.
Jonathan Kamens supplied new configure test for REARM_SIG after
noting old could fail if limit prevented creation of core file.
He also noted REARM_SIG had accidentally been commented out
of cf file.
Vincent D. Skahan noted
that Apollo's stty reads stdout and doesn't complain if its
bogus.
Yoad Grinberg noted that SIGCHLD does
not work for forked processes, only spawned processes. Fixed
this and added counting to make sure none get lost.
Hal Peterson contributed mods for Unicos. He noted that
configure should be more careful adding libs to the link line.
On the Cray, non-existent libs generate warnings which are not
detected by configure but which annoy make.
Bela Gazdy noted /etc/resolv.conf
misspelled in kibitz.
Rainer Wilcke noted that "send -null/break" mishandled return
code, and these and send/expect_tty were not in man page.
Dvorak example was missing -- in send -.
1/12/95 5.13.2 Peter Wassenaar noted that kibitz
didn't work on AIX. My fixcat script assumed that AIX's cat
was like HP's cat - buffered by default.
1/7/95 5.13.1 Marc Bouron noted I forgot to
add virterm to distribution.
Marc W. Mengel noted that configure
must be run in the foreground due to the stty tests. Added
this to documentation.
Modified interpreter to account for the change in Tcl7.4 which
forces Tcl_RecordAndEval to call Tcl_GlobalEval instead of
Tcl_Eval.
Changed ptys to be initialized based on current tty setting
rather than original tty setting.
Stephen Melvin noted that set -e is the real
problem with ash (see 5.13). I bet "[" is returning a value
and triggering it. It appears that the script can live without
the set, so out it goes.
Braun Brelin noted pipe allocs in spawn
could fail with meaningless error message.
12/15/94 5.13.0 Synchronize with appearance of "Exploring Expect". This
distribution corresponds to the book both in description of
Expect and in containing all the substantive examples.
Graham Mark noted that his Cray (Unicos
7.0.6.1) didn't recognize TCSETCTTY. Since this was in some
Cray-specific code, I guess Unicos must have changed some .h
files. I made it include either termios or termio. It, at
least, works on our Cray (Unicos 8.0.2.4).
Robert Withrow noted that FreeBSD 1.1.5.1
supplied union wait but waitpid doesn't use it! So I modified
configure to be smarter. He also noted that its /bin/sh is
really ash which blows up on install.sh. It appears that it
doesn't handle uninitialized parameters correctly. I'm not
going to fix this because having a broken /bin/sh is so awful
probably other things are breaking too. He did note that it
worked if he switched to bash or the native install, but that
blows the whole point of install.sh - that we have found too
much variation in native installs. Rather than try and figure
out everyone's variation, we'd like to simplify our life and
use this common, simple-to-understand sh script.
Added more example scripts: Adrian Mariano's virterm (like
expect_term but without relying on Tk), gethostbyaddr, and
expectd.proto for telnet daemon.
Matt DiMeo noted that expect_background
failed to detect eof on HP. I had forgotten to pass the mask.
Josef Sachs noted that expect_background put Tk's event handler
in an infinite loop if it was listening to a pipeline that was
killed. I had aborted the cleanup procedure if Tcl's close
reported an error. That was a mistake.
Rick Lyons noted a bug. C lib
expect would turn a normal read into a poll if remtime reached
zero on the nose.
Added ResetResult to Exp_Init to clean up diags in Expectk.
Made GENFUNCs return -1 on error as per ParseArgv's convention.
11/13/94 5.12.0 Alon Albert noted that in clib, exp_match_end should be init'd
to exp_buffer before trying to match the pattern - if the
expect doesn't produce a match, exp_match_end is incorrect and
will be wrong for subsequent expects.
Steven Diamond noted that fg expect did not react to a change
in an indirect spawn id list if it was just waiting for I/O
(rather than looping in exp_continue).
Wait fix in previous version broke system() whose return value
is horribly overloaded.
11/10/94 5.11.0 Stephen Fitzpatrick noted that NeXT wait
macros do not accept int wait status. Switched to using Tcl's
detection of wait status type.
Made log_file -leaveopen leave file id open until close like
spawn -leaveopen did.
Bruce Jerrick noted public include dir
wasn't getting created.
Karl Vogel noted 1) Pyramid has index instead of strchr, strf.c
needs sys/time.h instead of time.h in strf.c, needs to call
timezone(), and stty reads stdout but usual stty test fails.
Made expect_out(spawn_id) always be written to assist people
who want to log different procs to different files. This is
no longer an efficiency problem because interact can do so
much more then it used to. Made full_buffer condition write
forgotten chars even when full_buffer isn't explicitly
specified.
Bert Robben noted that the
debugger needs to know about the presence of stdlib.h. I was
hoping to avoid this because it's a pain getting configure to
call another configure.
Rainer Wilcke provide several improvements for xkibitz and man
page.
10/6/94 5.10.0 Moved example files around. Added password generation to
tkpasswd. Created standalone script to generate and set
passwords - good for all those adduser shell scripts.
Rick Cady found a bug when switching log
files.
Rainer Wilcke noted that xkibitz died when
closing a connection. stdin was mistakenly being closed. He
also noted that killing xterms under HPUX 9 requires kill -9.
Enzo Michelangeli noted that SCO 3.2.1
defined window size structure in ptem.h.
Josef Sachs found a bug when calling fg
expects repeatedly between bg expects. On the first fg expect,
it cached the fact that the filehandler was armed. The next
background expect disarmed it but failed to update the cache.
John P. Rouillard" provided configure
support for --with-{tcl,tk}{lib,include}.
Mike Figg noted that man page used old style
of continue command.
8/23/94 5.9.1 Adrian Mariano noted it would be useful to have exp_continue
not reset the timer. Added flag to support this.
Morris Gasser noted that lowering match_max
didn't work (lib was broken too).
Keith Hanlan provided a fix for exp_exact.
Added more examples: mkpasswd, tkterm, term_expect.
Put close_tcl_files in sep file for easier non-Tcl use of clib.
8/21/94 5.9.0 Fixed window handling code - on AIX, termios does not define
TIOCGWINSZ. Instead, you have to include ioctl.h. Of course,
you have to avoid the trap of including both on OTHER systems
such as SunOS 4.1 where the include files conflict!
Dan MacDonald found that close in async routine caused sync
expect to blow up.
Missed deletion of last line of out macro in exp_inter.c
Simon Warfield noted bug in xkibitz
help message.
Fixed exp_background to use global scope instead of current.
Steve Diamond noted that -i "4 5"
only used spawn id 5.
Rob Nagler found yet another bug in log_file when called
incorrectly.
Expectk wasn't creating a window by default.
7/25/94 5.8.1 Made exp_interp external. Users should be able to set this
explicitly.
David Barnett found that Linux was not
getting a controlling terminal. The original test for doing
that was based on Stevens and tested in a very nonspecific way
for the presence of a Sun via CIBAUD. Replaced this with a
more specific test.
It seems Tcl 7.3 broke my -nostack hack. The top-level interp
translates unknown return codes to TCL_ERROR. Sigh. I wish
Ousterhout would stop all of those translations. If the user
wants them, they can do so themselves, but now they're forced.
Martin Buchhoz suggested adding
XKIBITZ_XTERM_ARGS environment variable to xkibitz. He also
noted that stty rows/columns support doesn't seem to work on
AIX. I haven't yet looked into this.
Copied 2nd sync mechanism from Expect to C library.
Added exp_child_exec_prelude hook.
Jonathan Kamens noted that "spawn cat;close;wait" returned
-1 on AIX and 0 on Sun. This is "correct", however to
address this, I added -ignore to spawn and otherwise made
signals default. Also added extra information to return value
of wait if caused by signal.
Dan MacDonald noted that
exp_continue didn't cause timeout to get reread.
Ting Tan noted that when using -b, expect
hangs if open brace and doesn't stop in case of error.
Oops, broke "log_file" with no args.
Removed -timestamp from documentation. Use "timestamp" command
instead.
Keith Hanlan noted C library didn't test already arrived data
before attempting to read more. He also suggested I avoid
forcing the user to do save/restores of per-fd globals.
6/24/94 5.8.0 Hubert Halkin pointed out that interleaved
expect_bgs and spawns dump core. I had used the exp_f ptrs
as handles to TkCreateFileHandler but realloc shuffled them
around.
Rick Lyons provided misc. mods
for Pyramid.
Keith Hanlan noted that HP-UX C compiler
causes odd behavior in Expect when it is compiled with "-O.
-g" works fine.
Peter Gasche pointed
out that Convex 10.2 fails to build. New version of Convex OS
added getpty(). Naturally, it differs from old one. Testing
is tricky because there is no header file for it. Even worse,
the algorithm in the Convex man page is incorrect - it allows
you to allocate ptys already in use! Unfortunately, the man
page is too vague to allow the reader to see that immediately.
In contrast to BSD stty, Convex, Mach, and NeXT stty don't
complain if redirected to null. I'll just have to hardwire the
test in configure.
Added -nowait flag to wait command.
Upon suggestions from David Vezie :
Added -noappend, -open, and -leaveopen to log_file command.
Added -leaveopen flag to spawn and exp_open.
Modified spawn to close -open immediately.
Modified exp_open to close spawn_id immediately.
Between Jeff Wright , Brad
Skrbec, Arup Mukherjee , and the anonymous
Mach support group at CMU, finally got hard answers about Mach.
It is no longer supported and there is no intention to provide
full POSIX support. Now, at least, I can fix the configure
script to understand this.
Added "unbuffer" example.
Dana Chee provided configure hooks
for finding -lnsl and -lsocket.
Henry Spencer noted timestamp doc did
not jive with C defn. Fixed doc and added timezone support.
Steve Pynes noted that exp_win.c needs
_IBCS2 (Intel Binary Compat Standard #2!?!) before it will
recognize winsize. He also noted #out was redefined in inter
code if using simple_event.
Fixed defn of "stty cooked" to retain echo setting.
Bennett Todd noted dislocate's pidfile_read was missing close.
He also noted useless bind in tkpasswd.
Marty Leisner noted that ^C causes xkibitz to exit ungracefully
when in interpreter.
Added yet another sync mechanism (see 5.6) to spawn so that
child cannot eof before parent has prepped the pty (only a
probably on HPs, of course). I had actually written most of
the code, but left it disabled because I hoped that the
problem simply wouldn't happen in practice. Alas, Jonathon
Kamens found a case where it does.
Jimmy Aitken noted problem on Pyramid. My
original code only looked for /dev/tty##. On pyramid, ptys
look like /dev/pts/4. term wants the last two characters, but
on the Pyramid, the first of the last two characters can be a
/ in which case xterm wants a 0. I.e., suffix of /dev/pts/4
is "04". xterm fails completely with 3-digit ptys! I sent
a suggestion and patch to X Consortium for this and the pid
problem - xterm has no way of telling it to which pid to send
the SIGWINCH.
Poul-Henning Kamp noted that -lm would make
autoconf forget about other libs.
Ram Bhamidipaty noted I forgot to document sleep.
Removed disasterous performance with * at beginning of glob.
Mods from Rob Savoye. See ChangeLog.
Earnest Hua noted expectk.man need wasn't
installed.
Bogus arguments to expectk were not reported correctly.
Modified clib to catch when user changes match_max between
expects on two different fds and then switches back.
Rewrote timestamp to get rid of 200 char limit.
Ram Bhamidipaty noted NetBSD .9 stty
complained "stdout appears redirected, but stdin is the
control descriptor". It compares dev(stdout) to dev(stderr)
and assumes if they are different then user thinks stty
ioctls stdout. This is one case when that assumption is wrong.
Fixed fd 2 so it points new 2 and is reset to old 2 if an
error occurs. This forced me to remove any diagnostic output
from child (in getptyslave) since this now went back to the
proc as child output rather than original stderr, sigh.
Stephan Winokur noted that
IRIX 4.2 had problems with gcc. While diagnosing, I found
PTY_TYPE was used before set. Make doesn't mind (how odd)
but I changed it anyway.
Made send understand "-null". Deprecated "-0".
Made Expect read .expect.rc from DOTDIR if present.
3/30/94 5.7.0 Removed alpha status.
Added $(EVENT).o to library.
Finally deleted old shar file. Revised README.
3/22/94 5.6.3 Phil Moore noted termios.h
should not come from sys even if it exists. (SGI doesn't have
sys/termios.h.)
3/21/94 5.6.2 Paul Kinzelman noted that I forgot
to remove -update from documentation.
Fixed interact's -i so it understands indirect spawn ids.
3/21/94 5.6.1 expect_background randomly failed. I forgot to save Tk's
event mask so occasionally events were incorrectly classified
as eof.
Added -buffer to expectk and made "nobuffer" the default so
scripts are read in much faster.
3/15/94 5.6.0 Added cat_buffers marker to avoid "catu" option to scripts.
Got temporary use of an evaluation copy of TestCenter.
Promptly found several memory leaks. Oops.
Added a synchronization mechanism to spawn so that user cannot
send to pty before it is init'd. This also deals with the HP
trap more simply. Removed extra open added in 5.5.1. While
working on this, it occurred to me stty needs to temporarily
disable trap. Added exp_slave_control so that C programmers
can get to it portably.
Added "expect -ex" to documentation.
Fixed winsize bug on Solaris.
Added functions to allow user flexibility closing fds in child.
3/8/93 5.5.1 Integrated bug fixes from Arnold Robbins for his own strftime code.
Rob Savoye passed back a patch from OSF to cast ptsname.
Added a test for cat. R.K.Lloyd noted HP failed pid test.
Turned out to be another bug related to pty-trapping. The test
of course, was doing something that a user would never do.
Hope this doesn't break other HPs. Pty trapping is becoming
less and less clear to me. Ioctls generated by slave look like
modem ioctls. Added an artificial open because different
versions of HP's stty execute differing numbers of ioctls.
In test script, changed each cat to cat -u.
2/17/93 5.5.0 Began a test suite based on Ousterhout's model: make test
Added passmass man page.
Added decl of exp_tty_original to pty_sgtty.c.
Added error_spawn_id
Alon Albert provided a bug fix for new
buffer handling code in C library.
Fix fd leak related to spawn -open.
2/7/94 5.4.0 Some installation improvements from Rob Savoye and Owen Rees.
Bug in handling empty string match - crept in recently.
Finally fixed longstanding oddness: stty -raw reset echo.
Made spawn close all file descriptors. Added exp_open command
to get old effect.
1/26/94 5.3.5 Made rftp use /bin/ls to avoid -F from people's aliases.
Initialized auto_path.
Fixed exp_version so it fails if the major #s are not equal
(which is what the man page said).
1/18/94 5.3.4 Jim Meyering gave config fixes
of X handling on Irix-4.0.5 and suggested that tknewsbiff
observe DOTDIR.
1/18/94 5.3.3 Kevin Short noted some remaining use of malloc
and free instead of ck versions.
Initialize tcl_interactive to 0 while processing -c flag to
avoid unreliable handling of unknown proc.
1/17/94 5.3.2 Jeffry Abramson noted that "spawn -pty"
hung on an HP. Problem was trapping was enabled so as soon
as I tried to open the slave, Expect blocked waiting for ack!
1/14/94 5.3.1 Forgot to delete a bad call to strcat in exp_internal.
1/13/94 5.3.0 Added -info flag to log_file, log_user, exp_internal, and
strace, so you could get original args back out.
Wrote tknewsbiff script (and was extremely pleased).
Fixed rftp. I must have broke it when I changed to using Tcl's
new switch cmd. Also sped it up by replacing split/join
nonsense with a single regexp.
Danny Faught noted that glob patterns
returned shortest matches. While fixing this, found that glob
patterns ending in $ were broken, too.
Massaged libraries and include files. The include file for
using Expect with Tcl or Tk is now expectcl.h. libexpect.a
now suffices for using Expect's funcs with C or Tcl.
Add all the features from Expect into C library including
null and full buffer matching. Added exp_buffer (_end) and
some other variables to support fd multiplexing better.
Made unmatched chars from previous expects remain for future
matches.
Chen found bug in exp_pid when
-i had no arg.
Rewrote expect_bg, after, and before so they all handle args
the same. Interact and all the expect variables now handle
indirects. exp_bg now handles -brace flag.
Geoff Bullen noted that interact put
terminal into raw mode even if stdin was redirected.
Rob Savoye provided more configure mods to better find Tcl/Tk.
Fixed bug in wait that didn't close down "busied" fds.
Kazuro Furukawa provided a better
default for SHORT_BINDIR in the Makefile and noted that DEC
doesn't understand "test -x".
12/3/93 5.2.0 Recent fix was buggy and blew up when eof case still had data
in buffer.
11/23/93 5.1.4 At request of Rod Beckwith fix some
minor things to which SGI cc was sensitive.
Fixed bug in dvorak script where eof could occur in nested
interact, upsetting original interact.
Forgot to change -flush to -nobuffer in man page.
Added some more places to search for X11 for Jeff Moore
note.
Added yet more fixes and notes for NeXT for Brad Skrbec
who found that NeXT has POSIX
include files but NOT the functions that go with them. Sigh.
Needless to say, configure is thrown off by this.
11/14/93 5.1.3 John Pierce noted several declarations
that AIX's cc couldn't handle include a struct with same elt
name at two different levels. Also _IO is declared twice
in AIX include files but only checked once.
Fixed bad args in exp_spawnl call in chesslib examples. Can't
imagine how it ever worked before.
Richard Weidner found a bug in
configure (test always treats a bare string as true!) that
caused NeXT to be declared as POSIX.
Fixed two bugs in Tcl_StringMatch2. One caused glob ranges to
succeed when they shouldn't. Another was how malformed ranges
are handled, and came right from Tcl. Reported to John.
Switched Expect library to use T_SM2 from Expect itself.
Blair Zajac noted expectk used
CLFLAGS instead of CFLAGS.
Forgot to fix mishandling of parens inside of alternation in
interact.
11/9/93 5.1.2 Added "null" keyword and remove_nulls command to allow matching
ASCII 0 in expect/interact.
Rob Nagler