Changelog: What's new?

TigerJython is now primarily maintained by the non-profit association TJ-Group, while some research is also done at ABZ/ETH. For my own current projects, see tobiaskohn.ch.

TigerJython is a work in progress. We are working hard to improve it, fix bugs, add new features and make it even better than it already is. This page informs you about what's new in the latest release of TigerJython.

A new version is usually released when the need arises or we have made sufficently large changes; there is no regularity in these updates. Some updates are also due to an update of the libraries used.

The list presented here is not complete: each new release sees bugfixes and minor enhancements and improvements which are not reflected here.

Changes

Version 2.12 (Janaury 2017)

The new version comes with many smaller enhancements to the included libraries, mostly notably, it now includes support for sqlite3. On the other hand, TigerJython is more and more used in Physics classrooms. Improvements to the existing libraries reflect this usage and offer improved support for simulations and interconnection with the Raspberry Pi, for instance.

We also included the possibility to permanently save your favourite functions, so that they are available in each of your programs without the need for imports or copy/paste. Just select the function you would like to save, and then you will find this option in the «Run»-menu. The rationale behind this option is to provide a simple mechanism to build a library, especially for our younger students.

Thanks to Cédric Donner, most error messages are now fully available in French.

Due to the anonymous examples of errors we have collected so far, we were already able to improve various aspects of error detection, and even streamline some parts of the libraries to better reflect actual usage. Please consider enabling the option to send us some automated and anonymous feedback about the error messages.

Version 2.11 (August 2016)

We have implemented a new system to locate and identify errors, greatly enhancing the accuracy of the previous system. It concentrates mostly on syntax errors but -- depending on your settings -- it will also detect common mistakes which might be syntactically legal in Python (such as a function call without the parentheses).

Auto-completion is also much better at scanning your file (including imports) and providing you with a list of options. Note that TigerJython will only show you functions and variables but never keywords.

In Python many functions and classes have doc-strings and hence come with built-in documentation. TigerJython can now show you such doc-strings and other documentation. Just put the blinking cursor/caret on the word you are interested in and hit <F1>. The documentation -- if available -- will then be shown at the bottom of the editor.

When support for the Raspberry Pi is enabled (use the settings "library") you can establish a remote IDE to your Raspberry Pi (using SSH).

Thomas Thiede has written a Dutch translation of TigerJython, which is also included.

Since version 2.11.03 you can opt to send automated feedback about the error messages back to our server in Switzerland. The collected information is completely anonymized and used to improve the error messages. See the FAQs for more details and please consider helping us improve TigerJython!

Version 2.10

The interactive console now keeps a record of all output even when a new program is being executed.

When scrolling up and down in the debugger-window, your frames and objects will only go out of view if necessary. In other words: when scrolling down to look at different lists or objects the frame with global/local variables will remain in view.

At the bottom the debugger window now displays the active threads and memory used. When you move your mouse over the threads-count, a tooltip will list all active threads along with their current state.

Version 2.10.10 includes the possibility to directly create mp4-video files from your turtle or gpanel-animations.

Version 2.10.50 brings substantial extensions to interaction with your Raspberry Pi.

Version 2.9

In the interactive console you will find that your program code is now displayed with syntax highlighting just as in the main editor. We also improved the way error messages are displayed and got rid of redundant information.

When working with libraries you might not always recall the exact names of all the functions and objects you need. Or you might get tired of typing in large and complicated names. For this reason TigerJython now comes with the possibility to show you a list with all available names and complete the name you are writing on the fly. To keep it as unobtrusive as possible, this auto-complete-feature will not show unless you press <CTRL>+<SPACE>. Please note that this feature is limited to identifiers and does not include syntax patterns.

We found that the error messages at the bottom of the editor were not always as clearly visible as they should. To make them more prominent and thereby better support novice programmers we added a small display of the error message directly inside the editor where the error was found. You can, of course, disable these new messages in the preferences.

There is a new option in the preferences to hide the main window with the editor and the code during code execution. This is especially useful when the code might reveal unwanted information as in e. g. a quiz. However, note that output generated by print is not visible then, either.

TigerJython has come with support for Lego Robots and the Raspberry Pi for quite some time now. This new version also introduces support for robots based on the Raspberry Pi (see RaspiBrick for more details about this).

As of version 2.9.01 we implemented better support for installing TigerJython on a Windows-system. You can now just copy tigerjython2.jar to the "Program Files"-directory and it will automatically save the configurations in the local user-directory (see also the FAQs).

Version 2.8

For this version we improved the user experience. First, TigerJython should now start much faster than before. It will continue initializing the Jython interpreter in the background but now you can already start typing your program or loading a file while this happens.

When working with multiple documents using tabs, you will find that you can now close any file directly inside the tab as seen in most other editors and browsers. Of course, you can also rearrange the tabs as needed using your mouse and drag and drop.

For version 2.8.30 we also added some minimal support for screens with higher pixel densities. If your screen has more than 96 dpi and Java correctly identifies this high resolution, TigerJython will scale some of its icons and text. In case you do not want this option, you can turn it off in the preferences dialog.

Version 2.7

Version 2.7 uses the newest release of Jython and comes with many smaller enhancements and bug fixes to further improve your experience with TigerJython and its stability. Of course, we also updated the many libraries (turtle, robotics, etc.) that come bundled with TigerJython. One of the highlights are an expanded Robotics package giving you the possibility to combine your Lego EV3 robot with an Arduino and much more.

Version 2.6

For version 2.6 we managed to implement a completely new debugger. The main focus has been on the visualization of the current program state and its data. Instead of the text interface of previous versions, TigerJython has now a graphical representation of the objects that make up your program.

The debugger's visualization includes a call stack with the local variables of each called function as well as a list of Python objects currently in use. This is a great way to see how a list, say, is shared between a function and its caller or how an instance is derived from a class.

Our debugger's new visualization builds upon the Python Tutor by Philip Guo. However, we adapted our version to support the Java environment of TigerJython and provide more detailed information about the data such as the actual data type, the hexadecimal representation of integer values or a graphical display of a color value.

This version also allows you to use '^' as a power-operator as in sage and many other mathematical environments.

Version 2.5

The debugger's view of names (variables and functions) has been updated. There is now a simplified view available and you can switch between the simplified or expert view. In addition, you can hide the view of names in the console window.

TigerJython can now check automatically if there is an update available. It will check for major updates only (i.e. from 2.5 to 2.6 but not from 2.5.01 to 2.5.02) and print a small message in the output window at the bottom.

TigerJython now always changes the current directory to the python-script which is being executed.

The interactive console allows you to directly copy your session into the editor to have a complete Python script readily available.

Version 2.4

The display of return values in the interactive console has been improved. First, the turtle will report its current position and heading. Second, large dictionaries and lists of lists are displayed over several lines. Try for instance [[1, 2], [3, 4]].

The entry «Copy with formats» in the «Edit» menu lets you copy selected text to the clipboard, preserving syntax highlighting. Actually, the text is copied in the RTF-format.

The preferences allow you to change the size of the GPanel-window from the APLU libraries.

Version 2.3

Tigerjython automatically un-indents a line after keywords such as return or break. You can also use the backspace-key to un-indent.

Due to major improvements in the APLU library, TigerJython can now be used on the Raspberry Pi as well as for programming the Lego robots NXT and EV3. The documentation is built right into TigerJython (inside the «Help»-menu).

Version 2.2

This version comes with a new improved interactive console. Among the new features is the possibilitiy to recall previous inputs using the arrow keys. Output from the print-statement is still sent to the output window at the bottom. This is done to highlight the difference between print and return.

Version 2.1

For many common errors we added a short German description to the top of the error message. This feature will show only if the current language is set to German, of course. We managed also to improve certain error messages and keep working to improve error diagnostic.

The included version of Jython has been updated to the latest version of Jython 2.7 Beta 3. See also Frank Wierzbickis's Weblog.

New Features of Version 2

  • Edit several documents at the same time.
  • Zoom in and out of your editor windows just as you would in your browser.
  • Set breakpoints to stop your program on a specific line (only with active debugger).
  • Customize the colors in the editor.
  • Switch the editor's language to English, German or French.
  • Set the default parameters of the turtle such as window size or pen color.
  • Connect to your EV3 lego robot and control it using Python (this requires additional software).