Eggplant for Windows
Release Notes

The notes below provide descriptions of the new features and changes introduced with each release of Eggplant. You are strongly encouraged to read about the relevant changes whenever you upgrade from an earlier version.

Potential compatibility issues are highlighted in RED.

Note For Cross Platform Users: 
Eggplant for Windows contains almost all of the functionality available in Eggplant for Mac.  
Excluded features are listed at the bottom of the release notes.  

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

Release v11.01	(17-August-2011)

Bug Fixes / Tweaks:

•	Fixed a packaging problem with the Floating License Server.
•	Added support for UltraVNC 1.09 connections.
•	Fixed a possible crash when setting the searchRectangle.

		––––––––––––––––––––––––––––––––––––––––

Release v11	(15-August-2011)

Highlights:

• 	Added a multi-purpose ReadText() function to read text from any screen using OCR.
• 	Added the ability to search all scripts within a suite. 
• 	Added the ability to easily repeat a script block for a given length of time, or until a specified time.
• 	There is now a generic Text Search engine for finding text strings on the screen.
	If you have NOT modified your text preferences this is now the default Text Finding Engine.

		––––––––––––––––––––––––––––––––––––––––

User Interface:

•	Added a Search Field for Scripts, allowing you to search script names or the full content of every script in the suite.

• 	Added a "Last Run" column on the Scripts pane of the Suite window, that shows the time when each script was last run. The time for a successful run will be shown in green; for a failed run in red. Clicking the last run time will show the results for that script run in the Results pane.

• 	Enabled editing of script names directly in the Scripts tab. Simply select a script then click its name a second time to begin editing. Double-clicking quickly will still open the script.

• 	Eggplant will no longer allow you to create two images of the same name in the same folder, regardless of what file type extensions they use.

		––––––––––––––––––––––––––––––––––––––––

Scripting:

•	Changed the initial setting of the defaultLineDelimiter to be the set of all common line endings (CRLF, LF, CR, LineSeparator, ParagraphSeparator) rather than just the Return (LF) character.

• 	Added ReadText() function which takes one or two parameters. The first (required) parameter is either a rectangle specifying the area of the remote screen from which text is to be read, or a point or image indicating the location of some text to read. The function returns whatever text was recognized from that part of the screen. In the case of a rectangle, it will read all text contained within that rectangle. In the case of a point, it will attempt to locate text near that point, and will read and return as much text as it can find adjacent to that text on the same line.

	The second (optional) parameter is a property list of TextReading options. 

	Example:
		put readText((40,0,400,30))
	--> Finder    File     Edit    View    Go

		put readText((200,10))
	--> Edit 

•	Added a HighlightRectangle command which draws a rectangle highlight in the Remote Screen window. It requires a first parameter which is the rectangle to highlight. An optional second parameter is a property list of options, which may include color and duration properties. The color option specifies the color to use for drawing the rectangle, which defaults to red. The duration property specifies the length of time the highlight rectangle will be shown. If not specified it will be shown for the default ImageHighlightDuration time. Specifying zero for the duration will cause the highlight to remain until the next time a highlight rectangle is shown, either by another call to this command, or by any screen search command that draws highlights.

•	A new Text Finding Engine (OCR Search) now exists in the Eggplant Preferences -> Text section.  
	If you have NOT modified your text preferences this is NOW the default Text Finding Engine.
	If you have modified your text preferences you can create a new platform that uses OCR.  You can always change your Default Text Platform using the Text Preferences.  When using the OCR Search text engine you can specify text in any image finding command.  You don't need to specify font characteristics but you can select language options for various styles.

	Example:
		click(Text: "File")  // If OCR is your default platform
		moveTo(Text: "1:34 AM", TextPlatform:"OCR") // If OCR is not the default platform

• 	The RunWithNewResults command will no longer change the status of any connections. Connections that are open when the command is issued will stay open when the called script begins, and connections that are open when the called script finishes will stay open in the calling script.

•	Added an every option to the offset and range functions, to obtain the offset location of every occurrence of one text string within another or the full range (starting and ending positions) of every instance of some text within a larger text string. In addition to the natural language syntax, these can also be called using new everyOffset() and everyRange() functions.
		put every range of "at" in "concatenation" into atRanges
		put atRanges -- (5 to 6,9 to 10)

•	Added initial support for units associated with numeric values. Any variable holding a numeric value can have a unit type associated with it. Two types of units are officially supported at present: a time interval (or duration) type with a unit of seconds and a byte size (or data size) type with a unit of bytes. Values created with the special syntaxes for these types will automatically be assigned with those unit types:
		put 2 hours into waitTime -- a duration with units of 'seconds'
		put 16 megabytes into capacity -- a byteSize with units of 'bytes'

•	Added the unitsEnabled global property to specify whether units should be shown when displaying a value (the initial setting is false):
		put 1 minute 30 seconds into delay
		put delay -- 90
		set the unitsEnabled to true
		put delay -- 90 seconds

•	Added the ability to repeat for duration to create a repeat loop that terminates after a specified length of time has passed. This type of repeat loop will execute the body of the repeat block, then check whether the specified length of time has elapsed since the repeat began. If so, the loop is terminated, otherwise the body of the repeat loop is executed repeatedly with the time being checked at the top of the loop each time until the specified time duration has passed.
		repeat for 3 seconds
			add 1 to counter
		end repeat
		put "Counted to " & counter & " in 3 seconds"

•	Extended the is a operator to allow testing whether a value is a particular type of unit. For example you can test whether a value is a duration using the "is a duration" (or "is a timeInterval") operator, or whether it is a byte size using the "is a byteSize" (or "is a dataSize") operator:
		put 3 minutes into x
		put x is a duration -- true
		put 5 megabytes is a dataSize -- true

•	Added the units property of a variable to access or change the units associated with that variable. For timeInterval values, the units will be "seconds"; for a byte size value it will be "bytes". 
		put 1 minute 30 seconds into delay
		put delay's units -- seconds
		set delay's units to "bytes"

	Other units may be used but are not specifically supported, so should be used experimentally with the understanding that the behavior may change as new unit types are added in the future:
		set the unitsEnabled to true
		put 12 into snack -- (must be a number before assigning units)
		set snack's units to "peanuts"
		put snack -- 12 peanuts
		subtract 5 from snack -- (eat a few)
		put snack -- 7 peanuts

•	Added ability to repeat until time to allow a script to repeat a series of steps until a particular date/time has arrived.
		repeat until "5:00 PM"
			doSomeWork
			wait a minute
		end repeat

•	Added ability to wait until time to allow a script to pause execution until a particular date/time arrives. If the time specified is already in the past, execution proceeds immediately. 
		wait until "5:00 PM"
		wait until now + 1 second -- evaluated repeatedly; will wait forever
		wait 1 second -- do this instead

•	Added the asTextLimit global property to set a limit on the size of internally-generated text representations of values. If a text representation is requested that exceeds this limit an exception is now thrown. This protects the system from possible crashes caused by extremely large values. The default limit is ten million characters.

•	Added a globallyUniqueString() function to return a unique string each time it is called. The value is unique across systems, application instances, and individual calls to the function.

•	Added some additional pieces of information returned by the SystemInfo() function, and by the OSInfo() function on Linux systems.

		––––––––––––––––––––––––––––––––––––––––

Bug Fixes / Tweaks:

•	The imageFound() function will now throw an exception if called with only one parameter that is a number. If the first parameter is a number it is treated as the time to search, so at least one image must also be supplied. To search for an image whose name is a number without also giving a time parameter, include the image's file type extension.
•	Fixed a problem that could occasionally lead the remoteClipboard() function called with a time parameter to throw an exception incorrectly indicating that no new value was available.
•	Fixed a possible hang when running a script from the command line.
•	Fixed an issue setting the fonts used for scripts and logs.
•	Fixed a problem with the "New Script..." menu item being disabled when a window other than a script or suite window was selected.
•	Fixed a memory leak of a socket, which could lead to a crash when checking connection availability.
•	Fixed a problem with display of values in the Duration column on the Licenses panel.
•	Fixed a bug with the Remove button on the Licenses panel deleting the last license rather than the selected license.
•	Fixed a bug that would throw an exception if Add Image was used to add an image to a commented line in a script.
•	Improved the behavior when attempting to capture an image with no suite open.
•	Fixed time values specified without a particular date to be treated as a time on the current day (previously a bug was treating these as being on the first day of the current year).
•	Fixed a bug with deleting the first item of a list while iterating over that list (could cause the second item of the list to be skipped).
•	Fixed some problems with the standardFormat() function, which in some cases (such as values containing ">" followed by a return) would produce an incorrect representation that could not be turned back into the original value using the value() function.
•	Fixed a problem with checking whether a range is within another range.
•	Fixed a bug that would display ranges within lists or property lists as lists, rather than as ranges.
•	Fixed a bug that would throw an exception if a next repeat statement was executed more than 10 times within a try block inside a repeat loop, with the message "SenseTalk Runtime Exception - TRY statement exceeds maximum nesting limit per handler (10)".
•	Fixed a bug (introduced in 10.22) with displaying lists or property lists containing references to objects.
•	Fixed a script formatting bug (introduced in 10.2) that would cause problems when pasting any odd-length text string at a location exactly 99 characters before the end of a script that is at least 200 characters long.
•	Fixed a bug with standardFormat() that would throw an exception in certain cases (such as when a property list contained a standard Cocoa object).
•	Improved the error message when the call depth limit is exceeded to provide a helpful hint. This error was also renamed from "SRUN_RecursionLimitExceeded" to "STMaxCallDepthExceeded".

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

Release v10.3	(10-January-2011)

Highlights:

• 	Full Support for Microsoft Windows 7.
• 	Added the ability to search all scripts in a suite.
• 	Added find and replace capabilities to script editor.
• 	Fixed a number of bugs and compatibility issues – (See Below).

		––––––––––––––––––––––––––––––––––––––––

User Interface

•	Added a Search Field for Scripts, search by Filenames or Content.
• 	Prevent accidentally saving an image name that conflicts with an existing collection or other format image.
• 	Added a Last Run column to the Script list that shows the time and success state of the latest run, clicking it will take you to the results.
• 	Added support for find and replace in the find panel when editing scripts.

		––––––––––––––––––––––––––––––––––––––––

Scripting

•	Added the ability to send email attachments using the SendMail command.
•	Fixed a crashing/memory problem when setting the SearchRectangle repeatedly in a script.

		––––––––––––––––––––––––––––––––––––––––

Bug Fixes/Tweaks

•	Improvements to the UI behavior of all search fields.
•	Toolbar icons should no longer show up as huge in some situations.
•	Improved ability to open external resources like URL's and text files in other applications.
• 	Refreshed the About eggPlant panel.
• 	Fixed a problem with using the End, PageUp, or PageDown keys to navigate in the Script Editor.
• 	Fixed a problem opening the Eggplant Examples and Tutorials items from the Help menu when using the Safari browser.
• 	Fixed a crash when opening connections repeatedly in scripts run from the Schedules tab.
• 	Fixed an issue when double-clicking an image name in the Images tab.
• 	Fixed a possible crash when initiating an Image Doctor search for an image with no connection active.
• 	Improved the behavior when typing the name of an image to save that is the same as (or begins with) the name of an image folder or collection.
• 	Fixed a problem with resizing of the Results tab.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

Release v10.24	(17-December-2010)

Highlights:

• 	Imporoved BETA Support for Windows 7/Vista -- See below 
• 	Fixed a number of bugs and compatibility issues – (See Below).

		––––––––––––––––––––––––––––––––––––––––

Windows7/Vista

•	Script execution is reliable and GUI is usable -- please provide feedback on any problems to TestPlant
• 	Some problems using Open and Save dialogues when you are within Suites
• 	Taskbar Pinning does not work well with either the startup file or eggplant windows.
• 	No enterprise support for UAC protocols.

		––––––––––––––––––––––––––––––––––––––––

User Interface

•	Added Search Field Filters for Logs and Images.
•	Improved the Run Window pop-up menu behavior when selecting a frame beyond the first one.
•	Fixed a crashing problem when deleting or replacing an image and then accessing images through the Images Tab.
•	Fixed a problem when deleting logs from the Script Results pane.
•	Fixed a problem using the Insert.. pop-up button to insert a RightClick command.
•	Cleanup of About Panel GUI.

		––––––––––––––––––––––––––––––––––––––––

VNC

•	Added a  textual Status column to the Connection List.
•	Fixed a problem typing symbol keys like !@#$%^&*() in live mode.
•	Optimized the use of limited system resources when repeatedly connecting/disconnect during a script .

		––––––––––––––––––––––––––––––––––––––––

Scripting

•	Added a sorted operator that provides all the functionality of the sort command. As an operator, it produces a sorted value without changing the source value. The sorted operator takes the form "value sorted options" where options include the same options available for the sort command, plus "as chunkTypes" to sort the value as something other than a list of items.
		put (99,3,2,5,32,36,45737,26) sorted -- (2,3,5,26,32,36,99,45737)
		put randomList sorted in ascending order into sortedList
		put "Eggplant is great" sorted as words -- "Eggplant great is"
		put "Eggplant is great" sorted as words by the length of each
			-- "is great Eggplant"

•	Added increasing and decreasing as synonyms for ascending and descending for specifying the order of a sort operation.

•	Implemented the OSInfo() function for Windows.

•	Added the predefinedVariables global property. This is a property list containing the definitions of all of the predefined variables. Any changes made to this property will affect any subsequent use of an unassigned variable whose name is one of its keys. By modifying this property, predefined variables can be created or removed, or their value can be changed.
		put st -- "st"
		set the predefinedVariables.st to "SenseTalk"
		put st -- "SenseTalk"

•	Added some additional predefined variables:

	Common symbols:
		period, fullStop, semicolon, questionMark, exclamationMark, numberSign, circumflexAccent, ampersand, asterisk, leftParenthesis, rightParenthesis, leftSquareBracket, rightSquareBracket, leftCurlyBracket, rightCurlyBracket, underscore, apostrophe, singleQuote, tilde, graveAccent, caretSign, referenceMark, doubleExclamationMark, doubleQuestionMark
	
	Numeric symbols: 
	lessThanSign, greaterThanSign, equalsSign

		––––––––––––––––––––––––––––––––––––––––

Bug Fixes/Tweaks

•	Fixed a number of crashes/lockups associated with rapid menu changes and updates when running a script.
•	Fixed a problem with the Remote Screen window displaying at a slightly lower location on the screen each time it was opened.
•	Fixed a number of script memory leaks, including some when accessing chunks of a value.
•	Fixed a crash when accessing lines of a file in certain situations.
•	Fixed a crash when setting a variable to one of its items that is an integer.
•	Fixed a bug that could lead to a crash if an exception occurred within a sort condition inside a try block.
•	Fixed a problem with formatting of lists and property lists that would fail to change the quote format back after rendering a list within a property list or vice versa.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

Release v10.23	(29-October-2010)

Highlights:

• 	Added BETA Support for Windows 7/Vista -- See below 
• 	Fixed a number of bugs and compatibility issues – (See Below).

		––––––––––––––––––––––––––––––––––––––––

Windows7/Vista

•	Script execution is reliable and GUI is usable -- please provide feedback on any problems to TestPlant.
• 	Some problems using Open and Save dialogues when you are within Suites
• 	Taskbar Pinning does not work well with either the startup file or eggplant windows.
• 	No enterprise support for UAC protocols.
• 	Creating 100+ connections will overload the Window memory space when running 32-bit versions of Windows.

		––––––––––––––––––––––––––––––––––––––––
VNC

•	Added control to optionally exclude VNC screen synchronization using the 
		defaults write Eggplant RequireSync NO
•	Fixed a crashing problem when using the Zlib based encodings.  ZlibHextile, ZlibRaw, and ZRLE should all be more stable. 

		––––––––––––––––––––––––––––––––––––––––

Scripting

•	Added a sorted operator for beta testing. This takes the form "value sorted options" where options include the same options available for the sort command, plus "as chunkTypes" if you want to sort the value as something other than a list of items. This feature is considered beta, as it needs more testing and may undergo some finishing tweaks before the next release.
		put (99,3,2,5,32,36,45737,26) sorted -- (2,3,5,26,32,36,99,45737)
		put randomList sorted in ascending order into sortedList
		put "Eggplant is great" sorted as words -- "Eggplant great is"

•	Added millionth as a valid ordinal number.

•	Added millisec, millisecs, microsec, and microsecs as abbreviations for millisecond, milliseconds, microsecond, and microseconds.

		––––––––––––––––––––––––––––––––––––––––

Bug Fixes/Tweaks

•	Fixed problems with keyboard focus going to the wrong window when using the Taskbar to minimize or switch windows.
•	Fixed a problem with double-clicks on inactive controls.
•	Menus now show a checkbox where appropriate (eg. Image Doctor Setting, Image Highlighting). 
•	Fixed a problem creating TextPlatforms or TextStyles that only differed by case.
•	Cleanup of preference panes GUIs.
•	Fixed some issues with storing data into byte chunks that would previously convert values to and from text internally. 
•	Fixed the standardFormat function to format lists with a space after the opening brace so that nested lists can be evaluated correctly by the value function without being interpreted as block quotes.
•	Fixed the "number of lines of" function and "each line of" expressions to allow a list for "delimited by" and use the lineDelimiter if delimiter is omitted or empty.
•	Fixed a problem with error reporting when an error occurred in evaluating the setup conditions of a repeat loop, that would report as being an error in the preceding line of the script.
•	Fixed a bug with accessing the properties of an object that was passed into a handler as a single-item list containing the object.
•	Fixed a bug with accessing the currentIndex property or iterating using nextValue or nextAssignedValue of a list when that list contains a single value which is an object.
•	Fixed a bug with assigning a list of chunks to a value that would treat them as references ("put items (3,4) of x into y").
•	Fixed a bug when performing vector arithmetic using a list containing references to other values, that would alter the referenced values.
•	Fixed a problem where Remote Windows sometimes tracked the mouse when not the active window.
•	Fixed a problem with GetOptions reporting about FullScreenFailsafe.
•	Fixed a bug that prevented iterating over the same range or list multiple times in a nested manner.
•	Fixed a bug when saving a script to a different Suite.
•	Fixed a bug where non-active Remote Windows would report that they were running the script.
•	Fixed a bug that would prevent similar objects (that were equal in value, but distinct objects) from both being included in the helpers or early helpers of another object.
•	Fixed a crash when the SUT screen resolution changes.
•	Fixed a problem where enabling/disabling some encodings wouldn't take effect.
•	Fixed a bug using the TypeText pull-down menu.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

Release v10.22	(4-September-2010)

Major Enhancements

	•	Improvements to the installer for enterprise environments
	•	Added support for sendMail command
	•	Release of Windows Floating Licenses
	•	General stability improvements
	•	Graphics fixes and general Windows appearance improvements
	•	Addition of all the most common Windows keyboard short cuts
	•	Improved test results logging
	•	Improved performance and extended support for KVM devices

User Interface

	•	You can set a Default search type for new images in the Viewer Preferences.
	•	Results for scripts called with RunWithNewResults can now be easily jumped to by using the Linker Arrow in the Result Viewer.
	•	The Format menu has been removed, as creating scripts in RTF format is no longer supported. Similarly, the Default Script File Format has been removed from the Script preferences pane.
	•	The Restore Defaults action on the Text preferences panel now displays a dialog warning that it will remove any custom text platform information.
	•	Added the ability to pick a SUT from the Connection List on the Schedule Tab.
	•	Fixed some problems using the TypeText pull down menu.
	•	Fixed a problem where the Remote Window would stop drawing updates and turn gray.
	•	A new command on the Help menu provides a link to the new online tutorials.

VNC

	•	Fixed a crashing problem when using the Zlib based encodings. ZlibHextile, ZlibRaw, and ZRLE should all be more stable.
	•	Added support for maintaining a connection when changing SUT screen resolutions.

Scripting

	•	Added support for the sendMail command on Windows. Please see Eggplant Reference for details.
	•	Scripts called on the command line via runscript will now report their output to the console window instead of the Event Viewer..
	•	The current setting of the ScriptLogging property is no longer reset by the RunWithNewResults command. The ScriptLogging property is now shared in common between the master script and any scripts called by the RunWithNewResults command, so any change to the property in one script will carry over to the others.
	•	Added an additional option for the shell command on Windows. By setting the shellCommand to "ShellExecute" (now the default on Windows), the Windows ShellExecute() function will be used to run the specified file:
		set the shellCommand to "ShellExecute"
		shell "example.bat" -- run the indicated batch file

	•	When using ShellExecute, several additional parameters besides the command or file may optionally be passed. The second parameter, if given, specifies any parameters to be passed to the command being run. The third parameter specifies the default working directory for the action. The fourth parameter should be a number specifying any optional flags to pass to the underlying ShellExecute() function. Finally, the fifth parameter, if given, specifies an explicit verb to use (such as "open", "explore", "edit", "find", or "print"). Otherwise the default verb defined in the registry (or "open") will be used. If an error occurs, the result will be set to a number, otherwise it will be empty.
	•	Improved performance when displaying large lists or property lists or converting them to text, especially ScriptResults().
	•	Added optional "indent" property to the listFormat and the propertyListFormat. Setting this property to a suitable string such as "  " will cause individual list items or property list entries to be displayed on separate lines with values indented by multiples of the indent value according to the nesting of the structure.
		set list to (apple, banana, cherry)
		put list -- (apple,banana,cherry)
		set the listFormat's indent to "  " -- indent by 2 spaces
		put list --
		(
		  apple,
		  banana,
		  cherry
		)

Bug Fixes and Tweaks

	•	Improvements to the Windows installer
	⁃no longer modifies users ENV or PATH variable.
	⁃checks for proper version of Windows
	⁃creates Log, Preference, and Licenses Directories
	•	Fixed a problem saving settings from the Text Preferences.
	•	Provide notice if Eggplant can't open a file in an external tool.
	•	Fixed sporadic crashing problems associated with entering protected code.
	•	Fixed a crash when the SUT screen resolution changes..
	•	Fixed an occasional crash when being prompted for a VNC password..
	•	Fixed a problem accessing Suites from a scripts which had not previously been opened.
	•	Fixed a problem opening Suites from the Open Suite menu after a script had been opened.
	•	Fixed a hang when using closing the Handler selection window using the window close-box.
	•	Fixed a bug with a scripted TIG not working correctly when the TIG script is not located in the current.
	•	Fixed a bug with the Hot Spot and other image attributes not being preserved when moving a Suite from Linux or Windows to the Mac.
	•	Fixed a bug with the Hot Spot field in the image drawer not updating after an image's hot spot is moved by command-dragging it.
	•	Fixed a problem with the Make Collection button not always properly updating the display.
	•	The Eggplant GUI now writes it's standard out to a file in the user's Application Data directory instead of to the Event Viewer.
	•	Fixed a bug with copying list items between lists or to a different place within a list, that would incorrectly treat the copy like a reference to the original item.
	•	Fixed a bug with passing a list item as a parameter to another handler, that would in effect pass it by reference.
	•	Fixed a bug with sorting items in a list nested within another list.
	•	Fixed a bug that would throw an exception ("STInvalidOperation -currentIterationIndex called on non-object STValue") when trying to iterate "by reference" over the items of a list (using "repeat with each item of theList by reference") when the list was received as a parameter or is itself a reference.
	•	Fixed a bug with the exception not being set to empty on a single-line try statement that doesn't throw an exception.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

Release v10.21	(2-June-2010)

Major Enhancements

Improved UI now uses native menus for
	Drop-Down Lists
	Context Menus (Right Click)
	Toolbar Menus
Added support for shell() and format() commands

User Interface

	•	Improved UI now uses native menus for
	⁃drop-Down Lists
	⁃context Menus (Right Click)
	⁃toolbar Menus that extend off the end
	•	Improvements and fixes for the Script Editor preference pane
	•	Drag and Drop Scripts within the Schedule Tab
	•	Improvements and fixes for the Text Settings preference pane
	•	Improved Toolbar Sizing
	•	Opening Files in External Tools (eg. png's, csv's) should now work on all systems.
	•	The Windows Classic Theme now works by providing custom UI elements -- We still recommend running Eggplant using the XP theme for a more consistent look and feel (using Windows' Display Properties Control Panel).

Scripting

	•	Added support for the shell() function on Windows, please see SenseTalk Reference for details
	•	Added support for the format() function on Windows, please see SenseTalk Reference for details
	•	RTF scripts can now be read properly from Windows.

Bug Fixes and Tweaks

	•	Improvements to the Windows installer
	⁃warns if user lacks Admin Privilege
	⁃more safely updates the users PATH env variable.
	•	Non-locked license keys are now usable.
	•	Fixed a bug which could cause a crash when performing various operations on a list or property list that contained a circular reference.
	•	Fixed a bug with deleting an item from a range.
	•	Fixed a bug with Reading RTF scripts on Windows.
	•	Fixed a problem saving settings from the Text Preferences.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

Release v10.2	(26-April-2010)

This initial release of Eggplant for Windows contains almost all of the functionality available in Eggplant for Mac.  Below are the features that are excluded at this time.  Please report any problems that you encounter to support@testplant.com.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

Known Exclusions from the Mac version of Eggplant:

	•	Movie Recording both from the GUI and the startMovie command is not available.
	•	XML support within SenseTalk  is not availble.
	•	Bonjour/zeroconfig VNC server detection is not present.
	•	Use Image toolbar item on the Remote Window is not available at this time.
	•	Text Image Generation is supported through external and scripted generators only.
	•	Color Panel Does not currently support the Color Picker (Magnifying Glass) or Named Colors.
	•	ssh connections ARE supported, but require that you install an SSH client.  
	Please see the Eggplant Reference manual for instructions.

The Eggplant Team