From 4142eb7a229f9155d46e72d9a2de949ef44219ac Mon Sep 17 00:00:00 2001 From: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com> Date: Mon, 28 Nov 2022 19:23:51 +0000 Subject: [PATCH 1/2] v4.0.0 --- CHANGELOG.md | 15 +++++++++++++++ package.yaml | 2 +- simplexmq.cabal | 2 +- src/Simplex/Messaging/Transport.hs | 2 +- tests/CLITests.hs | 2 +- 5 files changed, 19 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ead77d3f6e..5d6d4d6f01 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,18 @@ +# 4.0.0 + +SMP server: + +- Basic authentication. The server address can now include an optional password that is required to create messaging queues, so the contacts who message you will not be able to receive messages via your server, unless you share with them the address with the password. It is recommended to enable basic authentication on all private servers by adding `create_password` parameter into AUTH section of server INI file (the previously deployed servers do not have this section, you need to add it). +- Disable creating new queues completely with `new_queues: off` parameter in AUTH section of INI file - it can be used to simplify migrating the exising connections to another server. +- Updated server CLI with changed defaults: + - interactive server initialization, use -y flag to initalize the server non-interactively. + - store log is now enabled by default, so messaging queues and messages are restored when the server is restarted (to store undelivered messages the server needs to be stopped with SIGINT signal). + - random password is now generated by default during server initialization. + +SMP agent: + +- API to test SMP servers. It connects to the server, creates and deletes and messaging queues. In the new SimpleX Chat clients it is used to test that you have the correct address, with the valid certificate fingerprint and pasword, before enabling the new server. + # 3.4.0 SMP agent: diff --git a/package.yaml b/package.yaml index 72f5819fed..e74fac7514 100644 --- a/package.yaml +++ b/package.yaml @@ -1,5 +1,5 @@ name: simplexmq -version: 3.4.0 +version: 4.0.0 synopsis: SimpleXMQ message broker description: | This package includes <./docs/Simplex-Messaging-Server.html server>, diff --git a/simplexmq.cabal b/simplexmq.cabal index 3c2f09ba39..81143864cf 100644 --- a/simplexmq.cabal +++ b/simplexmq.cabal @@ -5,7 +5,7 @@ cabal-version: 1.12 -- see: https://github.com/sol/hpack name: simplexmq -version: 3.4.0 +version: 4.0.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/Messaging/Transport.hs b/src/Simplex/Messaging/Transport.hs index aee4b7c76d..ad9caa42c4 100644 --- a/src/Simplex/Messaging/Transport.hs +++ b/src/Simplex/Messaging/Transport.hs @@ -99,7 +99,7 @@ supportedSMPServerVRange :: VersionRange supportedSMPServerVRange = mkVersionRange 1 5 simplexMQVersion :: String -simplexMQVersion = "3.4.0" +simplexMQVersion = "4.0.0" -- * Transport connection class diff --git a/tests/CLITests.hs b/tests/CLITests.hs index b52816166b..1834bf6e5e 100644 --- a/tests/CLITests.hs +++ b/tests/CLITests.hs @@ -51,7 +51,7 @@ smpServerTest storeLog basicAuth = do lookupValue "INACTIVE_CLIENTS" "disconnect" ini `shouldBe` Right "off" doesFileExist (cfgPath <> "/ca.key") `shouldReturn` True r <- lines <$> capture_ (withArgs ["start"] $ (100000 `timeout` smpServerCLI cfgPath logPath) `catchAll_` pure (Just ())) - r `shouldContain` ["SMP server v3.4.0"] + r `shouldContain` ["SMP server v4.0.0"] r `shouldContain` (if storeLog then ["Store log: " <> logPath <> "/smp-server-store.log"] else ["Store log disabled."]) r `shouldContain` ["Listening on port 5223 (TLS)..."] r `shouldContain` ["not expiring inactive clients"] From b6d294913d4bcdabedd48ee4a8b2dc7134bf403b Mon Sep 17 00:00:00 2001 From: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com> Date: Mon, 28 Nov 2022 19:30:36 +0000 Subject: [PATCH 2/2] update --- CHANGELOG.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5d6d4d6f01..8a408cfb89 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,12 +6,12 @@ SMP server: - Disable creating new queues completely with `new_queues: off` parameter in AUTH section of INI file - it can be used to simplify migrating the exising connections to another server. - Updated server CLI with changed defaults: - interactive server initialization, use -y flag to initalize the server non-interactively. - - store log is now enabled by default, so messaging queues and messages are restored when the server is restarted (to store undelivered messages the server needs to be stopped with SIGINT signal). - - random password is now generated by default during server initialization. + - store log is now enabled by default, so messaging queues and messages are restored when the server is restarted (to restore undelivered messages the server needs to be stopped with SIGINT signal). + - a random password is now generated by default during the server initialization. SMP agent: -- API to test SMP servers. It connects to the server, creates and deletes and messaging queues. In the new SimpleX Chat clients it is used to test that you have the correct address, with the valid certificate fingerprint and pasword, before enabling the new server. +- API to test SMP servers. It connects to the server, creates and deletes a messaging queue. The new SimpleX Chat client uses this API to allow you to test that you have the correct server address, with the valid certificate fingerprint and pasword, before enabling the new server. # 3.4.0