Release Notes for JMRI 4.15.7 release
Date: mmm dd, 2019
Subject: Test Release 4.15.7 of JMRI/DecoderPro is available for download.
This is a draft release note only; the download links do not yet work
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 test releases. We expect this series to end in the next JMRI production release during early Summer 2019. (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.
Update From Older JMRI Versions
If you are currently using JMRI 4.9.6 or earlier, we strongly recommend that you update to JMRI 4.12 and make sure that's running OK before updating to this test release. There have been a number of changes in serial port support, panel file format and configuration options since those earlier releases, and moving to the stable JMRI 4.12 release is a good way to work through any possible problems.
If you are currently using JMRI 4.7.3 or earlier on Linux or macOS (Windows doesn't need this), you must update to JMRI 4.12 and carrying out the migration process described in the JMRI 4.12 release note before updating to this release.
Known problems with this release
New warnings for this release:
- None yet
Older warningsSee the JMRI 4.14 release note for more warnings predating the 4.15 development series. These may be relevant to you if you're updating from an earlier version.
- Since JMRI 4.15.6 Remembering the location and size of layout panels created and maintained using Layout Editor, Panel Editor, Control Panel Editor, and Switchboard Editor is no longer dependent on saving the panel. The location and size values are retained using the same processes used by other JMRI windows. This makes the window management behavior consistent. To continue using the old behavior, go to Preferences >> Display and enable Use old location and size logic for editor panels.
- Since JMRI 4.15.6
Starting in JMRI 4.15.6, Memories
must have valid system names of the form "IM" folllowed by something.
"IM123" and "IMEAST" are both valid.
The system name "IM", all by itself, has never been valid, but JMRI
will now be enforcing that:
- You won't be able to create a memory with that name via the Memory table or scripts
- If you have that name in a panel file, an error will be logged and the panel file won't load. You'll have to remove it from he file or rename it in the file before loading it.
- Since JMRI 4.15.5
The handling of Turnout system names has been updated
to be (more, hopefully completely) consistent with the
Specifically, case now (generally) matters in system names:
- You can now have an internal turnout named "ITsome lower case name".
- But note you can no longer refer to "ITSOME LOWER CASE NAME" or "ITSome LoWeR cAse Name" and get the same one.
- Since JMRI 4.15.4 The calculation of Turnout Addresses for the Direct DCC Accessory Command ("a" command) mode has been fixed (commands are now sent to the correct accessory address rather than 4 less than the nominated hardware address). For pre-existing panels, changes will need to be made to either the actual decoder address or the panel. If help is required, ask on the jmriusers group.
- Since JMRI 4.15.3 The prefix that identifies a layout connection should be a single letter, like "N" or "L", or a letter and some digits, like "K2" or "D3". Some older systems used to have longer "legacy system prefixes" like "DX", "DCCPP", "DP", "MR", "MC", "PI", and "TM". Those legacy system prefixes will now cause JMRI to issues a warning at startup. In this release, JMRI will still work with those prefixes, but they will need to be migrated to the proper form soon; JMRI 4.17.1 and later will require that this have been fixed. Therefore, this warning can't be suppressed without migrating the prefix in the connection configuration (and any associated panel files and scripts). If you're getting this warning and therefore need to do that migration, migration page.
- Since JMRI 4.11.4
There are issues with the Pi-SPROG One command station operation. A number of workarounds should be applied:
- Do not turn on the track power until the power supply to the Pi-SPROG ONE is turned on
- Do not enable extra debugging through default.lcf, nor open the system console window
- Do not open the SPROG console window
- Disable power conversion (CV 29) in all locos
- If connecting via VNC (or similar), setup the screen layout before turning on the track power
Download links:During development leading to the actual release, you can find test download files on the continuous integration build page. These are development files, and might not be working at any particular time.
Changes since Test release 4.15.6:The list of included commits is available from our GitHub code repository.
JMRI Simple Server/JMRI Client
- Increased support for stealing / sharing command station sessions, see CBUS Hardware Support
New / Updated decoder definitions
- Nigel Cliffe added a decoder definition for the NGS custom CT decoder
Doehler & Haas
Mistral Train Models
Norsk Modelljernbane (NJM)
- Color for new tracks is now consistent within a single Layout Editor.
Turnouts, Lights, Sensors and other elements
- The table and manager containing the element are no longer listed as items using the element when deleting the element in the delete confirmation dialog. The count of items using the element shown in the delete confirmation dialog now match the number of items shown to be using the element.
- 2 lines in scripts that use the
DCCThrottle.py Jynstrument may need to be added,
Insert after line 141
New line 142 :
def notifyDecisionRequired(LocoAddress, decision):
New line 143 :
These changes were made to enhance the JMRI Steal / Share mechanism for hardware types that support this.
Simple Signal Logic
NX Entry/Exit Logic
USS CTC Logic
- JSON clients can now add, edit, or remove Blocks, IdTags, LayoutBlocks, Operations Locations, Operations Cars, Operations Engines, Operations Tracks, Reporters, and Sensors.
- JSON clients using WebSockets can now include an
idproperty in the message to match a direct response to a message to the original message.
- Warning the JSON protocol version has been bumped to version 5.0 due to backwards incompatible changes to make different JSON objects more internally consistent and to accomodate the ability to remove some objects. See the JSON Version History for more details.
Virtual Sound Decoder
jmri.util.ColorUtil.stringToColor()method now throws an
IllegalArgumentExceptionif unable to turn a String into a Color instead of returning the Color Black.