diff --git a/CHANGELOG.md b/CHANGELOG.md index 58c4dc559..817cf7d3e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,39 @@ +# 6.5.1 + +Version 6.5.1.0 + +XFTP client: +- backwards compatible file header decoding. + +# 6.5.0 + +Version 6.5.0.17 + +SMP agent: +- improve subscriptions + - reduce memory usage and retries during initial subscription (#1758) + - fix race resulting in pending subscriptions never subscribed (#1756) + - batch processing of subscription results and errors (#1652) + - reduce memory usage of active subscriptions. +- drop message after N reception attempts (#1762) +- fix possible deadlocks of queue overloading when processing messages (#1713) +- improved APIs for short link management and creation. +- support multiple link owners in link data (#1701) + +SMP server: +- store messages in PostgreSQL (#1622). +- reduce memory usage with PostgreSQL database - do not use queue cache (#1637) +- fix in-memory server not restoring queue/service associations after 2+ restarts (#1618) + +XFTP server: +- support PostgreSQL database. +- add server page. +- support uploads from web clients. + +Servers: +- better socket leak prevention during TLS handshake, NetworkError type to bette diagnose connection errors (#1619) +- use "=" as default INI key-value separator (#1767) + # 6.4.4 Servers: diff --git a/simplexmq.cabal b/simplexmq.cabal index 3d8bf19aa..aff40d472 100644 --- a/simplexmq.cabal +++ b/simplexmq.cabal @@ -1,7 +1,7 @@ cabal-version: 1.12 name: simplexmq -version: 6.5.0.16 +version: 6.5.1.0 synopsis: SimpleXMQ message broker description: This package includes <./docs/Simplex-Messaging-Server.html server>, <./docs/Simplex-Messaging-Client.html client> and diff --git a/src/Simplex/FileTransfer/Types.hs b/src/Simplex/FileTransfer/Types.hs index 86ecdc5d5..ff70b8f13 100644 --- a/src/Simplex/FileTransfer/Types.hs +++ b/src/Simplex/FileTransfer/Types.hs @@ -46,6 +46,7 @@ import Simplex.Messaging.Encoding import Simplex.Messaging.Encoding.String import Simplex.Messaging.Parsers import Simplex.Messaging.Protocol (XFTPServer) +import Simplex.Messaging.Util (safeDecodeUtf8, (<$$>)) import System.FilePath (()) type RcvFileId = ByteString -- Agent entity ID @@ -65,7 +66,8 @@ data FileHeader = FileHeader instance Encoding FileHeader where smpEncode FileHeader {fileName, fileExtra} = smpEncode (fileName, fileExtra) smpP = do - (fileName, fileExtra) <- smpP + fileName <- safeDecodeUtf8 <$> smpP + fileExtra <- safeDecodeUtf8 <$$> smpP pure FileHeader {fileName, fileExtra} type DBRcvFileId = Int64