Release Notes for JMRI 5.5.3 release
Date: August 5, 2023
From: Bob Jacobsen
Subject: Test Release 5.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.
This is the next in a series of 5.5.* test releases.
It requires Java 11 to work.
(See our page on downloading Java 11)
We expect this series to end in the next JMRI 5.6 production release in December 2023.
(See the tentative release schedule)
Some of the changes involved are quite extensive.
They may require a certain amount of experience before they are working well.
Therefore, this test release should be considered experimental.
We would appreciate your feedback on it.
JMRI is now only available under the
GNU General Public License. For more information, please
see our
copyright and licensing page.
Update From Older JMRI Versions
If you are currently using a version older than JMRI 5.0, please follow these instructions carefully:
- Is your current version older than JMRI 4.12?
If so, then update to JMRI 4.12 first, and ensure everything works correctly: check
start-up, check things you need to be working, and check the JMRI log as well) before doing anything else.
Store your configuration and panel files under a new name and use those from now on.
Then continue with step 2.
If you are currently using JMRI 4.7.3 or earlier on Linux or macOS (Windows doesn't need this),
then it's very important
that you update to JMRI 4.12 and
carrying out the migration process described in the JMRI 4.12 release note
before updating to any later release.
- Is your current version older than JMRI 4.20?
Then update to JMRI 4.20 first, and ensure that works correctly (check
start-up, check things you need to be working, and check the JMRI log as well) before doing anything else.
Save your preferences again.
Store your configuration and panel files under a new name, use those from now on, and go on to step 3.
- Is your current version older than JMRI 4.24?
Then update to JMRI 4.24 first, and ensure that works correctly (check
start-up, check things you need to be working, and check the JMRI log as well) before doing anything else.
Save your preferences again.
Store your configuration and panel files under a new name and use those from now on.
- Is your current version older than JMRI 5.0?
Then update to JMRI 5.0 first, and ensure that works correctly (check
start-up, check things you need to be working, and check the JMRI log as well) before doing anything else.
Save your preferences again.
Store your configuration and panel files under a new name and use those from now on.
- You can then install this release.
Following this multi-step order of updating via stable major releases safeguards you against possible migration issues
that can arise from skipping these versions.
New problems with this release
- TurnoutStatePersistence.py was not correctly updated to use SLF4J, line 127 should be
log = LoggerFactory.getLogger("jmri.jmrit.jython.exec.TurnoutStatePersistence.LoadTurnoutState")
New warnings for this release:
-
LocoNet Server and LocoNet Client have been removed.
If you are using these, you need to change the connection to
LocoNet over TCP instead.
-
Scripts that output Logging statements with log4j should be updated to import sl4fj logging.
See here for some examples on how to do this.
Older warnings
See the
JMRI 5.4 release note for more warnings predating the 5.5 development series,
including pointers to various migration issues.
These may be relevant to you if you're updating from an earlier version;
we strongly recommend you update to at least
JMRI 5.0
before installing this test release.
See
instructions above.
- Since JMRI 4.99.1
This test release, and all subsequent ones, require the use of
Java 11 or later. Java 8 is explicitly not supported.
There's more information on this migration on the
JMRI Tech Road Map and
JVM Capabilities pages.
- Since JMRI 5.3.2
Some images in the resources/icons folder have been renamed.
Spaces have been changed to underscore. It's images in the
resources/icons/ItalianSignals/ACEI,
resources/icons/ItalianSignals/Prototypical,
resources/icons/smallschematics/aspects/NW-1981,
resources/icons/smallschematics/aspects/NYC-1956,
xml/signals/FS-1987, xml/signals/NW-1981,
xml/signals/NYC-1956 and resources/icons/SNCF/Small
folders that have been renamed. If you are using these images directly, you will need to update the reference.
- Since JMRI 5.3.7
The definition of "Last Seen" for Id Tags has been
clarified to mean "Location where the tag was last seen to be present".
Previously, a report that a tag was absent could be remembered as the
last seen report. The relevant code changes are specific to LocoNet
Reporters. This might affect your scripts and LogixNG if you were assuming
the prior behavior.
- Since JMRI 5.3.7
Some Reporters, particularly LocoNet, would improperly clear an "enter" report
when an "exits" report for the same tag was seen elsewhere. This was an
error that has been fixed, but if you have scripts or LogixNG that depend on
this behavior you might have to update them.
Download links:
These files are located in the
JMRI 5.5.3 GitHub release.
The
list of included changes is available from our
GitHub code repository.
Hardware Support
C/MRI
- Provided an extra copy of the output data when preparing
C/MRI output data for a "T" ("Transmit") message type. This
prevents a "data buffer overrun" in a pre-configured buffer
when the output data changes when the process assemble the data.
(The previous implementation could run out of available bytes
in the buffer, and the data would not be sent.)
DCC++ and DCC-EX
- Call "Roster Export to DCC-EX" from DCC++ menu
- Traffic Monitor - Added option to suppress the parsed text
LocoNet
- LocoNet Server and LocoNet Client have been removed.
If you are using these, you need to change the connection to
LocoNet over TCP instead.
- OpenLCB library updated through
PR 231.
- Added a contextual menu (right click, ctrl click) to tabs in the CDI display that
contains "Copy" and "Paste" options.
Copy and paste works both within one window and across windows.
You can only paste into a tab of the same type from which you copied.
The data stored in the clipboard is in the format of the usual backup files.
- Added a Send PIP Inquiry button to the Send tool
Roco z21/Z21
- JMRI will now leave the layout power unchanged when it terminates.
Previously, it would turn the power on if it was off.
SPROG
-
Track power ON at startup option would turn on track power but not send packets,
requiring track power to be cycled. Fixed.
TAMS
- New decoder definition for the LD-G-9 decoder.
New / Updated decoder definitions
Doehler & Haas
- added PD06A, PD18A, PD18MU and PD21A and 2nd generation-decoder of DH-series
- disable unimplemented CV by PD-series
- new definition-files for FW 1.13 for SD*-, FW 1.15 for SH*-, FW 3.13 for DH*-decoder
Piko
- Add CVs for Extended Function Mapping Shift Bank 1 & 2
QSI
- Added function labels for Ver 6 Steam and Diesel definitions
Uhlenbrock
- Some translations to German and pane design changes
Scripting
- Add a "jython/RunSystemCommandExample.py" sample for
how to run a system command from a JMRI script.
- Scripts that output Logging statements with log4j should be updated to import sl4fj logging.
See here for some examples on how to do this.
Signals
Signal Systems
- Pino Di Biasi provided a
Swiss Railways (SBB in German, CFF in French and FFS in Italian)
signal system definition.
Virtual Sound Decoder
- Fixed a bug with wrong direction in an oval layout.
- Minor change on the Manager window GUI. The windows for adding
a VSDecoder and to handle the option now are centered to the manager
window. This is not a functional change.
- Removed unimplemented methods for "AudioMode" and "DefaultVSDFileName".
Miscellaneous
- The external libraries used for Logging have been updated.
- The Hide when empty and not editing menu item has been added to
the right click pop-up menus for block content labels, memory labels and LogixNG global
variable labels. This applies to Panel Editor, Control Panel Editor and Layout Editor
panels.
- Added a jython/test/loconet directory for LocoNet-specific scripting tests,
along with an initial test.