May 29th, 2013
· Added foreach loop using code blocks
· $list=abc def ghi
· [ $x=$list
· >echo $x
· Added string-math: concat, subtract, search/replace
· Concat -> abc,def,ghi,jkl
· =$list + ,jkl
· Subtract -> abc,ghi
· =$list - ,def
· Search/replace with regex -> def,abc,ghi
· Search/replace without regex -> abc def ghi
· =list//,/ /
· Improved ssh login
· Removed ssh options, should be placed in ~/.ssh/config
· The main purpose is keep it simple. However, the advanced features allow pretty creative scripting.
The central ideas behind the design are:
· Just keep it simple and portable - it runs on Linux, Mac OS X, *nix, and Windows(with cygwin).
· No syntax errors
· Make the automator's life easier.
March 12th, 2013
· This version enhanced code blocks with "then" and "else" blocks, added an EL_INFINITE_LOOP environment variable that sets a user's default infinite loop protection, shortened expect-lite help, and enhanced the man page.
January 29th, 2013
· Version 4.4.1 fixes a bug when using *LOG on the command-line.
January 21st, 2013
· expect-lite turns 8!
Added native logging to a file (finally) using *LOG directive:
· Log to a default file name .log
· Or log to user supplied file name, *LOG /tmp/myfile.log
· Log only sections of script using *LOG and *NOLOG
· Append to existing log file with *LOGAPPEND
· Improved install.sh for NFS mounted home drives
December 5th, 2012
· Added include file passing var=values with spaces e.g. ~mycinclude.inc var1=this or that var2=just that more of small bug fixes
· Fixed "send" bug "bad flag -1"
· Fixed dyn var capture when "=" are present e.g. +$var=(\d) = STRING
· Fixed single number expect, if number was not on a line by itself
· Added el_shell.elt, a helpful dev script for easy copy and pasting commands
June 27th, 2012
· This version fixes a path bug with include files, ssh (no key) login prompt detection, an *INFINITE_LOOP bug which would double/triple the countdown, and CLI -v,-vv,-vvv overrides of logging (*INFO, *WARN, *DEBUG).
· It works with older versions of expect (older than 5.44.x, such as cygwin, and old Linux installations) and validates EL_CONNECT_METHOD at startup (default=none).
April 24th, 2012
· User defined help was added (run your script with a -h).
· Arguments are now passed to include files (e.g. ~login.inc user=root).
· A new *NOINTERACT directive was added, which is useful for quick regression scripts.
· A ##Include Result: FAIL message was also added for quick regression scripts.
February 14th, 2012
· This version has full IPv6 support and fixes a bug in Library mode.
December 14th, 2011
· Minor fixes.
· Fixes for small bugs in IDE single step and paste functions, and a problem with lines ending with backslash.
October 12th, 2011
· Grouping of lines in a script for if statements and while loops, called code blocks.
· While Loops, a native looping mechanism based on code blocks.
· Constant values can have spaces on the command line, e.g. var1="value of this" var2=that.
August 24th, 2011
· @n (n=number) was fixed to set the timeout value from IDE (a problem with ssh email@example.com...).
· The *FORK display was fixed when "session" is part of the session name.
· The installer was updated with a "configure only" option, which just configures user account settings.
· A conditional test for undefined varibles was added.
June 28th, 2011
· Non-unique labels for looping (search backwards for labels)
· Fix for *FAIL and *NOFAIL
· Change timeout value in IDE (using @n command)
· Added sudo example (using sudo.tcl)
April 13th, 2011
· The documenation was improved.
· Miscellaneous fixes were made to *FORK (multi-session control).
· A new library mode was added for integration into native Tcl environments.
February 22nd, 2011
· Bugs were fixed for a bad timeout value and *FORK session control.
· A new logging directive, *TIMESTAMP , prints a date and timestamp for each command sent.
December 20th, 2010
· A small fix to the copy/paste function in the debugger
· Installer for installing from the tarball (not sure why it took me 5 years to write an installer, but there is one now, and it automatically configures the expect-lite configuration file ~/.expect-literc)
October 27th, 2010
· This version has a new debugger with breakpoints, stepping, skipping, and the ability to copy and paste expect-lite lines right into a running script.
· Scripts can be made executable using a standard initial line of "#!/usr/bin/env expect-lite".
· Multiple users are now supported easily because customization is controlled via environment variables.
· The new *NOFAIL directive runs a script to completion, which can be useful for debugging.
· Support for Cygwin was improved.
· Backward compatibility with existing scripts is retained.
September 28th, 2010
· Additional functionality was added, improving color, adding an additional logging level, and updating the documentation.
· Custom colour comments are supported. "expect" logging can be done with *EXP_INFO. The *PASS directive was added.
· The man page was updated.
August 3rd, 2010
· Colour Comments, Info and Warnings
· End of Line control (LF or CRLF)
· Fix for Cygwin Telnet access method
· Man Page, a quick reference
July 15th, 2010
· This version includes an example script presented at the Linux Symposium 2010 conference.
· A feature was added where environment variables of the form EL_* will automatically become script constants (variables).
· The setup_local_ssh.sh tool was updated for NFS /home environments.
June 2nd, 2009
· Worded IF INFO statement, now is eval:TRUE|FALSE
January 19th, 2009
· Key features include instant interaction for immediate debugging, almost unlimited multiple sessions, and better control over logging information. Pressing ^ (control+backslash) will drop into interactive mode, which turns control of the keyboard over to the user, typing directly to the process on the remote host.
December 3rd, 2008
· This version adds two new features.
· Based on a user request, User Defined Prompts have been added.
· This allows the setting of the prompt via a line.
· Expect-lite has always cooperated well with the bash shell.
· Now, via a five-line embedded bash script at the top of the expect-lite script, it can become executable with default arguments, and can even take GNU-style long option arguments.
October 21st, 2008
· This version includes some small bugfixes and additional debugging information via -v and -vv.
· Three self-test scripts are included (in Examples) that provide confidence that expect-lite is functioning properly.