spaced4ndy
a90f255df5
core: adapt simplexmq api for shared msg body (via MsgReq markers) ( #5626 )
...
* core: shared msg body 2
* WIP
* compiles
* refactor
* refactor
* refactor
* format
* simplexmq
* refactor
* refactor ChatMsgReq
* agent query plans
* simpler
* test
* test
* fix test
* agent plans
* simplexmq
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-02-14 20:12:32 +00:00
Evgeny Poberezkin
0964982782
core: ensure that messages are sent to different members ( #4221 )
...
* core: ensure that messages are sent to different members
* update simplexmq
2024-05-23 22:50:23 +01:00
Evgeny Poberezkin
d90e2f4436
core: remove mtl typeclasses to reduce overhead ( #3975 )
...
* core: remove mtl typeclasses to reduce overhead
* strict data, optimization
* update simplexmq, clean up
* un-unlift attachRevHTTP2Client
* remote
---------
Co-authored-by: Alexander Bondarenko <486682+dpwiz@users.noreply.github.com >
2024-04-01 13:34:45 +01:00
spaced4ndy
12d1ada25e
core: support batch sending in groups, batch introductions; send recent message history to new members ( #3519 )
...
* core: batch send stubs, comments
* multiple events in ChatMessage and supporting types
* Revert "multiple events in ChatMessage and supporting types"
This reverts commit 9b239b26ba .
* schema, refactor group processing for batched messages
* encoding, refactor processing
* refactor code to work with updated schema
* encoding, remove instances
* wip
* implement batching
* batch introductions
* wip
* collect and send message history
* missing new line
* rename
* test
* rework to build history via chat items
* refactor, tests
* correctly set member version range, dont include deleted items
* tests
* fix disappearing messages
* check number of errors
* comment
* check size in encodeChatMessage
* fix - don't check msg size for binary
* use builder
* rename
* rename
* rework batching
* lazy msg body
* use withStoreBatch
* refactor
* reverse batches
* comment
* possibly fix builder for single msg
* refactor batcher
* refactor
* dont repopulate msg_deliveries on down migration
* EncodedChatMessage type
* remove type
* batcher tests
* add tests
* group history preference
* test group link
* fix tests
* fix for random update
* add test testImageFitsSingleBatch
* refactor
* rename function
* refactor
* mconcat
* rename feature
* catch error on each batch
* refactor file inv retrieval
* refactor gathering item forward events
* refactor message batching
* unite migrations
* move files
* refactor
* Revert "unite migrations"
This reverts commit 0be7a3117a .
* refactor splitFileDescr
* improve tests
* Revert "dont repopulate msg_deliveries on down migration"
This reverts commit 2944c1cc28 .
* fix down migration
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-12-23 13:07:23 +00:00
Evgeny Poberezkin
52966e7e3d
core: optionally encrypt SMP files ( #3082 )
...
* core: optionally encrypt SMP files
* encrypt to temp file and rename or remove encryption args if it fails
* fix file encryption error handling
2023-09-20 13:05:09 +01:00
Evgeny Poberezkin
2148d50393
core: use Int64 in time calculations ( #2143 )
...
* core: use Int64 in time calculations
* remove import
* make interval Int64
2023-04-04 14:26:31 +01:00
JRoberts
84d2c408ce
core: optimize chat loading time - faster chat previews queries (item_status index for chat stats), fix live file transfers queries ( #1630 )
...
* core: optimize get chat previews queries (item_status index for chat stats)
* cleanup
* optimize chat loading time
* cleanup
* schema
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2022-12-23 18:37:02 +04:00
Evgeny Poberezkin
64fb1f0b85
core: do not start disappearing timer for live messages until they stop being live, and start it on item update instead, provided they are read ( #1609 )
...
* core: do not start disappearing timer for live messages until they stop being live, and start it on item update instead, provided they are read
* change delays in tests
* diffInSeconds
2022-12-20 10:17:29 +00:00
JRoberts
0e837ae392
core: timed messages ( #1561 )
...
* docs: disappearing messages rfc
* change schema
* word
* wip
* wip
* todos
* todos
* remove cancel, refactor
* revert prefs
* CITimed
* schema
* time on send direct
* time on send group
* add ttl to msg container, refactor
* timed on receive
* time on read
* getTimedItems, fix tests
* mark read in terminal - view, input, output, fix tests
* refactor
* comment
* util
* insert atomically
* refactor
* use guards
* refactor startTimedItemThread
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2022-12-15 15:17:29 +04:00
Evgeny Poberezkin
a72f603e13
core: switch connection ( #1277 )
...
* core: switch connection
* chat items for SWITCH
* additional events for connection switch
* update simplexmq
* test
* comment test output
* update messages for connection switch
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com >
2022-11-01 13:26:08 +00:00
Stanislav Dmitrenko
1470b8d128
core: auto accept via address and incognito mode specified ( #1233 )
...
* core: Auto accept via address and incognito mode specified
* Fix test
* Refactoring
* No forcing
* Apply suggestions from code review
* refactor
* refactor AutoAccept
* Test
* Test
* allow different test output order
* rename
* rename
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com >
2022-10-21 17:14:12 +01:00
JRoberts
cd6cad9a96
core: optimize bulk chat item deletion ( #1168 )
...
* core: optimize bulk chat item deletion
* test file deletion
* refactor
* refactor
2022-10-03 22:33:36 +01:00
Evgeny Poberezkin
55adbb4692
core: clear group content on deletion, break transaction to prevent error on Android, more logs ( #892 )
...
* core: log group deletion
* clear group content, break transaction, add logs
2022-08-04 11:12:50 +01:00
Evgeny Poberezkin
41c9742b0d
core: auto-reply message for user contact addresses ( #755 )
...
* core: auto-reply message for user contact addresses
* terminal: show auto accept status and message
* test
2022-06-27 19:41:25 +01:00
Evgeny Poberezkin
16bd9ccc4f
core: send SMP notification msg flag based on chat message ( #733 )
...
* core: send SMP notification msg flag based on chat message
* update simplexmq
* remove unnecessary condition
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com >
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com >
2022-06-07 14:14:54 +01:00
Evgeny Poberezkin
8425be0612
use aeson fork with nullableToObject option to make JSON compatible with Swift ( #236 )
2022-01-29 20:21:37 +00:00
Efim Poberezkin
d97a8c1934
getGroupChat, getGroupChatPreviews_ ( #233 )
2022-01-29 16:06:08 +04:00
Evgeny Poberezkin
37cfb93217
switch to JSON single field encodings for sum types to align with Swift enums ( #229 )
2022-01-27 22:01:15 +00:00
Evgeny Poberezkin
20e7feb953
simple welcome message ( #152 )
...
* simple welcome message
* show welcome message only once
* show onboarding progress
2021-12-13 12:05:57 +00:00
Evgeny Poberezkin
c51493e016
send files to contacts ( #94 )
...
* schema for sending files
* send file "invitation"
* receive file "invitation"
* send/receive file flow (with stubs)
* update simplexmq
* send and receive the file (WIP - only the first chunk)
* sending and receiving file works (but it is slow)
* use correct terminal output for file sending/receiving
* improve file transfer, support cancellation
* command to show file transfer status and progress
* file transfer tests
* resume file transfer on restart (WIP)
* stabilize test of recipient cancelling file transfer
* trying to improve file transfer on restart
* update SMP block size and file chunk size
* acquire agent lock before chat lock to test whether it avoids deadlock
* fix resuming sending file on client restart
* manual message ACK (prevents losing messages between agent and chat client and stabilizes resuming file reception after restart)
* do NOT send file chunk after receiving it before it is appended to the file
* update file chunk size for SMP block size 8192 (set in smpDefaultConfig)
* save received files to ~/Downloads folder by default; create empty file when file is accepted
* keep file handle used to create empty file
* check message integrity
* fix trying to resume sending file when it was not yet accepted
* fix subscribing to pending connections on start
* update simplexmq (fixes smp-server syntax parser)
2021-09-04 07:32:56 +01:00
Evgeny Poberezkin
85727bfbf1
move files to src folder (to allow testing) ( #70 )
2021-07-05 20:05:07 +01:00