github simplex-chat/simplexmq v7.1.0

pre-release39 minutes ago

See full changelog here.

Commits:

  • clients, servers: drop support of SMP protocol versions before 01/2025 (#1837)
  • Merge branch 'stable'
  • agent: use double ratchet from the first message in contact addresses, request rejection, RPC (#1831)
  • 7.1.0.0
  • smp-server: add serverInfoBytes to THandleParams and related functions (#1836)
  • agent: report PRXY broker errors as proxy-to-relay errors (#1842)
  • server: prevent concurrent SKEY commands from overwriting queue sender key (#1844)
  • smp server: fix handshake compatibility by moving server info to SMP v21 (#1845)
  • 7.1.0.1
  • build: expose Server.Information for client_library (#1849)
  • 7.1.0.2
  • xftp: prevent sender from writing files outside the destination folder (#1850)
  • agent: drop versions before 07/2024 (support of PQ encryption and securing reply queue) (#1841)
  • 7.1.0.3
  • agent: fast queue rotation not requiring the current server to be online (#1847)
  • 7.1.0.4
  • xftp server: support storage time and BBS proofs of badge credential to extend it (#1856)
  • 7.1.0.5
  • servers: fix stale git commit in version (#1859)
  • xftp: hash of the shared part of file description (#1865)
  • xftp server: disable ack command (#1871)
  • 7.1.0.6
  • extend SMP protocol to support name availability queries by labelhash (#1863)
  • 7.1.0.7
  • smp-server: reduce Prometheus and expiration DB load (#1872)
  • 7.1.0.8
  • agent: PQ rachet security code, store AD and pqAD in database, bulk reading (#1874)
  • ci: cancel stale runs (#1878)
  • xftp: fix race when sending the file (#1879)
  • agent: make QUOTA error temporary for async commands (#1881)
  • agent: share server value across subscription rows of server-keyed queries (#1877)
  • 7.1.0.9
  • docs: update XRCP doc to make code verification optional for known connections (#1891)
  • smp server: validate client version in forwarded command (#1890)
  • agent: fix ratchet - dont save if body auth failed (#1892)
  • docs: update SMP protocol (#1900)
  • server: improve control port auth (#1898)
  • xftp server: validate paths in store log (#1894)
  • docs: clarify security model (#1902)
  • 7.1.0.10
  • smp-server: rework message expiration (#1873)
  • resolver: multicall reads, keep-alive, workers and structured logs (#1883)
  • smp protocol: bind agreed version of forwarded command (#1915)
  • docs: add cryptographic primitive registry (#1913)
  • xrcp: limit multicast validity time window (#1899)
  • docs: use role names for key exchange parties (#1912)
  • crypto: document 16-byte GCM IV in double ratchet (#1914)
  • reject e2e params with kem_ct and without kem_key (#1901)
  • sntrup761: bound KeyGen retries on R3 inversion (#1918)
  • consider IP address protected only if it is used for the chosen host (#1895)
  • agent: aggregate cap on skipped message keys (#1903)
  • smp-server: check queue is not secured in link store (#1917)
  • agent: keep ratchet hashes for connection lifetime, up to some cap, to prevent replay of expired ratchets (#1893)
  • agent: resolve potential race conditions in double ratchet (#1923)
  • Merge pull request #1922 from simplex-chat/ratchet
  • smp: reduce min supported version to 15 (short links support, 3/30/2025) (#1931)
  • agent: fail database transaction instantly when database is closed, prevent race conditions in command processing, fix race when uploading files (#1885)
  • smp protocol: require fixed size corr ID when used as nonce, and min size msg ID to use as nonce (#1925)
  • smp-server: copy entity IDs out of received block (#1906)
  • agent: fix race when switching reception to the new queue (#1933)
  • agent: migration to add index to read queues (#1934)
  • agent: prepare invitation link, create ratchet when connection is prepared (#1880)
  • smp server: delayed AUTH responses (#1937)
  • ci: build cache (#1938)
  • fix tests on ghc 8.10.7 (#1939)
  • 7.1.0.11
  • smp-server: enforce command concurrency limit (#1944)
  • tests: execute in parallel, agent: fix race condition with files and when switching queue (#1932)
  • smp-server: remove journal message store (#1919)
  • smp-server: remove journal store leftovers (#1946)
  • smp-server: remove deleted queues from store maps (#1947)
  • 7.1.0.12
  • agent: autoincrement IDs in sqlite (#1951)
  • 7.1.0.14
  • agent: known host, smp protocol: parse empty messages (#1953)
  • smp server: check correlation ID of forwarded transmission (#1954)
  • server: retry accept, cache static files (#1962)
  • ntf server: one db connection to find subscription (#1956)
  • smp-server: fix notification store key leak (#1907)
  • transport, crypto: certificate chain, keys and DH secret (#1964)
  • agent: report duplicate connection when joining a used one-time link (#1970)
  • lib: parse IPv6 addresses with IPv4 suffix (#1969)
  • agent, server: one thread per worker; close sockets in reader threads (#1972)
  • xftp: prohibit YAML aliases, limit file description replicas (#1965)
  • clients: close interrupted connection attempts (#1967)
  • smp server: keep queues blocked with notice after restart and import (#1971)
  • ntf server: continue notifications when SMP service becomes unavailable (#1976)
  • xftp: close connection after failed handshake (#1974)
  • ci: one reduced build job on draft pull requests and manual runs (#1986)
  • docs: CLAUDE.md importing the contributing and CI guides (#1990)
  • xftp server: release storage of interrupted uploads (#1977)
  • ci: reduced build on pushes to master and stable in forks (#1991)
  • agent, ntf server: add lookupOrInsertIO, use it for locks and stats (#1989)
  • tests: name the test in retry lines (#1994)
  • resolver: read .simplex reservations from the name policy (#1993)
  • 7.1.0.15
  • smp server: deliver later messages after SUB while a delivery waits (#2006)
  • names: available names carry the terms their buyer accepts (#2003)
  • 7.1.0.16
  • ntf server: validate APNS server certificate and host name (#1998)
  • resolver: answer a subname only while its name's holder holds it (#2013)
  • xftp: limit chunk size in received file descriptions (#2001)
  • agent: validate xrcp host certificate chain against paired CA (#2000)
  • servers: serve web pages over HTTP/1.1 (#1999)
  • agent: use private routing for name lookups to known servers (#2002)
  • xftp: send and receive files through servers before v6.5.0 (#2021)
  • tests: flip one bit in each field of the tampered BBS proof (#2022)
  • ntf server: resume push notifications after APNS errors (#2020)
  • xftp: reject file descriptions with very long numbers (#2018)
  • agent: deliver messages between 7.0 and 7.1 apps in old connections (#2023)
  • 7.1.0.17
  • agent: acquire connection locks in order when sending (#2019)
  • agent: complete file uploads when the app leaves the foreground (#2010)
  • xftp: receive files with many chunks, always report receive errors (#2025)
  • tests: cover SMP server subscription changes (#2029)
  • lib, ntf server: reject null byte in host and server without key hash (#2027)
  • xftp: limit the redirect file of a description to 4 MB (#2026)
  • lib: evaluate the new TVar state in stateTVar updates (#2031)
  • tests: accept agent events from independent threads in any order (#2032)
  • smp server: deliver messages sent while the recipient subscribes (#2008)
  • smp server: decrease service subscription count on DEL and SUBS (#2046)
  • ntf server: prevent hanging on server stop (#2041)
  • docs: mark pull requests ready for review before the approval (#2024)
  • smp server: deliver notifications in bounded transactions (#1996)
  • servers: read one message per queue in SUB, omit DB connection string (#2007)
  • smp-server: process forwarded messages to different queues in parallel (#2047)
  • smp-server: forward worker queue length and command time metrics (#2048)
  • agent: accept confirmations only with the client version that the agent version implies (#2053)
  • tests: remove pg_attver lines from PostgreSQL schema dumps (#2056)
  • agent: authorize sender commands with X25519 keys (#2054)
  • xftp: prevent work directory conflicts of concurrent file transfers (#2062)
  • servers: write metrics atomically, log periodic task errors (#2061)
  • xftp: limit received files to the size of the sent file (#2067)
  • agent: delete contact requests after they are accepted (#2068)
  • agent: report skipped messages when an internal message follows them (#2066)
  • agent: read work items in one snapshot, report deleted files as NO_FILE (#2060)
  • agent: delete contact requests without sending rejection (#2069)
  • ci, tests: run all tests in CI, also with the PostgreSQL agent store (#2065)
  • xftp: prevent stuck network IO after interrupted transfers on GHC 8.10 (#2070)
  • 7.1.0.18 (#2057)

SHA2-256(smp-server-ubuntu-22_04-x86-64)= d4eac837d22e5e1d4e622d54af36ad51a195a259a609163bfae860f634472a01

SHA2-256(xftp-server-ubuntu-22_04-x86-64)= 47e9151d8cbe2ae5815c063fb7fd624f2e115efe2a7a7f9d6287be4d8c5b4aee

SHA2-256(ntf-server-ubuntu-22_04-x86-64)= 96cab1b19cb595e51ead868bded543e462b0f73acb4f79dc2145ccc28f89f3e4

SHA2-256(xftp-ubuntu-22_04-x86-64)= 4d933cdcc4f8ed084ec5bfae76286b7b55484a527b66e6493d65b3d5e33d0b12

SHA2-256(smp-server-postgres-ubuntu-22_04-x86-64)= 2b7af635383a3fa9d32432c2d3b1f4062f6a35f1bfd78b969de9ed78f21916dc

SHA2-256(xftp-server-postgres-ubuntu-22_04-x86-64)= 43c7edc628cee511fb5358f0a3a8ecf57ccfe2580d2367f0b46baebee43c9542

SHA2-256(smp-server-ubuntu-24_04-aarch64)= f0ab77df8cfdb232e0d6da599ee7786797a0732cdd0be047e6b6905a49b42636

SHA2-256(xftp-server-ubuntu-24_04-aarch64)= 851934324691f420e5f4fe5acce2fcfec5a261e681af6423352a16e81e8b8ecc

SHA2-256(ntf-server-ubuntu-24_04-aarch64)= 05d8adf3bb88f3b252458f354f4b0a9b4db2697bdfce4cfad552e116ef131c72

SHA2-256(xftp-ubuntu-24_04-aarch64)= fec2618bbf68f7e88c49ccc49d4219970bd70923902be6a3e9da4b9a09dcf7e9

SHA2-256(smp-server-postgres-ubuntu-24_04-aarch64)= 1569c33ce4bbf74fd731dfb7154e30c3b47d4ac236b6c7139fa7929c7e8e70eb

SHA2-256(xftp-server-postgres-ubuntu-24_04-aarch64)= 1c88f9d8a1ace76eb122824bf2e38c0ceef44692113e8d5bbe1a5356c6c4254a

SHA2-256(smp-server-ubuntu-22_04-aarch64)= 2d4a1e5f5c819ac90bc56d3c7a8325b1e7e62b2ea426fbdcf4ac99643ced1b49

SHA2-256(xftp-server-ubuntu-22_04-aarch64)= 3757c247ac518348e18797a048f9e7f4bdf852694e190cfd7a03a946fb4d482c

SHA2-256(ntf-server-ubuntu-22_04-aarch64)= def42b22c258480e01a5c523d78a335f708aa954e8a3fe4c7057655280813298

SHA2-256(xftp-ubuntu-22_04-aarch64)= 64816000417efd7f195b40cd90b1acbe11cfd9d3b2d5050dcb4042b41fa35f17

SHA2-256(smp-server-postgres-ubuntu-22_04-aarch64)= 0c12ee9ee68ced41ee384839afb3689b26e7a67d6b39f4c117b7455eb7b2755f

SHA2-256(xftp-server-postgres-ubuntu-22_04-aarch64)= df8b43bae651dd5bfabf613c9f9f9f45986e69e4193e1a6e067487a988883501

Don't miss a new simplexmq release

NewReleases is sending notifications on new releases.