Release Notes for JMRI 1.5.3 test release

Date: September 2, 2004

From: Bob Jacobsen

Subject: Test version 1.5.3 of JMRI/DecoderPro is available for download.

Notes:

This is a test release. Please post a note if you encounter any new or old bugs! And please back up your JMRI files before installing this, in case you want to go back to an earlier version. As you'll see from the list of changes below, a lot of foundation code has been changed. In particular, the C/MRI, EasyDCC and Lenz connections have had major rewrites, so your feedback will be greatly appreciated.

This test release is part of a series that will eventually lead up to a production release called version 1.6; no date has been set for when that will happen.

There was no public 1.5.1 test version; it was used for internal testing.

New warnings for this test version:

The method for configuring the C/MRI protocol has changed. If you use the C/MRI protocol, you will have to reconfigure your preferences the first time you run this version.

Download links:

Please use these links for downloading, including the "?download" at the end. That adds to SourceForge's advertising statistics, which makes them happy to host our stuff.

Older warnings for the 1.5 series of test versions:

The method for configuring the C/MRI protocol has changed since version 1.4. If you use the C/MRI protocol, you will have to reconfigure your preferences the first time you run this version.

Changes since test version 1.5.2:

Fix bug introduced in 1.5.2 that prevented panel editor window from opening when reloading a panel file (bug 1006343)

Fix typos in configuration items noticed by Dick Bronson. Also, improve wording of baud-rate selection prompt following his suggestion.

Add menu item to panel so that panel editor can be reopened.

Panels are now stored with information as to whether the corresponding panel editor is visible or not, and will be reloaded as they were stored.

Add "File" menu to panel editor that allows new/load/store operations.

Change SignalHeadManager persistence to remove all the extra (empty) elements written to the panel files

Fix a bug (994684) where changing the protocol in preferences several times would cause program to hang.

Michal Basta updated the two Czech translations. These should have appeared earlier, but were lost due to a mistake while merging the code.

Fix a bug where a request for a LocoNet throttle would fail if there was already one open.

Fixed two bugs with LocoBuffer preferences: LocoBuffer-II and Intellibox would only work at 19200 baud, and sometimes the wrong options would be shown when a protocol was selected. (#1009362, #1009365)

Rework table-based tools (tables for Turnouts, Sensors, Routes, Memories and Reporters, plus the LocoNet slot monitor and the thread table) to add additional GUI features: Click on column headings to sort up or down; Ctrl-click to add secondary sorts; columns can now be dragged to new positions; better initial sizing.

Programming with a Lenz command station will now report a short circuit properly when (if?) one occurs - Paul Bender

Fixed bug on MacOS Classic that prevented setting the default programmer name (Bug #937589)

Updated build system so that MacClassic versions could be automatically built with correct compilation steps, etc. (Bug 1013476)

Paul Bender improved the consist tool to remove artificial consist limit, and add the ability to recall a consist within a single session. He also corrected some minor bugs.

Jeff Law provided new decoder definitions for the Umelec ATL-2051, ATL-2054 and ATL-2064.

Paul Bender provided a decoder definition for the Lenz 1000 "Value Line" decoder

Fixed the Digitrax DH123 definition, which had high and low CV7 values reversed so that it wouldn't identify (Bug 1014996)

DecoderPro would sometimes get in a "loop" reading CVs while reading a decoder's speed table. It would just sit there reading the same couple of CVs over and over and over again. This was hard to reproduce, but it believed to be fixed (Bug 994607)

Alfredo Sola updated the Spanish translation.

Mark Marowicz provided a CT Electronik SL 51 decoder definition

Output from scripts can now be viewed in a window via "Script Output" from the Panels menu. The "Script Entry" item in the Panels menu will pop a window in which you can enter jython statements (single or multiline) and click execute to run them.

A "defaulticon" attribute has been added to "memoryicon" storage in the XML panel files. This lets you set the icon that's displayed when the Memory object has a value for which no other icon is displayed.

Memory objects were added in version 1.5.2. We are making a _NON_BACKWARD_COMPATIBLE_ change to the way these are stored in panel files in this version. If you have created any panel files that use Memory objects in version 1.5.2, you will NOT be able to load them with this (and all later) until you have opened the file with an editor and changed all of the occurrences of the element named "memorys" to "memories". We apologize for the inconvenience of this mis-spelling. A similar change is being made to the variable available in scripts; you will have to make a similar change there.

Support for playing sounds from scripts has been added. See the SampleSound.py example. Two sample sounds have been added to the distribution in resources/sounds: Crossing.wav, a grade-crossing bell, and RlyClick.wav, a relay click that you can add to your scripts so that you can hear when a panel lever is thrown. Unfortunately, these are in "WAV" format, which Classic Macintosh can't play, but they were the only railroad sounds handy. "AU" and "AVI" formats should work on all platforms. Contributions of good sounds would be very welcome!

The process for building distributions has been split for Macintosh Classic and other systems. Mac Classic will continue to be built using the Java 1.1 compiler (though there were also some changes there); other platforms will now be using the Java 1.3 compiler. This should generate some small speed improvements, and will improve compatibility for people basing their projects on the jmri.jar file. As part of this, the Macintosh Classic distribution will include a different jmri.jar than the rest of the distributions. The Mac Classic version will work on all platforms, but the jmri.jar from other platforms will not work on Mac Classic.