New warnings for this version:

You may have to go to the "Debug" menu and select "Recreate Decoder Index"
to use the new decoder types that were added in this release. This is due to
a bug that will be fixed in JMRI 2.8.8.

If you're using the "Function Label" or "Roster Image" panes with the
DecoderPro "Comprehensive" programmer format, you should change to using
the "Advanced" format. You select this at the bottom of the window when opening
a locomotive for editing, or via the JMRI Preferences window.

Changes to the internal structure of the classes for the throttle windows (not the
throttle classes themselves) may cause trouble for scripts that were using them.

This release uses a different set of libraries for processing the XML panel files.
In turn, this means that if you've created your own startup scripts, you may need
to adjust them.

Warnings from older versions:

Starting in JMRI 2.7.6,
the Windows installer puts the Java libraries (jar files) in a lib subdirectory.
This is the same layout used on Linux and Mac OS X, and makes the JMRI program directory
much more organized and easier to understand. If you have your own custom startup scripts,
you may have to adjust them to the new library location. If you're just using the JMRI
installer and its startup tools, you shouldn't have to change anything you do.

The orientation of the coordinate system in the new audio support
changed in JMRI 2.7.6. Starting with that
release, when you are looking at the model railroad, X is positive toward the right, Y is positive into the layout
(away from you), and Z is positive upward. If you wrote scripts using the new audio support with
JMRI 2.7.5, you'll have to swap axes.

The new audio support in JMRI 2.7.5 requires some new libraries.
Those libraries are included in the JMRI downloads. They, in turn, require that the
startup scripts include the new libraries, so these have also been modified.
The 2.7.4 and earlier scripts will not work with 2.7.5 and later. In particular, if you've
created your own copies of startup scripts, you'll have to update those:

If your roster contains locomotives with Soundtraxx Steam Tsunami decoders,
you should migrate those roster entries to the new decoder definition names.
We've created a tool to make that easier.
For information on how to use that tool, please see the
separate note.

JMRI 2.7.4 changes the way filenames for icons, etc, are stored in XML files by JMRI.
The advantage is that this new method will make it much easier to move
panel files from one computer to another, even of a different type. So long as you
keep all your files in the JMRI preferences directory on both machines, the files
should just move over without trouble. The warning is that files written in this
format will not be properly read by JMRI versions before 2.7.4.
This includes files
from earlier versions that are read by JMRI 2.7.4 or later and then written out again,
as the program will update them to the new format upon storing them.

Changes since test version 2.7.6

The DecoderPro programmer definition files (in the xml/programmer directory) can now
control whether the "Function Label" and "Roster Media" panes are shown.
By default, the Basic programmer and the Comprehensive don't show them.
If you want those two panes, start using the new Advanced programmer format.
"Advanced" is be the default programmer format, if you don't pick any other one.

Dan Boudreau protected the code against certain errors when reading old operations configuration files,
fixed a minor shutdown bug, and an issue when counting cars.

David Duchamp fixed a problem with processing continuing sense when editing turnouts in Layout Editor

Dan Boudreau added a operations tool to show cars for locations and tracks.

Kevin Dickerson improved how Layout Editor windows are loaded;
changed the pop up to start and stop the clock so that it now works in the Layout Editor in the same way it does in the Panel Editor;
added code to enable a circle and elipse to be drawn for a track segments.

David Duchamp extended the Maple interface so JMRI can run multiuple Maple input touchpanels.

David Duchamp added "Special Actions"
to Transits.
These are actions that can be initiated automatically as a train running in automatic mode traverses
the layout.

Fixed a problem loading SE8c signal head definitions that include comments.

Simple Signal Logic now remembers whether you entered a user name or system name, and will
use that same information in the future. Previously, it converted whatever you entered into
a system name and remembered that.

Lionel Jeanson made some more improvements to the throttle windows:
He added a ThrottleToolBar in order to get all throttles in one window (this involved some changes
to the internal structure of the code that may cause problems for scripts if they were using
the internal interfaces of the Throttles; please check your scripts).
He also added default background image for DCC addresses 0 and 3.

Update XML parsing routines to use Xerces-J library instead of Crimson.
This may require users who have created their own startup scripts to reference
the xercesImpl.jar file instead of crimson.jar.

JMRI SignalHeads are supposed to start up DARK, so that whatever controls them can
then set their initial appearance. SE8c SignalHeads were not doing that properly.
Both the internal appearance (e.g. what shows on icons), and the actual signal, should
now properly start at DARK.

Signal heads and Simple Signal Logic now remember whichever user name or system name you
provide. Previously, names would be converted to system names before being stored.
This is the first step in a general overhaul to get this behavior.

Paul Bender added a javadoc-uml build target to the Ant build.
This uses UmlGraph and GraphViz to build UML class diagrams to include in the Javadoc.
UmlGraph is included as a jar in lib, GraphViz will need to be installed.
This requires Java 1.6. You can check out the results via the
UML diagram listing
on the JMRI web page.

Andrew Crosland updated the SPROG programmer to log an error if no programmer listener has
been provided to the programmer, for example in a script.

Andrew Crosland added support for the CBUS DCC command station, CV programmer and layout power manager.

Peter Ulvestad provided a decoder definition for the MRC 1827.
He also updated the MRC 1630, 1631, 1637, 1806, and 1819 definitions.