Deprecated old method which exposed interna async mechanism to the API
users, making their and out life difficult
Things that really need to be async like turtle search/requests now accept
callbacks, so the caller can be notified everytime some result is got
back
Implement RsThread::async commodity wrapper to execute blocking API
calls without blocking the caller, this could be optimized
trasparently using a thread pool if necessary
Added hints into some retroshare-gui files on how to use RsThread::async
thoghether with QMetaObject::invokeMethod and blocking RetroShare API
to simplyfy interaction between GUI and libretroshare
/retroshare-gui/src/gui/RetroShareLink.cpp:1556: warning: this statement
may fall through [-Wimplicit-fallthrough=]
/retroshare-gui/src/gui/RetroShareLink.cpp:400: warning: implicit
conversion loses integer precision: 'qulonglong' (aka 'unsigned long
long') to 'uint32_t' (aka 'unsigned int')
/retroshare-gui/src/gui/RetroShareLink.cpp:736: warning: use of old-
style cast
/retroshare-gui/src/gui/RetroShareLink.cpp:733: warning: unannotated
fall-through between switch labels
/retroshare-gui/src/gui/RetroShareLink.cpp:1175: warning: implicit
conversion changes signedness: 'char' to 'unsigned char'
/retroshare-gui/src/gui/RetroShareLink.cpp:1193: warning: implicit
conversion changes signedness: 'char' to 'unsigned char'
/retroshare-gui/src/gui/RetroShareLink.cpp:1208: warning: implicit
conversion changes signedness: 'char' to 'unsigned char'
/retroshare-gui/src/gui/RetroShareLink.cpp:1228: warning: implicit
conversion changes signedness: 'char' to 'unsigned char'
/retroshare-gui/src/gui/RetroShareLink.cpp:1261: warning: implicit
conversion changes signedness: 'int' to 'unsigned int'
/retroshare-gui/src/gui/RetroShareLink.cpp:1507: warning: zero as null
pointer constant
/retroshare-gui/src/gui/RetroShareLink.cpp:1621: warning: zero as null
pointer constant
/retroshare-gui/src/gui/RetroShareLink.cpp:1696: warning: zero as null
pointer constant
/retroshare-gui/src/gui/RetroShareLink.cpp:1698: warning: zero as null
pointer constant
/retroshare-gui/src/gui/RetroShareLink.cpp:1742: warning: zero as null
pointer constant
/retroshare-gui/src/gui/RetroShareLink.cpp:1775: warning: implicit
conversion changes signedness: 'int' to 'unsigned int'
/retroshare-gui/src/gui/RetroShareLink.cpp:1779: warning: implicit
conversion changes signedness: 'int' to 'unsigned int'
/retroshare-gui/src/gui/RetroShareLink.cpp:1559: warning: unannotated
fall-through between switch labels
/retroshare-gui/src/gui/settings/MessagePage.cpp:62:19: warning:
deleting object of polymorphic class type 'Rs::Msgs::MsgTagType' which
has non-virtual destructor might cause undefined behavior [-Wdelete-non-
virtual-dtor]
/retroshare-gui/src/gui/settings/MessagePage.cpp:62: warning: delete
called on non-final 'Rs::Msgs::MsgTagType' that has virtual functions
but non-virtual destructor
/retroshare-gui/src/gui/settings/MessagePage.cpp:86: warning: use of
old-style cast
/retroshare-gui/src/gui/settings/MessagePage.cpp:172: warning: zero as
null pointer constant
/retroshare-gui/src/gui/settings/MessagePage.cpp:176: warning: implicit
conversion changes signedness: 'int' to 'uint32_t' (aka 'unsigned int')
/retroshare-gui/src/gui/settings/MessagePage.cpp:203: warning: zero as
null pointer constant
/retroshare-gui/src/gui/settings/MessagePage.cpp:207: warning: implicit
conversion changes signedness: 'int' to 'uint32_t' (aka 'unsigned int')
/retroshare-gui/src/gui/settings/MessagePage.cpp:261: warning: implicit
conversion changes signedness: 'int' to 'uint32_t' (aka 'unsigned int')
/libretroshare/src/retroshare/rsmsgs.h:168: warning:
'Rs::Msgs::MessageInfo' has virtual functions but non-virtual destructor
/libretroshare/src/retroshare/rsmsgs.h:168: warning: 'MessageInfo' has
no out-of-line virtual method definitions; its vtable will be emitted in
every translation unit
/libretroshare/src/retroshare/rsmsgs.h:234: warning:
'Rs::Msgs::MsgInfoSummary' has virtual functions but non-virtual
destructor
/libretroshare/src/retroshare/rsmsgs.h:234: warning: 'MsgInfoSummary'
has no out-of-line virtual method definitions; its vtable will be
emitted in every translation unit
/libretroshare/src/retroshare/rsmsgs.h:261: warning:
'Rs::Msgs::MsgTagInfo' has virtual functions but non-virtual destructor
/libretroshare/src/retroshare/rsmsgs.h:328: warning: 'ChatId' has
virtual functions but non-virtual destructor
/libretroshare/src/retroshare/rsmsgs.h:400: warning: 'ChatLobbyInvite'
has virtual functions but non-virtual destructor
/libretroshare/src/retroshare/rsmsgs.h:420: warning:
'VisibleChatLobbyRecord' has virtual functions but non-virtual
destructor
/libretroshare/src/retroshare/rsmsgs.h:420: warning:
'VisibleChatLobbyRecord' has no out-of-line virtual method definitions;
its vtable will be emitted in every translation unit
/libretroshare/src/retroshare/rsmsgs.h:449: warning: 'ChatLobbyInfo' has
virtual functions but non-virtual destructor
/libretroshare/src/retroshare/rsmsgs.h:486: warning: 'RsMsgs' has no
out-of-line virtual method definitions; its vtable will be emitted in
every translation unit
About vtable:
https://stackoverflow.com/questions/23746941/what-is-the-meaning-of-
clangs-wweak-vtables
https://stackoverflow.com/questions/50463374/avoid-weak-vtable-warnings-
for-classes-only-defined-in-a-source-file
/retroshare-gui/src/util/MouseEventFilter.cpp:56: warning: catching
polymorphic type 'class std::bad_cast' by value [-Wcatch-value=]
/retroshare-gui/src/util/MouseEventFilter.cpp:77: warning: catching
polymorphic type 'class std::bad_cast' by value [-Wcatch-value=]
Makefile.retroshare-gui:7593: warning: overriding recipe for target
'temp/moc/moc_TorProcess_p.cpp'
Makefile.retroshare-gui:7572: warning: ignoring old recipe for target
'temp/moc/moc_TorProcess_p.cpp'
Remove the redundant code and use the new function for importFriendlist().
This was not tested - i use the same code in SyncFriends plugin and tested it there.
Avoid the need of dirty patching to set the version at build time
In case RS version is not passed as argument attempt to determine it
using git describe, if unavailable use hardcoded default
Enforce it being 127.0.0.1 by default, I assumed 127.0.0.1 was restbed
default, but as reported by sehraf is not alwayd the case
JSON API bind address now is also configurable via commandline on
retroshare-android-service and retroshare-nogui, while it obey the
configuration of webui (execept for that port is incremented by 2)
in retroshare-gui
Some modifications breaks retrocompatibility of GXS search:
remove horrible templated RsTypeSerializer::serial_process for
RsGxsGroupSummary with hardcoded member names
RsGxsGroupSummary doesn't use old TLV serialization format anymore
RsGxsGroupSummary remove unused description member
RsGxsGroupSummary derive from RsSerializable and use serialization
helper macro
Add autor id and signature flags to the index so there is no need to
retrive them from GXS, thus improving performances
RsGroupNetworkStats initialize members properly
RsGxsGroupSummary rename members to follow usual mMemberName convention
RsGxsIfaceHelper::requestStatus expose it to JSON API
Implemented RsGxsIfaceHelper::waitToken to wait for GXS operations
RsItem::serial_process fix doxygen warning as it's a comment not documentation
RsTypeSerializer add JSON conversion methods for double [de]serialization not
implemented yet
RsTypeSerializer_PRIVATE_{FROM,TO}_JSON_ARRAY fix doxygen warning as it's a
comment not documentation
make GxsChannels::ExtraFileHash a bit more reasonable
jsonapi-generator fix unused variable warning if there is no input or output
paramethers
jsonapi-generator fix generation for inerithed jsonapi methods
Convert to RsSerializable some Gxs structs for the JSON API
qmake file add jsonapi-generator target to compile JSON API generator
qmake files add rs_jsonapi CONFIG option to enable/disable JSON API at compile
time
RsTypeSerializer pass down same serialization flags when creating new context
for nested objects serial job
RsGxsChannels expose a few methods through JSON API as example
Derive a few GXS types (RsGxsChannelGroup, RsGxsChannelPost, RsGxsFile,
RsMsgMetaData) from RsSerializables so they can be used for the JSON API
Create RsGenericSerializer::SERIALIZATION_FLAG_YIELDING so JSON objects that
miss some fields can be still deserialized, this improve API usability
SerializeContext offer friendly constructor with default paramethers
Add restbed 4.6 library as git submodule as most systems doesn't have it yet
Add a bit of documentation about JSON API into jsonapi-generator/README.adoc
Add JsonApiServer class to expose the JSON API via HTTP protocol