the MRCI protocol has been upgraded to support branch ids
so running multiple instances of the same command can run
at the same time at the host side. this client however
will still continue to run host commands in FIFO but this
is something that can be added in the near future.
another change to the protocol is the version negotiation
is now entirely one-sided so just the client can now
decide of the host version is acceptable or not.
the NEW_CMD frames from MRCI host will now include all of
the command documentation so listing of all available
commands and documentation is now entirely client
controlled because the host no longer have built in
documentation commands.
this client's Session object now operate in it's own
thread. for now, this does nothing but this is a prelude
for future performance updates that will including
multi-threading.
I learned the Qt binaries directory can end up in a non-standard
directory seperate from the Qt libaries and plugins and this kind of
setup would cause the script to fail to copy all needed files. To fix
this, i hard coded the standard directory:
'/usr/lib/x86_64-linux-gnu/qt5/bin' into the script instead of having
it call qtpaths.
Ended users that have even further customized setups will need modify
the build script themselves to make sure all references to $qt_dir
points to the correct directory for their dev setup.
Found issues with missing library files while testing on a clean system running
Ubuntu 19.04 that doesn't have the Qt library development packages installed.
However, even with libqxcb.so and libQt5XcbQpa.so added to install directory,
the client still would not start complaining about mixed Qt library versions. I
then finally decided to build the client on the debian official Qt5.7.1 package,
added libQt5DBus.so, libGL.so, libpcre16.so, all plugins in xcbglintegrations
and that worked.
The build script will now get the Qt bin directory via 'qtpaths' if not given.
Moved the LICENSE.md file to the root directory so github can now read it.