See full changelog here.
Commits:
- smp protocol: short links and other changes from RFC (#1489)
- Merge branch 'master' into short-links
- agent: join connection when 1-time invitation short link is already secured (#1496)
- agent: set/update and delete contact short link data (#1499)
- smp protocol: remove creating notifications from NEW command, new ideas for notifications (#1500)
- Merge branch 'master' into short-links
- agent: replace sndSecure with queueMode in queue URIs and records (#1502)
- agent: binary protocol encoding for connection request (#1503)
- agent: types and encodings to use from the app (#1504)
- agent: padded encryption for link data, shorten/restore short links, tests (#1505)
- Merge branch 'master' into short-links
- smp server: short links and owners for channels (#1506)
- smp server: make symlinks relative
- agent: additional short link types and encodings (#1509)
- smp server: .well-known folder for server pages for SimpleX apps to handle preset server links (#1510)
- smp server: update server page for short links to correctly change URI for apps (#1511)
- Merge branch 'master' into short-links
- agent: additional encodings for short links
- smp server: serve .well-known folder via server pages (#1514)
- Merge pull request #1495 from simplex-chat/short-links
- docs: CHANGELOG
- Merge branch 'stable'
- 6.4.0.0
- ntf server: fix store log parser for token status
- ci: adjust output, retry tests on failure, include hashes in release notes (#1520)
- ntf server: optimize in-memory storage (#1516)
- ci: retry only in stable or release
- Revert "ntf server: optimize in-memory storage (#1516)"
- smp server: fix/test database import (#1521)
- 6.4.0.1
- agent: option to use web port by default for preset servers only (#1523)
- ntf server: PostgreSQL database storage (#1519)
- ntf server: allow retries when creating subscriptions, prohibit subscriptions with the same queue but another notifier key or token (#1525)
- ntf server: skip duplicates when importing tokens and subscriptions (#1526)
- ntf server: prometheus metrics (#1527)
- ntf server, agent: send all periodic notifications from one thread, only to old active clients or new clients with periodic notification mode (#1528)
- ntf server: priority db pool for notifications and client commands, concurrent resubscriptions, CLI options (#1529)
- ntf server: fix returned last notifications (#1530)
- agent: handle cases when last message ts is not set for notifications; set last ts for "stale" notifications when messages expired and queue is empty, to prevent repeated processing (#1531)
- protocol: parsing for UTCTime to stop on "," and ";" (#1532)
- agent: return error and message absence differently when getting notification messages (#1535)
- agent: fix query that updates last message timestamps for notification processing (#1536)
- 6.4.0.2
- Merge branch 'master' into ntf-storage
- agent: always enable periodic notifications
- ntf server: fix repeat token registration when it became invalid (regression) (#1539)
- Merge pull request #1524 from simplex-chat/ntf-storage
- 6.4.0.3
- ntf server: remove shared queue for all notification subscriptions (#1543)
- 6.4.0.4
- smp server: optimize concurrency and memory usage, refactor (#1544)
- agent: pass CRClientData to setContactShortLink (#1546)
- smp server: support adding link data to contact addresses created before July 2024 (#1547)
- 6.4.0.5
- parameterize transport by peer type (client/server) (#1545)
- refactor types for DB entity (#1548)
- smp server: allow getting and deleting short links for the old contact queues (#1549)
- 6.4.0.6
- refactor types (#1551)
- agent: allow changing invitation link data before it is secured (#1552)
- agent: To and FromField instances for AConnShortLink (#1553)
- 6.4.0.7
- smp server: parameterize server by store type to avoid boxing/unboxing client handles (#1554)
- servers: parameterize SMP agent to optimize subscriptions (#1555)
- smp agent: use static RNG function to avoid dynamic C stub created by Haskell FFI wrapper (#1556)
- servers: include supported ALPNs in server transport config (#1557)
- rfc: client certificates for servers using SMP protocol as clients (opertors' chat relays, notification servers, service bots) (#1534)
- smp server: use separate database pool for reading queues and creating service records (#1561)
- ntf server: additional statistics (#1558)
- 6.4.0.8
- smp server: do not require ALPN for HTTP to fix Android asset links, do not use port 443 in server-server SMP connections (#1562)
- agent: use PQ keys in contact request data inside link container (but not in contact request link); use PQ keys in invitations sent to contact addresses (#1563)
- Revert "smp server: use separate database pool for reading queues and creating service records (#1561)" (#1564)
- smp server: batch commands (#1559)
- 6.4.0.9
- agent: fix updating short invitation link data (#1566)
- servers: restore constant time for absent queue/wrong key (regression in 6.4-beta.9) (#1567)
- agent: make decoding for short link data forward compatible (#1568)
- 6.4.0.3.1
- Merge branch 'stable'
- 6.4.0.10
- agent: use flexible (small/large) string encoding for contact link data, for backward/forward compatibility (#1569)
- smp server: prometheus metrics for delievered and not acknowledged messages (to monitor stuck deliveries) (#1572)
- ntf server: do not log subscription status updates on subscribing/unsubscribing (#1574)
- agent: JSON encoding for connection mode (#1576)
- smp server: prometheus histogram for message confirmation times (ACK) (#1575)
- 6.4.0.10.1
- agent: short link encodings (#1577)
- agent: better handling errors during connection handshake retries (#1578)
- 6.4.0.11
- agent: allow to accept contact requests after address is deleted (#1580)
- docs: update RFC for short links to match the implementation (#1581)
- build: do not exclude postgres modules for client_library flag (#1579)
- 6.4.0.11.1
- agent: support different timeouts for interactive and background requests (#1582)
- 6.4.0.11.2
- smp server: correctly track if ntf service is subscribed and total subscribed queues count (fixes race condition between NSUB and NSUBS from notification server) (#1583)
- 6.4.0.11.3
SHA2-256(smp-server-ubuntu-24_04-x86-64)= 4c1729e9a665e9307d644067346f915daa06d3c0325d0af7a656cee25129043f
SHA2-256(xftp-server-ubuntu-24_04-x86-64)= a85f1409b4489c9439ca4f017c4aa79da1661135dfa60e40b1b0f484a92a095d
SHA2-256(ntf-server-ubuntu-24_04-x86-64)= 68d143c50e492cf9528959eaecb88a5be5ebaedaceb1db4e8a4343406871decd
SHA2-256(xftp-ubuntu-24_04-x86-64)= 0d3765c984b4bfbf8d353413b0661128442b4925fb90a994cea77877f95fd8c3
SHA2-256(smp-server-postgres-ubuntu-24_04-x86-64)= 0a95845b46f01a69c83bfe4aaf0fa9963c89b2acbee2c3d152f9526af201fba2
SHA2-256(smp-server-ubuntu-22_04-x86-64)= 3fb008a7a1ab89b192fec8010bb5838ebf4e803c50fa7ad4c3e595c956ce2473
SHA2-256(xftp-server-ubuntu-22_04-x86-64)= c0cebefeb0a886dcf3083bfbda2823420ab74ef416d29e0d27eba3e144284905
SHA2-256(ntf-server-ubuntu-22_04-x86-64)= 9157f8b2592653647d4f733ad3d696ab55959f240d2cd34f0cdebb2be1d7ba8a
SHA2-256(xftp-ubuntu-22_04-x86-64)= 8a5aeefe5b7f315d0fd942fa688d912dd622ec952c1f644a47fb2e411ddeeea7
SHA2-256(smp-server-postgres-ubuntu-22_04-x86-64)= 9d20a218b6d968e0bd7febd5b5a5afb63f05b1499c073c2fac9cff022dbb2188