Qt 5.13 introduces many new features and improvements as well as bugfixes
over the 5.12.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:

https://doc.qt.io/qt-5/index.html

The Qt version 5.13 series is binary compatible with the 5.12.x series.
Applications compiled for 5.12 will continue to run with 5.13 under most
conditions.  There may be exceptions if you are using Qt Remote Objects
between proesses or devices running different versions Qt.  The different
versions of Qt must be running compatible versions of QtRO's protocol.

Changes to the Qt Remote Objects protocol are documented online:

https://doc.qt.io/qt-5/qtremoteobjects-compatibility.html

The QtRO protocol has been updated in Qt 5.12.4 and Qt 5.13.0 to 1.3.

Background:  Qt's QueuedConnections work by copying signal parameters so
the copy can be held and then later processed in another threads
eventloop, allowing the original data to be changed in the originating
thread.

Qt Remote Objects leverages this capability and sends that data from a
QObject in one process to a QObject in another.  There is a specific
protocol for this, as both sides need to interpret what is sent the
same way.  For example, there are Invoke and PropertyChanged packets
exchanged.  In addition to this, both sides need to know how to encode and
decode all types shared.  This type awareness is easy to ensure if the
repc compiler is used to generate the headers for all sides.

However, there are use cases where this isn't possible.  In these cases
QtRO will send the type (metaobject) information as well, allowing the
receiving side to generate the required type information at runtime for
certain types (PODs and enumerations).

There were issues found in this type serialization code that required a
change to the protocol.  There are a number of commits going into both
Qt 5.13.0 and Qt 5.12.4 with fixes.  This means that you will not be able
to use Qt Remote Objects on a device using Qt 5.12.3 or earlier and
communicate to another device using Qt 5.12.4/5.13.0.

Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:

https://bugreports.qt.io/

The following fixes were part of the above protocol change and are in
5.12.4 and 5.13.0.

Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.

 - QTBUG-75017: QtRO processes can crash if type registration is incorrect
 - QTBUG-75056: Correctly handle QVariant properties on the replica side
 - QTBUG-74084: QT remote objects false conversion warning in case of
   QVariant property
