Fix filetree creation from single file
RsDirUtil::moveFile now works also if parent directories doesn't exists
Backport std::filesystem::create_directories from C++17
Fix missing RsDiscPgpKeyItem initialization
Fix inconsistent new[]/delete[] usage in RsDiscPgpKeyItem and
PGPHandler::exportPublicKey which now consistently uses malloc/free
Remove deprecated RsGenericSerializer::FORMAT_*
Move from deprecated RsServiceSerializer::SERIALIZATION_FLAG_* to
RsSerializationFlags
Solve a bunch of compiler warnings
Stricter checks in SerializeContext costructor
Fix bug in array-like containers serialization which could cause almost infinite
loop on malformed input
Implement VLQ integer serialization
Unify sequence containers serialization code
Add support for VLQ serialization also for string size
Use VLQ compression for file links
Add templated function to fix endiannes for all integer types
Use bitset to print flags in binary form
Unify serialization code for integral types
Serialize 64bit integers types to JSON object with both string and integer
representation, so it is posible to have this representation also for
containers types like std::vetor or std::map this breaks retrocompatibility
but is necessary to support clients written in languages which doesn't have
64 bit integers support such as JavaScript or Dart
Implement URL safe base64 for file links
Implement sneaking file data into URL fragment
Deprecate Radix65 in favore of RsBase64 which supports also URL safe encoding
Cleaned up UI, removing unnecessary sidebar.
Added cleanup of Dialog to reset properly
Disabled URL adder, until it is complete
Added ComboBox for reply sentiment
Only enable Post button when length between 1 and 999 characters
Add Icon to WireGroup (future proofing datatype)
Add blocking API Group Interfaces for photo,wire and wiki services.
Add service blocking API calls for createGroup/updateGroup/getGroupData.
Update GUI classes to match new GxsGroupDialog Interfaces.
Process messages to group replies correctly and sort by age.
Expand message display to include replies.
Add coloring to distinguish between replies and actual msgs.
Enable subscribe / unsubscribe buttons.
Add Selection of which set of groups are visible.
Add missing setNetworkExchangeService calls for photo + wire services.
JSON API debug lambda returned a dangling reference on Android, fix by
moving the scope of the returned object
What made this a bit tricky to understand was the fact that it happened
only on Android, while the code was formally incorrect for all
platforms, and strangely caused a stack overflow due to two std lib
functions (sentry and flush) calling each other ad infinitum
+#23379 0x603cb2a8 in std::__ndk1::basic_ostream<char, std::__ndk1::char_traits<char> >::flush (this=0x618e92bc) at /opt/android-ndk/sources/cxx-stl/llvm-libc++/include/ostream:949
+#23380 0x603cad08 in std::__ndk1::basic_ostream<char, std::__ndk1::char_traits<char> >::sentry::sentry (this=0x618e9284, __os=...) at /opt/android-ndk/sources/cxx-stl/llvm-libc++/include/ostream:270
+#23381 0x603cb2a8 in std::__ndk1::basic_ostream<char, std::__ndk1::char_traits<char> >::flush (this=0x618e92bc) at /opt/android-ndk/sources/cxx-stl/llvm-libc++/include/ostream:949
+#23382 0x603cad08 in std::__ndk1::basic_ostream<char, std::__ndk1::char_traits<char> >::sentry::sentry (this=0x618e9304, __os=...) at /opt/android-ndk/sources/cxx-stl/llvm-libc++/include/ostream:270
+#23383 0x603caa6c in std::__ndk1::__put_character_sequence<char, std::__ndk1::char_traits<char> > (__os=..., __str=0x61379a60 " user: ", __len=7) at /opt/android-ndk/sources/cxx-stl/llvm-libc++/include/ostream:726
+#23384 0x603caa30 in std::__ndk1::operator<< <std::__ndk1::char_traits<char> > (__os=..., __str=0x61379a60 " user: ") at /opt/android-ndk/sources/cxx-stl/llvm-libc++/include/ostream:869
+#23385 0x60522184 in t_RsLogger<(RsLoggerCategories)5>::operator<< <char [8]> (this=0x618e92bc, val=...) at ../../../../Development/rs-develop/libretroshare/src/util/rsdebug.h:53
+#23386 0x60bbe5ec in JsonApiServer::registerHandler(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::function<void (std::__ndk1::shared_ptr<restbed::Session>)> const&, bool)::$_259::operator()(std::__ndk1::shared_ptr<restbed::Session>, std::__ndk1::function<void (std::__ndk1::shared_ptr<restbed::Session>)> const&) const (this=0x617d8364, session=..., callback=...) at ../../../../Development/rs-develop/libretroshare/src/jsonapi/jsonapi.cpp:517
Update PhotoItem members
- remove excessive fields in Photo
- add RsGxsFile to Photo
- update ShareMode for Album
- renamed photo.mThumbnail to mLowResImage
Update Photo GUI
- enable setting of AlbumExtra parameters.
- added data for Ordering of photos
- stop showing duplicates in PhotoSlideShow
Added REF fields to Wire Msgs to allow replys to work well.
Added description of how the Message fields should be used.
Added WireGroupDialog for creation of WireGroups.
Updated PulseAddDialog to support publishing Pulses and Replies.
Added classes to display Pulses / Groups.
Added single selection point of WireGroup for publishing.
Added basic "refresh" to reload new GXS data.
Significant improvements to AlbumDialog
- load Existing Photos to the Album
- drag and drop add new Photos
- mark photos for deletion
- publish these changes
- color photoitems depending on state
Fixed up Top-Level Photo display.
- only show latest version of photo (hide deleted)
- fixup grouping by "Own / Subscribed / Other" Albums
- added Album detail editing using GxsGroupDialog
WIP improvements to PhotoService:
- switch p3photoservice to use gxcommentservice
- clean out old RsPhotoComment classes
- redesign PhotoDialog to use standard GxsCommentService classes
- remove unneeded old Comment classes from GUI
- fix indenting for PhotoDialog and p3photoservice.h
- fix layout issue in Extra Widgets for GxsGroupDialog
WIP improvements to PhotoService:
- Switch from custom image to use RsGxsImage
- Update classes for new Image class
- fix serialiser for photos
- switch group creation to use GxGroupDialog
- tweak GxsGroupDialog to display extra Widgets
- add AlbumExtra widget
Improve atomic access to restbed service
Protect JSON API restart against bursts
Fix JSON API error condition enum registration
Provide ostream helper for error_condition
Provide optional forced thread cancel for debugging purpose, disabled by
default at compile time define RS_THREAD_FORCE_STOP to enable it
Avoid double fullstop in retroshare-gui json api apply button
JSON API server uses standardized error handling based on
std::error_condition for a few method, this improve debugabbility both
from library size and from API client side
JSON API auth token are now more flexible, now the only proibition is using
colon character ':' in user name
Implemented TO_JSON operation for std::error_condition
Avoid unkown serial job handling code duplication via fatalUnknownSerialJob
Usability improvement in t_RsLogger
Disable compilation of now unused is_alphanumeric
Browsers won't let JavaScript properly handle the error if the corsa
headers are missing thanks Saud for report see:
retroshare://forum?name=Shouldn%27t%20CORS%20headers%20be%20present%20for%20all%20API%20responses%3F&id=8fd22bd8f99754461e7ba1ca8a727995&msgid=e3232ae3a1b76698576a9159ba962fa5091e710c
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.*
FSFE licensing checking program lint is now happy
$ reuse lint
* Bad licenses:
* Missing licenses:
* Unused licenses:
* Used licenses: AGPL-3.0-only, AGPL-3.0-or-later, Apache-2.0, CC-BY-SA-4.0, CC0-1.0, GPL-3.0-or-later, LGPL-3.0-or-later, MIT
* Read errors: 0
* Files with copyright information: 6324 / 6324
* Files with license information: 6324 / 6324
Congratulations! Your project is compliant with version 3.0 of the REUSE Specification :-)