Removed antipattern abstraction RsSingleJobThread
Rename runloop() method to run() in RsThread
Ported few classes ineriting from RsSingleJobThread to RsThread
RsThread use std::atomic instead of self implemented strange binary semaphores
Removed RsTickingThread::shutdown() use RsThread::askForStop() instead
Removed RsTickingThread::fullstop() use RsThread::fullstop() instead
Stop properly JSON API server in retroshare-gui
Centralize errno traslation to literal in util/rserrno.*
Link to GXS group is a concept that is useful for almost all GXS based
services, gen exchange now provides method to facilitate the
implementation of group links at service layer.
Move waitToken in token service interface.
ATM it support extracting metadata only from OGG files.
The system has been designed to be easly extensible to more file formats
registering more indexer functions which just need to extract metadata
from a certain type of file and feed it to Xapian.
The system has been integrated into existent file search system to
through generric search requests and results, it keep a good level of
retro-compatibility due to some tricks.
The indexing system is released under AGPLv3 so when libretroshare is compiled
with deep search enabled AGPLv3 must be honored instead of LGPLv3-or-later.
Cleaned up the debian copyright file using non-deprecated license
code-names.
Deprecate unsafe costructor, substituted by fromBufferUnsafe which explicitely
marked suggest the caller to pay attention.
Use enum class for id types instead of constants
Make size constants more private
Use internal Id_t alias to avoid huge template lines
Remove and deprecate oguly names in favor of consistent names
In file included from ../../../trunk/libretroshare/src/gxs/rsgxsutil.cc:
26:
../../../trunk/libretroshare/src/gxs/rsgxsutil.h:217:16: warning:
private field 'mSerializer' is not used [-Wunused-private-field]
RsSerialType& mSerializer;
^
This was causing scary error message in RsGxsChannels with autodoanload
enabled, when all messages where already processed none matched the
filter so all messages where returned,
making p3GxsChannels::handleUnprocessedPost furious
more details into this forum post
retroshare://forum?name=Scary%20message%2C%20but%20which%20doesn%27t%20seem%20to%20be%20the%20source%20of%20the%20problems%20Was%3A%20More%20GXS%20strange%20messages&id=8fd22bd8f99754461e7ba1ca8a727995&msgid=04f10ff97f761c6840c33f1610cb050f0f73da8d
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
Avoid problems to serialization on different platforms, without breaking
nested STL containers serialization.
The conversion have been made with sed, and checked with grep, plus
kdiff3 visual ispection, plus rutime tests, so it should be fine.