diff --git a/retroshare-gui/src/changelog.txt b/retroshare-gui/src/changelog.txt index 4b42783f7..c535d3a42 100644 --- a/retroshare-gui/src/changelog.txt +++ b/retroshare-gui/src/changelog.txt @@ -1,4 +1,234 @@ -Changes 0.5.5a +Changes for 0.5.5c + + * Improvements + - General + * Updated languages from Transifex + * Added language Catalan (ca_ES) + + - Transfers + * new cache system for RemoteDirModel, which significantly speeds up the display of shared files + * added generic function to return the correct string for scanf for unsigned ints depending on the + size of the actual variable that is scanned. Should fix the rehash bug and bugs corrupting + timestamps on some 32bits systems + * Added few more file type icons for "cpp", "h" nd "c", "patch" and "diff" extensions + * Moved Uploads to Downloads Tab. + * Added to change the text for the Play Button, when file is not a media file. + * Added a custom context menu for pasting RS-links to the base class MimeTextEdit and removed + the custom context menu from derived classes. Updated english translation. + * patch "AddSearchFilesourceSorted_6951.diff" from Phenom. Adds correct sorting for search results. + * extended max chunk TTL to 1 hour. A short TTL is not anymore needed since chuns are shared between sources + + - Chat + * patch "chatdialog_allow_buttons_from_different_plugins_3" from electron. ChatDialog allows + now Buttons from different Plugins. + * patch "Fix_ChatLobbyAutoSubscribe_6951.diff" from Phenom. Fixes request for existing lobbies + when no lobby ihas been found yet. Code beautification + * added lobby ID as tooltip to lobby list + + - Forums + * added ElidedLabel to be used in places where labels might be too long and therefore + trigger an unwanted window resize. This is currently used as forum thread titles (Patch from Phenom) + + - Channels + * patch "Fix_ChannelNotificationFeedLink" from Phenom. Allows to finish loading a channel + before jumping to the linked post + * Added a default background color for the Channel Message Logo for a better look and feel, + removed stretching of the logo, set a minimum size, background is now filled black. + + - Notification + * reworked the notification system, which is now a standalone service. Now plugins can receive notifications. + * Corrected the layout of the Connect Progress Dialog + * Changed the logo size for some news feed items to use same size for better look. + * Added to display blue/black forum message icons for the forum feeds, when forum is anon or signed. + * Added new feed item types and logic to show connection attempts from forged certificates + (e.g. bad signature, bad certificate) + * Limit number of feed items to 500 to avoid flooding + * Changed the default stylesheet color for the Security Feed + * improved display/fixed bugs in security item + + - plugins + * Added service pointer for forums to the plugin interface + * FeedReader: Used the forums pointer from the plugin interface instead of the global pointer + * added missing services in RsPluginInterface class + + - GXS + * Enabled the Filter Line edit for filtering friends, by nick/ID for Create Circles Dialog's + Known Identities Widget. + * Set some minimum header sizes for some items + * Enabled sorting for the QTreeWidget's + * fixed temporary to load the Wiki Groups Tree at startup, auto update seems not to work. + + - core + * moved PGP id and SSLid types into rsid.h, and renamed them with a more appropriate name + * fixed cipher list for openssl. ECDHE is not configured, so it cannot be used + * added serialisation methods for SSLId and time_t + * added an option in the pro file for dsdv, as it is compiled when not used + * removed status member from FileDetails. Not used => misleading + * removed asserts in reader_armoured.c, reader_encrypted_se.c, reader_encrypted_seip.c, readerwriter.c + * Allow loading packets of large size from config files (fixed storing of big messages), + and continue on config files skipping items that cannot be deserialised (Modified patch from Phenom) + * put a hard limit to packet size in pqistore to avoid calling realloc with fancy numbers + when the stream has been corrupted + + * Bug fixes + - fixed bug due to ot sending notifications to the file lists + - added missign cleanup call in RsAES.cc, causing a small memory leak + - Changed order of the shutdown to fix a crash of the WebUI plugin. First stop the + plugins then the other services. + - fixed ghost lobby issue (thx to thunder for spotting it out) + - patch from HM to avoid allocating absurdly long uids + - added check to only import version 4 keys in the keyring + - fixed error handling in certificates that could crash RS when a bad cert is pasted + - fixed proper handling in failed malloc in openpgp-sdk, causing crash with deliberate bad cert. + - fixed small error in pgphandler, potentially adding empty certs in database + - limited the number of packets to be parsed in a row, to prevent compressed + data to contain an enormous number of packets. Fixes one possible attack pointed out by HM + - removed potential uninitialized memory read in TlvKey item. + - fixed mismatched free/delete in p3channels.cc + - fixed bug introduced in 6965 that prevented people joining private lobbies to see the messages and talk + - fixed potential attack by supplying non hexadecimal strings as certificate common name + - Fixed spaces in copy/paste of rich text (Patch from Phenom) + +Changes for 0.5.5b + + * Improvements + + - fixed up some debug text (patch from H.Morgan) + - reduced string for lol bomb filtering, to filter out <\?xml* instead of <\?xml\ * + - Added freeze option in NetworkView (Modified patch from K. Eisentraut) + - Updated languages from Transifex + - fixed up compatibility with Qt5 + - code fixed up for Qt5,added display of Qt version in AboutDialog + - fixed up compilation for MinGW-w64 + - Added new options to retroshare-gui.pro for Qt 5 + - Added new file QtVersion.h with macros to compile with Qt 4 and Qt 5 + - fixed GUI for encrypted messages. Now showing correct To/From, added icon for decrypted msg, correct To when reply + - allow change destination directory for queued files (modified patch from Phenom) + - remove three costly loops in ftController + - added help strings in some config pages (relays, notify, plugins) + - added warning label in MakeFriendWizard to warn against too many friends + - changed the voip icons, disable the voip buttons when friend is offline. + - added scope timer to measure times conveniently + + PGP + - added restriction to only accept self-signed certificates for friend keys + - added test program for identity import + - removed asserts from validate.c, and signature.c in openpgp-sdk + it will not be shared until re-hashed. Should prevent chunks error in files that get hashed while being copied. + - do not accept keys without a uid. Previously this was crashing RS + - added check over recursive compression depth. Fixes CVE-2013-4402 + + Channels: + - Added back the Subscribe Button to Channels + - Use destination directory when manually downloading a file from a channel + - Show destination directory in channel details + - Fixed utf8 issue when choosing the destination directory + + GUI + - show fingerprint in ConfCertDialog, and splitted the string with spaces. Removed + the use of the ambiguous peer id for both pgp and locations ids + + Global router (Not active yet. Is a replacement to tunnels for messaging. Wil allow offline anonymous distant messages) + - squeleton code for the whole system + - computation/update of routing probabilities + + File Transfer (Speed changes according to experiments from jolavilette. Brings the max LAN speed from 1.3MB/s to approx 13MB/s) + - set desiredRate of peers to 10MB/s instead of 1MB/s + - maximum number of active chunks per peer is now 20 (that was a serious limiting factor) + - ticks that bring no data are not accounted for in the speed estimate anymore. The data is averaged over all ticks + since the previous non zero data chunk -> this brings much more stability to sources and removes lots of oscillation. + - added post-hash check for file modification. If the file has been modified while being hashed, + - removed false warning that come up when openning a non existing file in ftFileCreator. + + Shared Files + - changed re-hashign strategy. Now uses in priority the system time of the index file as a reference for new files. This automatically + accounts for changes in system time and fixes the re-hashing bug for daylight changing time. In case the reference time cannot be + establishd, the comparison reverts to the old method. This change is backward compatible and should not cause a re-hash. + + * Improvements + Optimisations/compilation: + - re-wrote cleanupDirectory() function. As this a cause of the slow startup. Startup time is massively improved! + - Fixed compile of the libraries with MinGW 4.8 on Windows. + - Removed the external library pthreads 2.8.0 on Windows build and used the library of MinGW (version 2.8.0 too). + This fixes header mixup of bo th versions. + - Switched to the release version of pthread so the name of the dll changes from pthreadGC2d.dll to pthreadGC2.dll. + The new dll can be found in the bin directory of MinGW. + - Optimized p3HistoryMgr::cleanOldMessages + + File Transfer: + - restore file state when restart (Modified patch from Phenom) + - Enabled multi-tunneling by consistently perturbating partial tunnel id in TRs. + This causes tunnels with a different route to have different ids and therefore + coexist as different sources for a given transfer. + This should cause file transfers to have more tunnels and therefore a better balance + of bandwidth over intermediate peers. This needs to be evaluated on a large scale network. + - included random bias in tunnel ID computation to make them impossible to correlate to the end points + + Distant chat/lobbies/chat: + - added the possibility to distant chat with unverified identities, while warning the user about it. Should help distant chatting. + - removed warning that happens when lobby has no activity + + Key creation + - added entropy collection system based on mouse movement to location/identity creation, to make keys less predictable + + Connectivity: + - Made connection progress dialog only show up when really making friend + + Security: + - Enabled PFS for SSH connections, based on a 4096 bits safe prime. This is retro-compatible, meaning that + old peers will connect to the new one using PFS if they act as a client (meaning they request the connection) + - added limit to posts on chat lobbies to 6000 characters, removing the risk of enormous posts crafted to kill the msg history + - added filter to take care of svg bombs that can be hidden in the strings in lobbies,forums,channels and chat + - added control for suspicious message activity in chat lobbies. Lobby items are not bounced if coming + from a peer that sends more messages per seconds than a given limit. The limit is adaptive and depends on lobby count + - added limit in number of chat lobby ids sent by a peer + - added filter to remove xml bombs in all std::wstrings. + + Various gui stuff: + - added a "Load Images" system to messages. + - added new delegate for BW statistics window. Changed column names to more appropriate values (Patch from Phenom) + - Added proper sorting of DL files according to sources (Patch from Phenom) + - changed the connect wizard so that we can add someone key to keyring without making friend. + - fixed image resizing for channel thumbnails. Apparently there is a bug in Qt preventing + Qt::KeepAspectRatioByExpanding to work correctly + - Changed the additional buttons of ChatLobbyDialog and AudioPopupChatDialog to QToolButton. + - added some sound files + - changed the voip icons and the tooltips + - added fingerprint to cryptopage + - added tree items for chat lobbies. + - moved help browser from MainPage to new base class FloatingHelpBrowser + - added warning info label to MakeFriendWizard + - Added info widget for encrypted messages in MessageWidget + - removed copy/paste of links of type PERSON in friendlist. This caused confusion and did not provide + anything useful since the creation of the full certificate links + - changed default header text and context menu icons + - changed the default style layout of profile creation dialog + - highlight peers in network graph according to friendship distance from selected node + + Chat lobbies + - added history parameters for chat lobbies + - added max storage time for items in chat history. Avoids filling up the history with chat from volatile peers. + - worked out the layout in config->ChatPage in a more compact design and added help + + * Bug fixes + - fixed import of retroshare identities that have multiple signatures from the same key ID. Fixed bug reported by claude37 + - split lastRecvTimeStamp into two different time stamps: one for last + time the file is wrote (or data is received) and one for last activity + that is used (and sometimes reset) by ftcontroller when queuing files + - fixed display of correct IP for connected friends. Only the external IP was shown previously. Port is not + shown because it is random and could be misleading. + - filter out disallowed direct sources from file request source list. Should systematically prevent unwanted direct transfers + - removed potential deadlock in notifyQt + - fixed bug that would cause virtual peers list for outgoing files to never get cleanred up. Also improved + cost of updating the status of virtual peers. Many thanks to Jolavillette for finding this out! + - fixed missing update of transferred bytes count, that caused tunnels to not show a correct speed estimate on server side + - fixed bug in turtle router, causing potential memory access error in rare occasions (sendItem does not + delete items fast enough, normally). + - added missing setPeerState that caused tunnels to get stuck to default minimum rate unless + the list of connected peers change + - fixed bug showing play for unfinished files and preview for finished ones + +Changes for 0.5.5a * Notes This is the final release of the 0.5 brand.