Evgeny Poberezkin
754c76d6fd
Merge branch 'master' into master-ghc8107
2023-12-21 00:45:10 +00:00
Evgeny Poberezkin
7bcda7e54b
core: use ChaChaDRG as the source of randomness ( #3551 )
...
* core: use ChaChaDRG as the source of randomness
* do not use entropy directly
* dont use RNG from agent
* simplexmq
* update iOS
2023-12-21 00:42:40 +00:00
Evgeny Poberezkin
6ba3100d34
core: batch sending messages ( #3566 )
...
* core: batch sending messages
* batch without iorefs (#3573 )
* one-pass
* simplexmq
* simplexmq
* simplexmq
* simplexmq
* revert change to ios project file
* refactor
* simplify
---------
Co-authored-by: Alexander Bondarenko <486682+dpwiz@users.noreply.github.com >
2023-12-20 10:38:39 +04:00
Evgeny Poberezkin
7b073ba9f8
core: allow deleting last user ( #3567 )
...
* core: allow deleting last user (tests fail)
* tests, allow activating the hidden user when there is no active user
* hide logs
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
* comment
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
* comment
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2023-12-19 10:26:01 +00:00
Evgeny Poberezkin
8a66390a78
fix for GHC 8.10.7
2023-12-11 16:14:56 +00:00
Evgeny Poberezkin
6546426ec0
Merge branch 'master' into master-ghc8107
2023-12-11 14:56:25 +00:00
Evgeny Poberezkin
f9a125bc32
Merge branch 'master' into ios-notifications
2023-12-11 14:11:00 +00:00
spaced4ndy
53560378bb
Merge branch 'master' into master-ghc8107
2023-12-11 17:52:48 +04:00
Alexander Bondarenko
35c1975d66
core: chat list pagination ( #3505 )
...
* add pagination args to APIGetChats
* add search to chat list API
* rename arg to paginationTs_ to match type
* lift another condition to ids query
* collect all chat refs before sorting, then get details
* split remaining preview functions
* roll back to collecting ids first with query cleanup
* add connection join back to filter out groups
* extract and expand tests
* add fav/unread args
* WIP
* lay out the queries with favs
* tweak tests
* add fav tests
* fix order by in the before case
* build query footer wholly from pagination
* add migration for direct contacts
* fix setting contact_used
* fix setting contact_used for group link contacts
* align search x filters space with UI, support filter by either favorite or unread, optimize queries, indexes
* always set chat_ts, fix tests
* refactor tests
* fix pagination logic, more tests
* refactor, rename
* increase default pagination count
* comments
* refactor
* comment
* report errors
* refactor
* remove unused type
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2023-12-11 17:50:32 +04:00
Evgeny Poberezkin
666903ae76
Merge branch 'master' into ios-notifications
2023-12-11 13:06:32 +00:00
Evgeny Poberezkin
8a41a4c214
ios: do not start chat if it was stopped, deliver "app stopped" notifications ( #3535 )
...
* add stopped notifications, remove full off mode
* core: allow initializing chat data without starting chat
* ios: ask before starting chat if it was stopped
* correct text
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
* fix comment
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2023-12-11 12:59:49 +00:00
Evgeny Poberezkin
f65b8a9e78
core: mark all user messages read ( #3530 )
2023-12-11 12:26:45 +00:00
Evgeny Poberezkin
d3059afc99
ios, core: better notifications processing to avoid contention for database ( #3485 )
...
* core: forward notifications about message processing (for iOS notifications)
* simplexmq
* the option to keep database key, to allow re-opening the database
* export new init with keepKey and reopen DB api
* stop remote ctrl when suspending chat
* ios: close/re-open db on suspend/activate
* allow activating chat without restoring (for NSE)
* update NSE to suspend/activate (does not work)
* simplexmq
* suspend chat and close database when last notification in the process is processed
* stop reading notifications on message markers
* replace async stream with cancellable concurrent queue
* better synchronization of app and NSE
* remove outside of task
* remove unused var
* whitespace
* more debug logging, handle cancelled read after dequeue
* comments
* more comments
2023-12-09 21:59:40 +00:00
Evgeny Poberezkin
087acd9180
changes to support GHC 8.10.7 ( #3512 )
...
* Revert "raise lower bound on mtl to a real version (#3499 )"
This reverts commit f94c0311c1 .
* Revert "core: expand ranges to fit ghc 8.10 & 9.6 (#3496 )"
This reverts commit 9a1c7f41f7 .
* update simplexmq
* remove netword-transport fork
* compatibility with GHC 8.10.7
* simplexmq
* fix test
* simplexmq, deps
* update sqlcipher deps in sha256nix
* fix index-state in cabal.project
* index-state
* remove import
* add cabal.project.freeze
* simplexmq
* remove freeze
* simplexmq
* bytestring,simplexmq
* template-haskell, simplexmq
* simplexmq
* simplexmq
* simplexmq
* mtl
* simplexmq
* remove duplicate index-state
2023-12-04 12:29:49 +00:00
spaced4ndy
38533213d2
Merge branch 'master' into master-ghc8107
2023-11-30 20:56:51 +04:00
spaced4ndy
5819e42305
core: remove CRNewContactConnection response; mobile, desktop: create pending connections based on api responses (CRNewContactConnection was being used as "event" in UI) ( #3489 )
2023-11-30 20:31:32 +04:00
Alexander Bondarenko
6a21d5c7f1
add remote host bindings ( #3471 )
...
* add remote host bindings
* group iface/address together
* rename migration
* add implementation
* update view and api
* bump upstream
* add schema
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-11-28 16:32:33 +00:00
Evgeny Poberezkin
05278e5a06
core: allow remote host commands without user ( #3478 )
2023-11-27 18:34:15 +00:00
Evgeny Poberezkin
b8da5e225b
Merge branch 'master' into master-ghc8107
2023-11-26 18:53:40 +00:00
Evgeny Poberezkin
d29f1bb0cf
core: use fourmolu styles ( #3470 )
2023-11-26 18:16:37 +00:00
Evgeny Poberezkin
0c096e2c89
Merge branch 'master' into master-ghc8107
2023-11-24 19:00:30 +00:00
Evgeny Poberezkin
b1cf1656a0
core: cli remote control help section ( #3445 )
2023-11-24 10:48:14 +00:00
Evgeny Poberezkin
1781495ee3
Merge branch 'master' into master-ghc8107
2023-11-23 16:22:46 +00:00
Evgeny Poberezkin
1b7baa244a
core: track network statuses in CLI ( #3434 )
2023-11-23 08:39:08 +00:00
Evgeny Poberezkin
2d4e99d610
cli: set device name for remote control via CLI option ( #3427 )
...
* cli: set device name for remote control via CLI option
* fix
* add property in tests
2023-11-22 22:11:32 +00:00
spaced4ndy
15fdab597b
core: shuffle members when sending messages and introductions; send to admins and owners first ( #3431 )
...
* core: shuffle members when sending messages and introductions; send to admins and owners first
* refactor
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-11-22 21:36:52 +00:00
Evgeny Poberezkin
324f614e00
core: return remote controller port to UI ( #3430 )
2023-11-22 17:40:10 +00:00
Evgeny Poberezkin
307a1b3c5e
fix for ghc 8.10.7
2023-11-20 13:23:45 +00:00
Evgeny Poberezkin
ed6b3bbead
Merge branch 'master' into master-ghc8107
2023-11-20 13:01:22 +00:00
spaced4ndy
718436bf55
core: don't read all group members where unnecessary ( #3403 )
2023-11-20 15:27:15 +04:00
Evgeny Poberezkin
970ca3a409
Merge branch 'master' into remote-desktop
2023-11-20 10:35:20 +00:00
Alexander Bondarenko
68cbc605be
add remote session sequence to prevent stale state updates ( #3390 )
...
* add remote session sequence to prevent stale state updates
* remote RHStateKey
* add StateSeq check to controller
* clean up
* simplify
* undo withRemoteXSession API change
* simplify
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-11-20 10:19:00 +00:00
spaced4ndy
7d4127c51d
Merge branch 'master' into master-ghc8107
2023-11-20 14:07:08 +04:00
spaced4ndy
3a510eeaf0
core: rename forwarded fields ( #3401 )
2023-11-20 14:00:55 +04:00
Evgeny Poberezkin
e1a8099474
fix for GHC 8.10.7
2023-11-20 00:06:45 +00:00
Evgeny Poberezkin
daa8d9bb21
Merge branch 'master' into master-ghc8107
2023-11-19 23:42:13 +00:00
Evgeny Poberezkin
2a8d7b8926
core: add commands that will not be forwarded to connected mobile ( #3398 )
...
* core: add commands that will not be forwarded to connected mobile
* fail if command that must be executed locally sent to remote host
2023-11-19 20:48:25 +00:00
Evgeny Poberezkin
cc434cda55
Merge branch 'master' into remote-desktop
2023-11-18 18:03:13 +00:00
spaced4ndy
c0e8740f50
core: group message forwarding ( #3360 )
...
* core: group message forwarding types
* xgrpmemcon
* rework xgrpmemcon to use intros table
* only forward w/t error
* forward msg
* xGrpMsgForward, check integrity outside
* deduplicate group messages
* test
* change error
* item forwarded flag
* intro_chat_protocol_version, bump version
* comment
* highly available client option
* more comments
* notify xgrpmemcon on deduplication
* member vrange
* encoding
* remove MsgForward
* remove import
* exclude files from forwarding
* refactor
* rename to align with protocol
* forward more message types
* add events
* remove unused error, function
* add x.file.cancel, x.info and x.grp.mem.new to forwarded messages
* remove unused x.msg.file.cancel
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-11-18 17:52:01 +00:00
Alexander Bondarenko
42e0400014
core: add remote controller discovery with multicast ( #3369 )
...
* draft multicast chat api
* prepare tests
* Plug discovery into chat api
* Add discovery timeout
* post-merge fixes
* rename discovery state to match others
* update for unified invitation
* fix review notices
* rename, remove stack, update simplexmq
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-11-17 18:50:38 +00:00
Evgeny Poberezkin
f6e66f1c53
Merge branch 'master' into master-ghc8107
2023-11-16 18:13:02 +00:00
Alexander Bondarenko
c31ae39617
remote: fix circular error handling ( #3380 )
2023-11-16 14:56:39 +00:00
Alexander Bondarenko
339c3d2be1
Send CRRemote*Stopped on all errors ( #3376 )
...
* Send CRRemote*Stopped on all errors
Commands use the same action, made idempotent and don't send events.
* fix tests
* get http2 cancelling back
2023-11-15 17:31:36 +00:00
Evgeny Poberezkin
b71daed3ec
core: include session code in all session states ( #3374 )
2023-11-15 13:17:31 +00:00
Evgeny Poberezkin
4da1d21c81
Merge branch 'master' into remote-desktop
2023-11-14 14:43:58 +00:00
spaced4ndy
5bbde22ffa
core: new message decryption error - ratchet synchronization ( #3367 )
2023-11-14 18:23:05 +04:00
Alexander Bondarenko
598b6659cc
core: better handling of remote errors ( #3358 )
...
* Allow ExitCode exceptions to do their job
* Use appropriate error type
* Close TLS server when cancelling connected remote host
* Add timeout errors
* Bump simplexmq
* extract common timeout value
2023-11-13 18:39:41 +00:00
Evgeny Poberezkin
86bc70fa5a
Merge branch 'master' into remote-desktop
2023-11-13 14:07:31 +00:00
Evgeny Poberezkin
92e3f576ca
core: return controller app info in response when connecting, validate ID key ( #3353 )
2023-11-12 14:40:49 +00:00
spaced4ndy
5beeff5cb6
core: take chat lock when synchronizing ratchet ( #3349 )
2023-11-12 12:41:41 +00:00