SikuliX Changelog

What's new in SikuliX 1.1.0

Oct 10, 2015
  • observation of appear and vanish events are paused when they happen – they have to be explicitely told to continue their observation
  • there is a count how often an event happened until now
  • the events get a unique name at time of registering, that can be used, to later access the event information (region, image, match, count, …)
  • the event attributes are accessed using getters
  • you might inactivate (pause) the observation of an event and activate it again later
  • at any time you can get relevant information about the state of an observation

New in SikuliX 1.0.1 (Aug 13, 2013)

  • One setup package for all systems

New in SikuliX 1.0 RC3 (Sep 15, 2011)

  • NEW FEATURES:
  • Sikuli IDE:
  • Auto indentation
  • New settings in preferences: expand tab, tab width, font style, font size
  • The locale of the IDE can be changed
  • ESC cancels screen capture mode
  • Sikuli code (including images) can be copied across tabs
  • Sikuli code can be copied as plain text to other programs/text editors
  • Window size and opened files are remembered and restored automatically
  • Sikuli Script:
  • App class supports Linux now (wmctrl and xdotool required.)
  • Java APIs are more consistent with Jython's
  • New hotkey API allows the user to register hotkeys that trigger a Sikuli function
  • A parameter of Sikuli's vision engine MinTargetSize can be changed to adjust the robustness/speed of the engine
  • Pure color templates can be matched now
  • popup() accepts an optional parameter for setting the title of the dialog
  • Some error messages are improved
  • The bundled Jython upgrades to 2.5.2
  • BUG FIXES:
  • Many bugs in the matching preview window are fixed not hanging anymore, preview is consistent with the result of findAll.

New in SikuliX 1.0 RC2 (Feb 11, 2011)

  • NEW FEATURES:
  • The UI of Sikuli IDE has been redesigned and polished. Find, undo, and redo are supported. Console messages are colored.
  • Extensions for Sikuli Script. With extensions, adding new features to Sikuli would be much easier. Developers are welcome to create and distribute their own Sikuli extensions.
  • Sikuli Guide: a Sikuli extension that provides a revolutionary way to create guided tours or interactive tutorials for GUI applications on the actual interfaces, rather than in a video or a series of screenshots on a web page. Details can be found at http://sikuli.org/docx/extensions/sikuli-guide/index.html.
  • Add an interactive mode (-i) to sikuli-script.jar. (for command line only)
  • NEW API:
  • Region: getTopLeft, getTopRight, getBottomLeft, getBottomRight, offset(location), moveTo, morphTo.
  • Region.setFindFailedResponse() handles FindFailed exceptions with more options (RETRY, SKIP, ABORT, PROMPT).
  • Env.isLockOn(Key.CAPS_LOCK|Key.NUM_LOCK|Key.SCROLL_LOCK) returns the state of the given lock key.
  • Env.getSikuliVersion() returns the current version of Sikuli.
  • load(jar) loads a JAR file so that Sikuli can use the Java/Jython classes and functions in that JAR.
  • The info/debug/log messages of Sikuli can be hidden with the following variables.
  • Settings.ActionLogs # turn on/off the messages with "[log]"
  • Settings.InfoLogs # turn on/off the messages with "[info]"
  • Settings.DebugLogs # turn on/off the messages with "[debug]"
  • BUG FIXES:
  • The observer is rewritten and fixed. A new SikuliEvent class is introduced, see http://sikuli.org/docx/region.html#observing-visual-events-in-a-region for details.
  • sikuli-script.jar is easier to be used alone with other IDEs (e.g. Eclipse or Netbeans). The sikuli-script.jar searches /Applications/Sikuli-IDE.app on Mac, or %SIKULI_HOME% on Windows for the necessary dynamic libraries automatically.
  • French error messages are fixed.
  • The Windows installer searches the path to JRE\bin and add it to %PATH% automatically.
  • Better compatibility for 64bit Windows. (The IDE shortcut points to .bat instead of .exe by default.)
  • See https://launchpad.net/sikuli/sikuli-x/x1.0-rc2 for the full list of fixed bugs.

New in SikuliX 1.0 RC1 (Dec 27, 2010)

  • NEW FEATURES:
  • New computer vision engine faster and more reliable.
  • Screenshot naming screenshots can be automatically named with timestamps, the text in them, or manually input.
  • Supports remote images e.g. click(" http://sikuli.org/example/ok_button.png")
  • Image search path (SIKULI_IMAGE_PATH)images can be stored anywhere you like.
  • .sikuli source can be imported as a module.
  • Beautified "Run in slow motion" mode.
  • Smooth mouse movement.
  • Better capture mode on Mac (supports multi-screens, no flicker anymore)
  • More special keys are supported (PrintScreen, Num Pad, CapsLock...)
  • New region highlighting API: region.highlight(). (EXPERIMENTAL: Windows and Mac only)
  • New Mouse API: wheel(target, WHEEL_UP/WHEEL_DOWN, steps) for scrolling the mouse wheel.
  • New multi-lingual interface translation: Bulgarian, French, Dutch, Polish, Japanese, Simplified Chinese.
  • Text recognition and matching (EXPERIMENTAL):
  • find("OK") returns all regions with a "OK" label.
  • region.text() returns the text in the region.
  • New App class replaces the old openApp, switchApp, closeApp functions:
  • App.open(), App.close(), App.focus()
  • App.window() returns the bound of the app window as a Region, so you can restrict following actions within that region. (EXPERIMENTAL: Windows and Mac only)
  • BUG FIXES:
  • command line arguments works with the --test mode.
  • multi-screen actions when the primary screen is not at (0,0)
  • (Linux) open an application in background by default
  • (Windows) fixed a bug in setting the screen shot hot key
  • and much more..
  • SPECIAL NOTES:
  • Text recognition and matching is implemented with the Tesseract OCR engine, which was originally designed for recognizing scanned documents. Please note the OCR technology is not perfect, especially for screen text. We believe there is still much space for tuning its performance and we are working hard to improve it. Please look forward to it.
  • The observer is unstable in this version. We will fix it in the next release.

New in SikuliX 0.10.2 Beta (Aug 9, 2010)

  • add an option "-test xxx.sikuli" to run a .sikuli as a test case.
  • add an option "-s" to output runtime errors to stderr instead of popping up a message box.
  • Sikuli-IDE.bat uses 32bit JRE automatically on Windows x64 (Thanks Brian Creation's patch)
  • fixed inline images overlapping on code
  • fixed unsatisfied linking error (Sikuli-IDE.exe) on Windows x64
  • the path to Sikuli scripts can have ...

New in SikuliX 0.10.1 Beta (May 24, 2010)

  • General Notes:
  • Support more languages: Brazilian Portuguese, Danish, Korean, Russian, Spanish, Turkish, and Ukrainian.
  • Auto-update checking can be disabled in the Preferences window.
  • Add an Edit menu, including Cut, Copy, Paste, Select All, Indent, Un-Indent.
  • Fixed several critical memory leaks that cause crashes on Windows.
  • Reduce default memory consumption.
  • Default hot-keys are changed on Windows.
  • Switching tabs: CTRL-TAB, CTRL-SHIFT-TAB
  • Screen capturing: CTRL-SHIFT-2
  • Add command line options to Sikuli IDE.
  • Bug Fixes:
  • Bug #581712 Unit testing in Sikuli 0.10 doesn't work. (Unit testing panel is now working.)
  • Bug #577610 capture(region) gives (partly) black images
  • Bug #577220 exit() Function gives Runtime Error from Command Line
  • Bug #575585 Memory leak in Sikuli 0.10 crashes long scripts
  • Bug #562393 Win XP: CTRL+ARROW shortcut is double mapped
  • Bug #574951 I got JNI Exception: failed to create the Java VM
  • Bug #583096 Data loss when running Sikuli in Windows
  • Bug #570248 Screenshots in the script are not longer found after saving with "save as..."
  • Bug #580000 Sikuli-IDE crashing when clicking on PS which is no loger visible for find()
  • fixed parsing error if using non-digits in Pattern.similar or Pattern.targetOffset.
  • Sikuli 0.10 functions and classes can be imported and used in Jython modules other than only in main scripts. See libo's post https://answers.launchpad.net/sikuli/+question/111193 for the details.

New in SikuliX 0.10 Beta (May 4, 2010)

  • MUCH FASTER - The matching algorithm is improved. Screen shots are directly processed in memory, so no more temporary files.
  • The whole architecture of Sikuli Script has been redesigned and rewritten. New APIs are clearer, more consistent, and more flexible.
  • Visual event driven programming - actions can be executed when something appears, disappears, or changes.
  • Search and actions can be easily restricted within a region or a screen.
  • Internationalized user interfaces of Sikuli IDE: Traditional Chinese and German interfaces are shipped with 0.10. More languages are being translated...

New in SikuliX 0.9.9 Beta (Feb 24, 2010)

  • General Notes:
  • Sikuli IDE saves all scripts in UTF-8 since this version. In addtion, paste() also supports unicode strings now, so international characters should be able to "paste" into any applications.
  • If a image pattern can not be found, find() and all actions that implicitly use find() throw a FindFailed exception by default. This exception can be handled by the try-except statement of Python if needed.
  • New API: run(command) - runs a string command and returns its output. This would be useful for running command line programs.
  • The vision engine is recompiled with a optimization flag (O2), so it will be faster a little bit.
  • The key modifier for click is fixed. Now you can do Ctrl+Alt+Shift+click.
  • Platform Specific Fixes:
  • Mac OS X:
  • Uses Mac native file dialogs for open/save/export.
  • Bug Fixes:
  • Bug #515914 IDE crashed when running the note.sikuli sample script
  • Bug #518491 type command turns characters in message string
  • Bug #516795 UnknownFormatConversionException: Conversion = 'p'
  • Bug #523718 setAutoWaitTimeout(0) stops exception handling
  • Bug #516375 WinXP: "Save as..." doesn't remember last saving location
  • Bug #517113 MacOS - Save dialog is non-standard and defaults to /
  • Bug #516233 openApp appears to do nothing in OS X 10.5
  • Bug #523660 find() if not found throws exception - has problems
  • Bug #519321 class Key on Windows 7
  • Bug #525267 type("%") gives UnknownFormatConversionException in IDE
  • Bug #519916 click modifiers don't work (OS X 10.6)
  • Bug #517243 Syntax error in MacUtil.java

New in SikuliX 0.9.8 Beta (Feb 2, 2010)

  • Bug Fixes:
  • 515592 Feature Request: Turn on font aliasing in Windows version
  • 515406 double "\" generated into Sikuli-IDE.bat on Windows 2000
  • 511770 running out of memory soon
  • Fixed "Unsatisfied link error" on Linux

New in SikuliX 0.9.7 Beta (Jan 28, 2010)

  • [NEW] Scripts can be exported as executable files (.skl) - double-click on .skl runs it (Mac only now)!
  • [NEW] Special keys are supported (see class Key in the Jython API reference.) TAB, ESC, F1~F15, UP, DOWN, RIGHT, LEFT, ENTER, BACKSPACE, INSERT, DELETE, HOME, END, PAGE_UP, PAGE_DOWN
  • [NEW] New API: hover(img) - move mouse cursor to the best matched position of the given image.
  • [NEW] New API: paste([img], text) - Paste the given string to the best matched position of the given image. (This's a temporary solution for different keymaps and international characters.)