Release Notes for JMRI 4.12 release

Date: July 13, 2018

From: Bob Jacobsen

Subject: Production Release 4.12 of JMRI/DecoderPro is available for download.

We are very pleased to announce that the 4.11 series of JMRI test releases has resulted in a version that's good enough to be recommended for general use, including by new users. We're therefore making that version, "Production Release 4.12" available for download today.

Notes:

JMRI is now only available under the GNU General Public License. For more information, please see our copyright and licensing page.

after image before image

Required Migration StepSince JMRI 4.7.4

JMRI was updated in JMRI 4.7.4 to use a new serial library. Depending on your exact circumstances, you may need to do some migrations:

Known problems with this release

Warnings for this release:

See the JMRI 4.10 release note for more warnings predating the 4.11 development series. These may be relevant to you if you're updating from a version earlier than JMRI 4.10.

Since JMRI 4.11.8 Some new display capabilities were introduced into Layout Editor during JMRI 4.11-series development. This release changes some of the defaults in this area, which might change the appearance of some track segments on your panels if they're still using default values. If you select them and change their properties, then save your panel file(s), you can restore their previous appearance. There's a PDF document with more details. We apologize for the inconvenience.

Since JMRI 4.11.8 Because of changes to the "node identification" algorithm used to tell one computer running JMRI from another, you might receive a warning message about the "Node Identity" the first time you run JMRI version 4.11.8 or newer. (If you have more than one profile, this can happen with each). There's no permanent problem here, but you might have to reset your window preferences (i.e. position and size, column layout, etc) in this case. We apologize for the inconvenience.

Since JMRI 4.11.4 The additions to Layout Editor in JMRI 4.11.4 mean that files containing Layout Editor panels written by JMRI 4.11.4 or later will fail a validation check in JMRI 4.11.3 or earlier. If you back-date your JMRI version and need to to get past this, please bypass validation.

Since JMRI 4.11.4 If you are running a local web site with a copy of the JMRI content, as described here, please repeat the "setSymLinks.sh" step near the bottom of those instructions after installing JMRI 4.11.4 (or later). This will make some new formatting available on your local site.

Since JMRI 4.11.4 There are issues with the Pi-SPROG One command station operation. A number of workarounds should be applied:

Pi-SPROG One with version 2.4 or earlier firmware will cause a timeout after a track short circuit. A dialog box will open to inform the user of this. The track power will be turned off and must be turned on again using the power control.

Since JMRI 4.11.2 The system connection preferences (i.e. hardware preferences) are now enforcing the correct form for system prefixes: One upper case letter, optionally followed by a number (one or more digits, e.g. "L12"). Existing prefixes in existing configurations are unchanged, but new ones will have to have the correct form.

Since JMRI 4.9.4 Due to changes in the capitalization of some method and property names, some scripts may fail until adjusted to use the new capitalization. The Javadocs for any JMRI class will list the correct capitalization.

Since JMRI 4.9.4 For Windows users only: JMRI 4.9.3 (and all later) has a new version of the "LaunchJMRI.exe" program. It's used to set options as JMRI is starting up, and is a completely normal part of JMRI. Because it's new and different, however, your anti-virus program may reject it. You might get a message about "file removed" or "file quarantined" or similar and then JMRI might not start. The solution is to make sure that your anti-virus program doesn't interfere with JMRI's installation and running. There are so many of those, unfortunately, that we can't really provide useful instructions beyond that.

Since JMRI 4.7.6 If you're having trouble getting your DCC programmer to work, try checking that the "Defaults" under "Preferences" are set to your hardware system. The reason: This version of JMRI (and all later) provides more options for "default systems": If you have multiple sets of hardware attached, which should be used for throttles, for programming, etc. JMRI tries to guess the right settings for these when you upgrade to this version, but apparently it sometimes gets that wrong (we haven't been able to track that down yet). Setting them manually fixes any wrong guesses.

Since JMRI 4.7.3 This release will not start cleanly if installed over earlier versions of JMRI (the Windows installer ensures this is not an issue). Remove the JAR files jackson-annotations-2.0.6.jar, jackson-core-2.0.6.jar, and jackson-databind-2.0.6.jar from the lib directory within the previous installation directory to resolve this.

Since JMRI 4.7.1 JMRI no longer supports the portable paths resource: or file: that were deprecated in JMRI 2.13. When loading a panel, an error message will be displayed if the panel contains a path that starts with resource: and the panel will not load until changed using an external editor. Paths starting with file: cannot be automatically flagged because JMRI allows file: URLs; these will have to be changed manually.

Since JMRI 4.7.1 When loading a panel file, JMRI applications now check the file's syntax and contents. This process is called "XML validation" If validation fails, an error message is shown that should explain the error, allowing it to be fixed using an editor. (The explanations remain a work in progress.) If you have a problem loading a panel file, please

  1. Configure your JMRI startup to first run the jython/TurnOffXmlValidation.py script which will suppress the error. This script needs to be run before your panel is loaded.
  2. Write out a new version of the panel file (after saving a backup!)
  3. Use that new version from now on.
  4. And drop use of the jython/TurnOffXmlValidation.py script.

Since JMRI 4.5.2 This and future releases of JMRI may not function on OS X if the Java SE 6 provided by Apple is installed. OS X operating system updates routinely remove this version of Java SE 6. Please raise any issues concerning this on the user's group. To remove Java SE 6 from OS X, follow these steps (these steps assume JMRI is installed in the folder /Applications/JMRI, if not, adjust the following paths as needed):

  1. Open Terminal.app.

    El Capitan only: Reboot into Recovery Mode by restarting your Mac and pressing Cmd-R until the Apple logo appears. Once in Recovery Mode, select Terminal from the Utilities menu.

  2. Run the command /Applications/JMRI/PanelPro.app/Contents/Resources/uninstall-java6.sh It can take up to a half hour to complete. Wait for the message Removed Apple Java SE6.

    El Capitan only: Run the command bash /Volumes/Macintosh\ HD/Applications/JMRI/PanelPro.app/Contents/Resources/uninstall-java6.sh /Volumes/Macintosh\ HD It can take up to a half hour to complete. Wait for the message Removed Apple Java SE6.

  3. El Capitan only: Restart your Mac.

Since JMRI 4.5.2 Support for directly executing AppleScript within JMRI has been removed. If you require the ability to use AppleScript, you may be able to add this capability on your own by visiting JMRI AppleScript Support, but please be aware that this may not work on upcoming releases of macOS or Java.

Download links:

Please note that the download links in this and future JMRI releases link to Github servers. People are welcome to distribute the download files further via other websites, etc. If you want to check that you've received original, unmodified versions, please check the files against the checksums shown below.

Changes since production release 4.10:

The full lists of changes in each of the preceding test releases (4.11.1, 4.11.2, 4.11.3, 4.11.4, 4.11.5, 4.11.6, 4.11.7, 4.11.8) are available in our GitHub code repository.

Hardware Support

Anyma DMX512

Bachrus Speedo

C/MRI

DCC++

DCC4pc

Direct

ESU

LocoNet

Maple

Marklin CS2

MERG CBUS

MRC

Oak Tree

OpenLCB

ProTrak (Grapevine)

Secsi

SPROG